:root {
  --dark-charcoal: #2D2D2D;
  --gold: #cba65b;
  --glitter: #FEC81F;
  --white: #ffffff;
  --muted: #b0b5bb;
  /* Typography: consistent font sizes site-wide – desktop (use variables, no custom font-size) */
  --font-size-title: 60px;            /* H1 – Page title */
  --font-size-section-title: 36px;    /* H2 – Section title */
  --font-size-headline-text: 20px;    /* Lead text – intro paragraph under headline */
  --font-size-body-title: 26px;       /* H3 – Subheading / card titles */
  --font-size-headline: 26px;         /* Alias for body-title – card/subsection titles */
  --font-size-body: 18px;           /* Alias for body-title – card/subsection titles */
  --font-size-body-sm: 16px;             /* Body text – paragraphs, descriptions */
  --font-size-job-title: 19px;        /* Job listing title */
  --font-size-button: 16px;           /* CTA / General button text */
  --font-size-button-sm: 14px;        /* Small button text (.btn-sm) */
  --font-size-caption: 13px;          /* Caption / Meta – small supporting text */
  --font-size-footer-links: 14px;           /* Footer link text size */
  /* Corporate redesign: layout & components */
  --section-bg: #ffffff;
  --section-bg-alt: #f8f9fa;
  --card-border: #eaeaea;
  --card-radius: 0;
  --card-radius-sm: 0;
  --spacing-section: 60px;
  --line-height-body: 1.6;
  --line-height-heading: 1.3;
  font-family: 'Inter', sans-serif;
}

@media (max-width: 991.98px) {
  :root {
    --font-size-title: 48px;
    --font-size-section-title: 30px;
    --font-size-headline-text: 18px;
    --font-size-body-title: 22px;
    --font-size-headline: 22px;
    --font-size-body: 16px;
    --font-size-job-title: 17px;
    --font-size-button: 16px;
    --font-size-button-sm: 14px;
    --font-size-caption: 12px;
  }
}

@media (max-width: 575.98px) {
  :root {
    --font-size-title: 36px;
    --font-size-section-title: 26px;
    --font-size-headline-text: 17px;
    --font-size-body-title: 20px;
    --font-size-headline: 20px;
    --font-size-body: 15px;
    --font-size-job-title: 16px;
    --font-size-button: 15px;
    --font-size-button-sm: 13px;
    --font-size-caption: 12px;
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  margin: 0;
  background: var(--section-bg);
  color: var(--dark-charcoal);
  font-family: 'Inter', sans-serif;
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
}

html {
  cursor: auto;
}

/* Home page: body background so transparent sections reveal the image */
/*background-image: url('/images/homecover.webp.png');*/
body.page-home {
  background-image: url('/images/bg.webp');
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  background-repeat: no-repeat;
}

/* Site-wide (xowa layout): same frosted glass nav as home — blur + gradient until scrolled */
.navbar-wrapper:not(.scrolled) #mainNav.custom-navbar {
  -webkit-backdrop-filter: blur(16px) saturate(165%);
  backdrop-filter: blur(16px) saturate(165%);
  background: linear-gradient(
    90deg,
    rgba(236, 245, 252, 0.88) 0%,
    rgba(220, 236, 248, 0.55) 32%,
    transparent 58%,
    transparent 82%,
    transparent 100%
  ) !important;
  box-shadow: none !important;
  border-bottom: none !important;
}

.navbar-wrapper:not(.scrolled) #mainNav.custom-navbar > .container {
  position: relative;
  z-index: 1;
}

/* Dropdown chevrons: gold over hero and when scrolled below */
.custom-navbar .navbar-nav > .nav-item.dropdown > .nav-link.dropdown-toggle::after {
  border-top-color: #c9a862 !important;
}

/* Top nav text: white on frosted/transparent bar; dark once scrolled to solid bar */
.navbar-wrapper:not(.scrolled) .custom-navbar .nav-link:not(.btn) {
  color: #ffffff !important;
}

.navbar-wrapper:not(.scrolled) .custom-navbar .nav-link:not(.btn):hover,
.navbar-wrapper:not(.scrolled) .custom-navbar .nav-link:not(.btn):focus {
  color: rgba(255, 255, 255, 0.88) !important;
}

.navbar-wrapper.scrolled .custom-navbar .nav-link:not(.btn) {
  color: #20262b !important;
}

.navbar-wrapper.scrolled .custom-navbar .nav-link:not(.btn):hover,
.navbar-wrapper.scrolled .custom-navbar .nav-link:not(.btn):focus {
  color: #c9a862 !important;
}

/* Mobile expanded menu uses a white sheet — keep links dark for contrast */
@media (max-width: 991.98px) {
  .navbar-wrapper:not(.scrolled) .custom-navbar .navbar-collapse.show .nav-link:not(.btn) {
    color: #20262b !important;
  }

  .navbar-wrapper:not(.scrolled) .custom-navbar .navbar-collapse.show .nav-link:not(.btn):hover,
  .navbar-wrapper:not(.scrolled) .custom-navbar .navbar-collapse.show .nav-link:not(.btn):focus {
    color: #c9a862 !important;
  }
}

/* All paragraphs – consistent font across frontend */
p,
.hero-text,
.stats-description,
.future-subtitle,
.process-subtitle,
.process-card-description,
.strategy-card-description,
.our-values-slide-desc,
.testimonial-quote-text,
.testimonial-subtitle,
.impact-description,
.impact-subtitle,
.cta-section-text,
.who-we-are-section .who-we-are-text,
.mission-vision-text,
.approach-subtitle,
.approach-step-description,
.faq-subtitle,
.faq-card-description,
.job-count-text,
.custom-navbar .nav-link,
.navbar a {
  font-family: 'Inter', sans-serif !important;
  /* font-weight: 600 !important; */
  font-size: var(--font-size-body) !important;
}
p {
	margin-bottom: 0.4rem;
}

/* Headings: Montserrat */
h1, h2, h3, h4, h5, h6,
.hero-title, .hero-title .highlight,
.process-title, .process-title-bold, .process-title-light,
.opportunities-title-top, .opportunities-title-bottom, .opportunities-tagline,
.strategies-title, .our-values-title,
.impact-title-main, .impact-title-highlight,
.testimonial-title, .testimonial-title-light, .testimonial-title-bold,
.who-we-are-title, .who-we-are-subtitle,
.mission-vision-subtitle,
.strategy-card-title,
.our-values-slide-title,
.job-title,
.future-title-light, .future-title-bold,
.process-card-title,
.specialized-title,
.stats-title,
.strategy-number,
.impact-stat-number,
.project-recruiting-card-title,
.career-option-title,
.executive-timeline-heading,
.placement-rocket-title,
.placement-benefit-card-title,
.placement-contact-title,
.who-we-are-subheading,
.career-why-title,
.career-dept-title,
.job-card-title,
.job-card-title-link,
.opportunities-title,
.executive-strategic-title,
.placement-benefits-title,
.career-options-title,
.career-section-title,
.contact-title,
.faq-page-section-title,
.experienced-in-title,
.future-title {
  font-family: 'Montserrat', sans-serif !important;
}

/* Section titles (h2 main headings): same size and weight --font-size-section-title */
.specialized-title,
.future-title, .future-title-light, .future-title-bold,
.process-title, .process-title-bold, .process-title-light,
.opportunities-title, .opportunities-title-top, .opportunities-title-bottom,
.strategies-title, .strategies-title-underline,
.impact-title-main, .impact-title-highlight,
.executive-strategic-title,
.placement-benefits-title,
.placement-contact-title,
.testimonial-title, .testimonial-title-light, .testimonial-title-bold,
.career-options-title,
.who-we-are-title,
.our-values-title,
.career-section-title,
.contact-title,
.faq-page-section-title,
.experienced-in-title {
  font-size: var(--font-size-section-title) !important;
  font-weight: 600 !important;
  line-height: var(--line-height-heading);
}

/* Subheading / card titles: same size and weight (--font-size-body-title) */
.stats-title,
.process-card-title,
.project-recruiting-card-title,
.career-option-title,
.executive-timeline-heading,
.placement-rocket-title,
.placement-benefit-card-title,
.who-we-are-subheading,
.career-why-title,
.career-dept-title,
.job-card-title,
.job-card-title-link {
  font-size: var(--font-size-body-title) !important;
  font-weight: 600 !important;
  line-height: var(--line-height-heading);
}

/* Semantic heading sizes */
h1 { font-size: var(--font-size-title); line-height: var(--line-height-heading); }

/* Global H2: identical everywhere (ignore per-element margin/padding classes) */
h2 {
  font-family: 'Montserrat', sans-serif !important;
  font-size: var(--font-size-section-title) !important;
  font-weight: 600 !important;
  line-height: var(--line-height-heading) !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Global H3: identical everywhere (ignore per-element margin/padding classes) */
h3 {
  font-family: 'Montserrat', sans-serif !important;
  font-size: var(--font-size-body-title) !important;
  font-weight: 600 !important;
  line-height: var(--line-height-heading) !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Global: consistent gap between divider line and following paragraph */
.specialized-line + p,
.future-line + p,
.process-line + p,
.opportunities-line + p,
.impact-title-underline + p,
.testimonial-underline + p,
.who-we-are-accent-line + p,
.our-values-accent-line + p,
.career-options-accent-line + p,
.executive-strategic-accent-line + p,
.executive-timeline-accent-line + p,
.placement-rocket-line + p,
.project-recruiting-line + p,
.heading-accent-line + p {
  margin-top: 12px !important;
  padding-top: 0 !important;
}

/* Global: consistent gap between divider line and following paragraph */
.specialized-line ,
.future-line ,
.process-line ,
.opportunities-line ,
.impact-title-underline,
.testimonial-underline ,
.who-we-are-accent-line ,
.our-values-accent-line ,
.career-options-accent-line ,
.executive-strategic-accent-line,
.executive-timeline-accent-line ,
.placement-rocket-line ,
.project-recruiting-line ,
.heading-accent-line {
  width: 100px !important;
}

/* Typography utility classes */
.font-title { font-size: var(--font-size-title); }
.font-headline { font-size: var(--font-size-headline); }
.font-headline-text { font-size: var(--font-size-headline-text) !important; }
.font-body { font-size: var(--font-size-body); }
.font-caption { font-size: var(--font-size-caption); }
.text-lead { font-size: var(--font-size-headline-text); line-height: var(--line-height-body); }
.text-caption { font-size: var(--font-size-caption); line-height: 1.4; }

/* Buttons: Montserrat SemiBold */
.btn,
button,
input[type="submit"],
input[type="button"],
[class*="btn-"],
.placement-btn-gold,
.placement-btn-outline,
.btn-view-all,
.btn-warning,
.btn-dark,
.custom-navbar .btn-warning,
.search-box button,
.see-more-link,
.faq-btn-primary,
.job-search-filter-btn-primary,
.job-search-filter-btn-secondary,
.now-hiring-btn-gold,
.temp-btn-gold,
.career-btn-primary,
.career-btn-secondary {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 600 !important;
}

/* Button text – use variables everywhere */
.btn {
  font-size: var(--font-size-button);
}
.btn.btn-sm {
  font-size: var(--font-size-button-sm);
}

/* HERO */
.hero-section {
  background: #ffffff;
}

.hero-title {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-title);
  line-height: 0.95;
  letter-spacing: -0.02em;
  color: #20262B;
  margin: 0;
}

.hero-content-wrap {
  width: 100%;
  max-width: 720px;
}

/* Home hero v2 — headline + glass card (tabs + form) + pill CTAs */
.hero-home-v2 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  width: 100%;
  isolation: isolate;
}

.hero-home-v2__title {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 400;
  font-size: clamp(2.35rem, 5.2vw, 3.65rem);
  line-height: 1;
  letter-spacing: -0.03em;
  color: #ffffff;
  margin: 0;
  text-shadow: 0 2px 14px rgba(0, 0, 0, 0.28);
}

.hero-home-v2__line {
  display: block;
}

.hero-home-v2__line--lead {
  font-size: clamp(1.2rem, 2.4vw, 1.65rem);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.01em;
  margin-bottom: 0.45rem;
  color: #ffffff;
}

.hero-home-v2__band-stack {
  --hero-band-skew: -34deg;
  position: relative;
  display: inline-block;
  isolation: isolate;
}

.hero-home-v2__line--stack {
  display: block;
  line-height: 1.05;
}

.hero-home-v2__line--stack + .hero-home-v2__line--stack {
  margin-top: 0.1rem;
}

/* One black band behind both lines */
.hero-home-v2__band-stack::after {
  content: '';
  position: absolute;
  left: -0.5em;
  right: 0.84em;
  top: 0.5em;
  bottom: 0.6em !important; 
  z-index: -2;
  transform: skewX(var(--hero-band-skew));
  background: #0a0a0a;
}

.hero-home-v2__band {
  position: relative;
  display: inline-block;
  padding: 0.14em 0.55em 0.2em;
}

/* One yellow band — only behind "& Arbeitgeber" */
.hero-home-v2__band--gold::before {
  content: '';
  position: absolute;
  inset: 0;
  left: -0.14em;
  right: -0.14em;
  z-index: -1;
  transform: skewX(var(--hero-band-skew));
  background: linear-gradient(90deg, #d0af32 25.48%, #ddc17c 100%);
}

.hero-home-v2__band-text {
  display: inline-block;
  font-family: inherit;
  font-weight: 700;
  font-size: 1em;
  line-height: 1.05;
  letter-spacing: -0.02em;
  color: #ffffff;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.35);
}

.hero-home-v2__card {
  width: 400px;
  max-width: 400px;
  padding: 1rem;
  background: rgba(255, 255, 255, 0.34);
  border: 1px solid rgba(255, 255, 255, 0.52);
  border-radius: 0;
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.48);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(16px);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  position: relative;
  z-index: 3;
}

.hero-home-v2__tabs {
  display: inline-flex;
  gap: 0;
  margin-bottom: 0.75rem;
  border-radius: 0;
  overflow: visible;
  background: rgba(230, 230, 230, 0.48);
  padding: 0;
  width: auto;
  /* max-width: 70%; */
  align-self: flex-start;
  box-sizing: border-box;
  border: 1px solid rgba(32, 38, 43, 0.11);
}

.hero-home-v2__tab {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  padding: 0.4rem 0.75rem;
  border: 0;
  border-radius: 0;
  font-family: 'Manrope', 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 0.8rem;
  color: #4a4f55;
  background: transparent;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease;
  white-space: nowrap;
}

.hero-home-v2__tab + .hero-home-v2__tab {
  border-left: 1px solid rgba(32, 38, 43, 0.38);
}

.hero-home-v2__tab i {
  font-size: 0.95rem;
  opacity: 0.85;
}

.hero-home-v2__tab:hover {
  color: #1a1f24;
}

.hero-home-v2__tab.is-active {
  background: rgba(255, 255, 255, 0.62);
  color: #1a1f24;
  box-shadow: none;
}

.hero-home-v2__tab:focus-visible {
  outline: 2px solid #c9a862;
  outline-offset: 2px;
}

.hero-home-v2__form {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.hero-home-v2__input {
  width: 100%;
  min-height: 48px;
  padding: 0 14px;
  font-family: 'Manrope', sans-serif;
  font-size: 0.95rem;
  color: #2a3036;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 0;
  box-sizing: border-box;
}

.hero-home-v2__input::placeholder {
  color: #7a8086;
}

.hero-home-v2__input:focus {
  border-color: #c9a862;
  outline: none;
  box-shadow: 0 0 0 3px rgba(201, 168, 98, 0.25);
}

.hero-home-v2__field-label {
  display: block;
  font-family: 'Manrope', sans-serif;
  font-size: 0.8rem;
  font-weight: 600;
  color: #3a4046;
  margin-bottom: 0.35rem;
}

/* Hero: custom canton multiselect (dropdown + checkboxes) */
.hero-ms {
  position: relative;
  z-index: 4;
  width: 100%;
}

.hero-ms__toggle {
  width: 100%;
  min-height: 48px;
  padding: 0 2.5rem 0 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  text-align: left;
  font-family: 'Manrope', sans-serif;
  font-size: 0.95rem;
  font-weight: 500;
  color: #2a3036;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 0;
  cursor: pointer;
  box-sizing: border-box;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.hero-ms__toggle:hover {
  border-color: rgba(0, 0, 0, 0.2);
}

.hero-ms__toggle:focus-visible {
  border-color: #c9a862;
  outline: none;
  box-shadow: 0 0 0 3px rgba(201, 168, 98, 0.25);
}

.hero-ms__toggle[aria-expanded='true'] .hero-ms__caret {
  transform: rotate(180deg);
}

.hero-ms__toggle-text {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.hero-ms__toggle-text.is-placeholder {
  color: #7a8086;
  font-weight: 400;
}

.hero-ms__caret {
  flex-shrink: 0;
  font-size: 0.7rem;
  opacity: 0.75;
  transition: transform 0.2s ease;
}

.hero-ms__panel {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 4px);
  z-index: 100;
  max-height: 240px;
  overflow-y: auto;
  padding: 0.35rem 0;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid rgba(0, 0, 0, 0.14);
  border-radius: 0;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.hero-ms__row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.45rem 12px;
  margin: 0;
  cursor: pointer;
  font-family: 'Manrope', sans-serif;
  font-size: 0.9rem;
  color: #2a3036;
  transition: background 0.1s ease;
}

.hero-ms__row:hover {
  background: rgba(201, 168, 98, 0.12);
}

.hero-ms__cb {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  margin: 0;
  cursor: pointer;
  accent-color: #b8860b;
}

.hero-ms__row-text {
  flex: 1 1 auto;
  min-width: 0;
  line-height: 1.3;
}

/* Open canton list overlays the next section (hero height / overflow no longer clips it) */
.hero-section.fdjadhsejabs:has(.hero-ms__toggle[aria-expanded='true']) {
  overflow: visible;
  z-index: 30;
}

.hero-section.fdjadhsejabs.has-hero-video-bg:has(.hero-ms__toggle[aria-expanded='true']) {
  overflow: visible;
}

.fdjadhsejabs:has(.hero-ms__toggle[aria-expanded='true']) .container,
.fdjadhsejabs:has(.hero-ms__toggle[aria-expanded='true']) .hero-container {
  overflow: visible;
}

.hero-home-v2:has(.hero-ms__toggle[aria-expanded='true']),
.hero-home-v2__card:has(.hero-ms__toggle[aria-expanded='true']) {
  overflow: visible;
}

.hero-ms:has(.hero-ms__toggle[aria-expanded='true']) {
  z-index: 200;
}

.hero-ms__panel:not([hidden]) {
  z-index: 201;
}

.hero-home-v2__submit {
  position: relative;
  z-index: 0;
  width: 100%;
  min-height: 48px;
  margin-top: 0.15rem;
  padding: 0 18px;
  border: none;
  border-radius: 0;
  font-family: 'Montserrat', 'Manrope', sans-serif;
  font-weight: 600;
  font-size: 0.95rem;
  letter-spacing: 0.02em;
  color: #fff;
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  cursor: pointer;
  transition: background 0.15s ease, transform 0.1s ease;
}

.hero-home-v2__submit:hover {
  background: #D4B549;
}

.hero-home-v2__submit:active {
  transform: translateY(1px);
}

.hero-home-v2__actions {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  width: 100%;
  max-width: 100%;
}

.hero-home-v2__pill {
  flex: 1 1 calc(33.333% - 0.35rem);
  min-width: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  padding: 0.55rem 0.65rem;
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: 0.78rem;
  text-decoration: none;
  color: #1f252b;
  background: rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.55);
  border-radius: 0;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  transition: background 0.15s ease, color 0.15s ease;
}

.hero-home-v2__pill:hover {
  color: #000;
  background: rgba(255, 255, 255, 0.58);
}

.hero-home-v2__pill i {
  font-size: 0.85rem;
  opacity: 0.88;
}

@media (max-width: 575.98px) {
  .hero-home-v2__pill {
    flex: 1 1 100%;
  }

  .hero-home-v2__title {
    font-size: clamp(2rem, 9vw, 2.75rem);
  }

  .hero-home-v2__line--lead {
    font-size: clamp(1.05rem, 4.5vw, 1.35rem);
    margin-bottom: 0.35rem;
  }

  .hero-home-v2__band-stack {
    --hero-band-skew: -30deg;
  }

  .hero-home-v2__band-stack::after {
    bottom: -0.48em;
  }
}

/* Hero v2 search card — mobile / tablet only (desktop keeps 400px card) */
@media (max-width: 991.98px) {
  .hero-home-v2 {
    gap: 1.25rem;
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .hero-home-v2__card {
    width: 100%;
    max-width: 100%;
    padding: 0.85rem 0.75rem;
    box-sizing: border-box;
    align-self: stretch;
  }

  .hero-home-v2__tabs {
    display: flex;
    width: 100%;
    max-width: 100%;
    align-self: stretch;
    margin-bottom: 0.85rem;
  }

  .hero-home-v2__tab {
    flex: 1 1 0;
    min-width: 0;
    padding: 0.55rem 0.5rem;
    font-size: 0.75rem;
    gap: 0.4rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .hero-home-v2__tab i {
    flex-shrink: 0;
    font-size: 0.9rem;
  }

  .hero-home-v2__form {
    gap: 0.75rem;
  }

  .hero-home-v2__field-label {
    margin-bottom: 0.4rem;
    font-size: 0.8125rem;
  }

  .hero-home-v2__input,
  .hero-ms__toggle {
    min-height: 46px;
    font-size: 1rem;
  }

  .hero-home-v2__submit {
    min-height: 48px;
    margin-top: 0.25rem;
    font-size: 1rem;
  }

  .hero-section.fdjadhsejabs:has(.hero-ms__toggle[aria-expanded='true']) {
    overflow: visible;
  }

  .hero-ms__panel {
    max-height: min(70vh, 420px);
    -webkit-overflow-scrolling: touch;
  }

  .hero-ms__row {
    padding: 0.55rem 12px;
    min-height: 44px;
  }
}

@media (max-width: 575.98px) {
  .hero-home-v2__card {
    padding: 0.75rem 0.65rem;
  }

  .hero-home-v2__tab {
    padding: 0.5rem 0.35rem;
    font-size: 0.7rem;
    gap: 0.3rem;
  }

  .hero-home-v2__tab i {
    font-size: 0.82rem;
  }
}

.hero-title-line {
  display: block;
}

.hero-title-line--second {
  display: block;
  margin-top: 0.02em;
}

/* “Grow Faster.” — white on skewed gold parallelogram (skew wrapper, counter-skew text) */
.hero-grow-block {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.2em;
}

.hero-grow-inner {
  display: inline-block;
  /* Match hero gold CTAs (.hero-section .btn-warning) */
  background: linear-gradient(90deg, #d0af32 25.48%, #ddc17c 100%);
  transform: skewX(-12deg);
  padding: 0.14em 0.48em 0.2em;
}

.hero-grow-faster {
  display: inline-block;
  transform: skewX(12deg);
  font-family: inherit;
  font-weight: 700;
  font-size: inherit;
  line-height: 1.05;
  letter-spacing: -0.02em;
  color: #ffffff;
}

.hero-title .highlight {
  /* legacy — hero now uses .hero-grow-block */
  color: inherit;
  background: transparent;
  padding: 0;
}

.hero-text {
  font-family: 'Inter', 'Poppins', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  letter-spacing: 0%;
  color: #444444;
  max-width: 520px;
}

.hero-section .btn-warning {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border-radius: var(--card-radius-sm);
  border: none;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  line-height: 100%;
  letter-spacing: 0%;
  color: white;
  height: 50px;
  width: 188px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.hero-section .btn-warning:hover,
.hero-section .btn-warning:focus,
.hero-section .btn-warning:active {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  color: white;
  border: none;
}

.hero-section .btn-dark {
  background: #131618;
  border-radius: var(--card-radius-sm);
  border: none;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  line-height: 100%;
  letter-spacing: 0%;
  color: white;
  height: 50px;
  width: 188px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.hero-section .btn-dark:hover,
.hero-section .btn-dark:focus,
.hero-section .btn-dark:active {
  background: #20262B;
  color: white;
  border: none;
}

.hero-section .badge {
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: 30px;
  line-height: 1.3;
  letter-spacing: 0%;
  color: #1f252b;
  background: transparent;
  padding: 0;
}

/* SEARCH */
/* Hero: two search fields side-by-side */
.hero-cta-group {
  display: inline-flex;
  flex-direction: column;
  align-items: stretch;
  width: fit-content;
}
.hero-cta-group .hero-search-form {
  width: 100%;
}
.hero-cta-group .search-box {
  max-width: 100%;
  width: 100%;
}
.hero-cta-group .search-box input {
  max-width: none;
  flex: 1;
  min-width: 0;
}

.hero-search-bar-shell {
  width: 100%;
  max-width: 720px;
  padding: 12px 14px;
  background: rgba(199, 196, 196, 0.78);
  border-radius: 0;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
}

/* Frosted shell + separate white fields + gap (Figma first ref) */
.hero-search-inline {
  display: flex;
  align-items: stretch;
  flex-wrap: nowrap;
  gap: 10px;
  min-height: 50px;
  background: transparent;
  border: none;
  border-radius: 0;
}

.hero-search-segment {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  min-height: 50px;
  background: #ffffff;
  border: 2px solid #5f5f5f;;
  border-radius: 0;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

/* Home hero: location field ~25% narrower than an equal split (ratio 5 : 3 → location 37.5% of pair) */
@media (min-width: 992px) {
  .hero-search-inline .hero-search-segment--keyword {
    flex: 5 1 0;
  }

  .hero-search-inline .hero-search-segment--location {
    flex: 3 1 0;
  }
}

.hero-field-icon {
  color: #5f5f5f; 
  width: 30px;
  height: 30px;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.hero-field-icon svg,
.hero-field-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.hero-section .hero-search-input {
  border-radius: 0;
  border: 0;
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  flex: 1;
  min-width: 0;
  font-size: clamp(0.765rem, 1.4535vw, 1.051875rem);
  line-height: 1.25;
  letter-spacing: 0%;
  text-align: left;
  color: #4e4e4e;
  height: auto;
  min-height: 0;
  padding: 0;
  vertical-align: middle;
  background: transparent;
  box-shadow: none;
}

.hero-section .hero-search-input:focus {
  border: 0;
  outline: none;
  box-shadow: none;
}

.hero-section .hero-search-input::placeholder {
  font-family: 'Manrope', sans-serif;
  font-weight: 300;
  font-size: clamp(0.765rem, 1.4535vw, 1.051875rem);
  line-height: 1.25;
  letter-spacing: 0%;
  text-align: left;
  color: #666;
}

.hero-section .hero-search-input::-webkit-input-placeholder {
  font-weight: 300;
}

.hero-section .hero-search-input::-moz-placeholder {
  font-weight: 300;
}

.hero-search-submit {
  flex-shrink: 0;
  align-self: stretch;
  display: flex;
  align-items: stretch;
  justify-content: stretch;
  width: 45px;
  height: 45px;
  min-height: 45px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  cursor: pointer;
  box-shadow: none;
  overflow: hidden;
}

.hero-search-submit img {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  object-fit: contain;
  opacity: 1;
  /* Black SVG as <img> → white icon */
  filter: brightness(0) invert(1);
}

.hero-search-submit:hover {
  background: transparent;
}

.hero-search-submit:hover img {
  opacity: 0.92;
  filter: brightness(0) invert(1);
}

.hero-search-submit:focus {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(201, 168, 98, 0.45);
}

.hero-actions-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  justify-content: stretch;
  align-items: stretch;
  gap: 10px 12px;
  width: 75%;
  max-width: none;
  box-sizing: border-box;
}

/* Compact hero CTAs: equal-size cells, two per row, block uses left 75% of hero column */
.hero-section .hero-actions-grid .btn {
  width: 100%;
  min-width: 0;
  max-width: none;
  height: 40px;
  padding: 0 16px;
  border-radius: 0;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: var(--font-size-button-sm);
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* NAVBAR */
.navbar-brand {
  font-size: var(--font-size-headline);
}
.fdjadhsejabs {
  background-image: url('/images/homecover.webp');
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  /* Fixed height so next section starts below the image (no overlap) */
  height: 780px;
  min-height: 780px;
  max-height: 780px;
  padding-top: 0;
  padding-bottom: 0;
  position: relative;
  display: flex;
  align-items: flex-start;
  box-sizing: border-box;
}

/* Full-bleed looping video: same visual treatment as background-size: cover + background-position */
.hero-section.fdjadhsejabs.has-hero-video-bg {
  overflow: hidden;
  background-image: none;
  background-color: #1a1f24;
}

.hero-section.fdjadhsejabs .hero-bg-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  object-position: center center;
  z-index: 0;
  pointer-events: none;
}

.hero-section.fdjadhsejabs.has-hero-video-bg::before {
  z-index: 1;
}

.hero-section.fdjadhsejabs.has-hero-video-bg .container {
  z-index: 2;
}

.fdjadhsejabs .container,
.fdjadhsejabs .hero-container {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-top: 2rem;
  padding-bottom: 4rem;
}

/* Badge + title: vertically centered in space above the CTA */
.fdjadhsejabs .hero-top {
  flex: 1;
  display: flex;
  align-items: flex-end;
  padding-bottom: 2.5rem;
}

/* White overlay stronger on the left (copy/search area), fades toward the right over the cover image */
.hero-section.fdjadhsejabs::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /* background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0.82) 0%,
    rgba(255, 255, 255, 0.5) 32%,
    rgba(255, 255, 255, 0.18) 58%,
    rgba(255, 255, 255, 0) 85%
  ); */
  background: linear-gradient( 90deg, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0) 32%, rgba(255, 255, 255, 0.18) 58%, rgba(255, 255, 255, 0) 85% );
  pointer-events: none;
  z-index: 0;
}

.hero-section.fdjadhsejabs .container {
  position: relative;
  z-index: 1;
}

/* Mobile Hero Background */
@media (max-width: 991.98px) {
  .hero-section.fdjadhsejabs {
    overflow-x: hidden;
    overflow-x: clip;
  }

  .fdjadhsejabs {
    background-size: cover;
    background-position: center top;
    height: auto;
    /* Fallback then viewport-aware min height */
    min-height: 620px;
    min-height: clamp(520px, 78svh, 720px);
    max-height: none;
  }

  .hero-section.fdjadhsejabs.has-hero-video-bg {
    background-position: center top;
  }

  .hero-section.fdjadhsejabs.has-hero-video-bg .hero-bg-video {
    object-position: center top;
  }

  .fdjadhsejabs .container,
  .fdjadhsejabs .hero-container {
    padding-top: max(1rem, env(safe-area-inset-top, 0px));
    padding-bottom: max(1.75rem, env(safe-area-inset-bottom, 0px));
    padding-left: max(0.75rem, env(safe-area-inset-left, 0px));
    padding-right: max(0.75rem, env(safe-area-inset-right, 0px));
  }

  .fdjadhsejabs .hero-top {
    align-items: flex-start;
    padding-bottom: 0;
    flex: 1 1 auto;
    min-height: 0;
  }

  .hero-content-wrap {
    max-width: 100%;
    min-width: 0;
  }

  .hero-title {
    font-size: clamp(2.25rem, 8.5vw, 3.25rem);
    line-height: 0.98;
    word-wrap: break-word;
    overflow-wrap: break-word;
  }

  .hero-section .badge {
    font-size: clamp(15px, 3.8vw, 18px);
    line-height: 1.25;
  }

  .hero-search-form.mb-4 {
    margin-bottom: 1.25rem !important;
  }

  .hero-search-bar-shell {
    padding: 10px;
    max-width: 100%;
  }

  /* Row 1: keyword full width — Row 2: location + compact search (saves vertical space) */
  .hero-search-inline {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
    align-content: flex-start;
    min-height: 0;
    gap: 10px;
  }

  .hero-search-inline > .hero-search-segment:first-of-type {
    flex: 1 1 100%;
    width: 100%;
    min-width: 0;
  }

  .hero-search-inline > .hero-search-segment:nth-of-type(2) {
    flex: 1 1 0;
    min-width: 0;
    width: auto;
  }

  .hero-search-segment {
    padding: 0 10px;
    min-height: 48px;
  }

  .hero-section .hero-search-input,
  .hero-section .hero-search-input::placeholder {
    font-size: 12.24px;
  }

  .hero-search-submit {
    flex: 0 0 48px;
    width: 48px;
    min-width: 48px;
    height: auto;
    min-height: 48px;
    align-self: stretch;
  }

  .hero-search-submit img {
    padding: 8px;
    box-sizing: border-box;
  }

  .hero-actions-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: stretch;
    width: 75%;
    max-width: none;
    gap: 8px 10px;
  }

  .hero-section .hero-actions-grid .btn {
    min-width: 0;
    width: 100%;
    max-width: none;
    height: 38px;
    padding: 0 12px;
  }
}

@media (max-width: 575.98px) {
  .fdjadhsejabs {
    min-height: 640px;
    min-height: clamp(540px, 90svh, 760px);
  }

  .hero-title {
    font-size: clamp(1.75rem, 9vw, 2.55rem);
  }

  .hero-title-line--second {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    column-gap: 0.35rem;
    row-gap: 0.25rem;
  }

  .hero-grow-block {
    margin-left: 0;
    max-width: 100%;
  }

  .hero-grow-inner {
    padding: 0.12em 0.4em 0.16em;
  }

  .hero-section .badge {
    font-size: 14px;
  }

  .hero-content-wrap > .d-flex.align-items-center.gap-2 {
    flex-wrap: wrap;
    row-gap: 0.35rem;
  }

  .hero-search-bar-shell {
    padding: 8px;
  }

  .hero-actions-grid {
    grid-template-columns: 1fr;
    width: 100%;
    max-width: 100%;
  }

  .hero-section .hero-actions-grid .btn {
    width: 100%;
    min-width: 0;
    height: 42px;
  }
}

.navbar-wrapper {
  position: relative;
  z-index: 1000;
  transition: all 0.3s ease;
}

.navbar-wrapper.scrolled {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  background-color: #ffffff;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  z-index: 1000;
}

.custom-navbar {
  margin-top: 24px;
  min-height: 74px;
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  position: fixed;
  top: -1px;
  z-index: 10;
  /* Ensure centering works with fixed position */
  left: 0;
  right: 0;
  width: 100%;
  transition: all 0.3s ease;
  background-color: transparent;
}

.navbar-wrapper.scrolled .custom-navbar {
  margin-top: 0;
  max-width: 100%;
  position: relative;
  top: 0;
  left: 0;
  right: 0;
  background-color: transparent;
}

.navbar-wrapper.scrolled .custom-navbar .container {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
}

.custom-navbar .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  flex-wrap: wrap;
}

/* Desktop styles - only apply on larger screens */
@media (min-width: 992px) {
  .custom-navbar .navbar-collapse {
    flex-grow: 1;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 0.75rem;
  }

  .custom-navbar .navbar-collapse .navbar-nav {
    text-align: right;
  }

  .custom-navbar .navbar-collapse .navbar-nav .nav-link {
    text-align: right;
  }
}

/* Mobile Responsive Styles */
@media (max-width: 991.98px) {
  .custom-navbar {
    margin-top: 0;
    min-height: auto;
    position: relative;
    overflow: visible;
  }

  .custom-navbar .container {
    flex-wrap: wrap;
    align-items: center;
    overflow: visible;
    position: relative;
  }

  /* Logo and hamburger stay in first row */
  .custom-navbar .navbar-brand,
  .custom-navbar .navbar-toggler {
    flex-shrink: 0;
  }

  /* Ensure toggler is visible and only one icon shows at a time */
  .custom-navbar .navbar-toggler {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 0.4rem 0.6rem;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 4px;
  }
  .custom-navbar .navbar-toggler .navbar-toggler-icon,
  .custom-navbar .navbar-toggler .fa-times {
    margin: 0;
  }

  /* Navbar collapse: hidden by default, full width when shown */
  .custom-navbar .navbar-collapse {
    display: none !important;
    flex-basis: 100%;
    flex-grow: 0;
    width: 100%;
    order: 3;
    flex-direction: column;
    align-items: flex-start;
  }

  /* When menu is expanded: overlay below header so it's visible above page content */
  .custom-navbar .navbar-collapse.show {
    display: flex !important;
    flex-direction: column;
    align-items: flex-start;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin-top: 0;
    padding: 1rem;
    padding-bottom: 1.5rem;
    background: #ffffff;
    border-top: 1px solid #e9ecef;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.12);
    z-index: 1050;
    max-height: 85vh;
    overflow-y: auto;
  }

  .custom-navbar .navbar-collapse .navbar-nav {
    width: 100%;
    margin-bottom: 0.5rem;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
  }

  .custom-navbar .navbar-collapse .navbar-nav .nav-item {
    width: 100%;
    text-align: left;
  }

  .custom-navbar .navbar-collapse .navbar-nav .nav-link {
    padding: 0.75rem 0;
    width: 100%;
    white-space: nowrap;
    text-align: left;
  }

  /* Mobile: dropdowns open under left-aligned nav */
  .custom-navbar .navbar-collapse .dropdown-menu.dropdown-menu-end {
    left: 0 !important;
    right: auto !important;
    transform: none !important;
  }

  /* Button / user section: language + auth row — space between keeps EN left, Login right */
  .custom-navbar .navbar-collapse > div.d-flex {
    width: 100%;
    max-width: 100%;
    justify-content: space-between;
    align-items: center;
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    border-top: 1px solid #e9ecef;
  }

  .custom-navbar .navbar-collapse .dropdown {
    width: 100%;
  }

  .custom-navbar .navbar-collapse .dropdown .btn-warning,
  .custom-navbar .navbar-collapse .btn-warning {
    width: 100%;
    max-width: 100%;
    justify-content: center;
    text-align: left;
    padding: 0.75rem 1rem;
  }
}

.custom-navbar .nav-link {
  font-family: 'Manrope', sans-serif;
  font-style: normal;
  font-size: var(--font-size-body);
  line-height: 28px;
  letter-spacing: 0;
  vertical-align: middle;
}

.custom-navbar .btn-warning {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border-radius: 0;
  border: none;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  line-height: 100%;
  letter-spacing: 0%;
  color: white;
  height: 50px;
  width: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.custom-navbar .btn-warning:hover,
.custom-navbar .btn-warning:focus,
.custom-navbar .btn-warning:active {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  color: white;
  border: none;
}

/* STATS SECTION - flat, corporate */
.stats-section {
  background: var(--section-bg-alt);
  padding: var(--spacing-section) 0;
  overflow: visible;
}

.stats-section .row {
  position: relative;
  margin: 0 -12px;
  overflow: visible;
}

.stats-section .col-lg-3 {
  position: relative;
  z-index: 1;
  padding: 0 12px;
}

.stats-section .col-lg-3:nth-child(1),
.stats-section .col-lg-3:nth-child(2),
.stats-section .col-lg-3:nth-child(3),
.stats-section .col-lg-3:nth-child(4) {
  z-index: 1;
}

.stats-card {
  background: var(--section-bg);
  padding: 32px 24px;
  position: relative;
  height: 100%;
  min-height: 260px;
  max-width: none;
  width: 100%;
  transform: none;
  border: 1px solid var(--card-border);
  border-radius: var(--card-radius);
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
  overflow: visible;
  box-shadow: none;
}

.stats-card:hover {
  transform: none;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
  border-color: #ddd;
}

.stats-card-content {
  transform: none;
  padding: 0;
  position: relative;
  height: 100%;
  overflow: visible;
}

.stats-number {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  line-height: var(--line-height-heading);
  letter-spacing: 0%;
  color: #DDC17C;
  margin-top: 0;
  margin-bottom: 12px;
}

.stats-title {
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-headline);
  line-height: var(--line-height-heading);
  letter-spacing: 0%;
  color: var(--dark-charcoal);
  margin-bottom: 10px;
}

.stats-description {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  letter-spacing: 0%;
  color: #555555;
  margin-bottom: 0;
}

.stats-logo {
  position: absolute;
  bottom: 24px;
  right: 24px;
  opacity: 0.5;
}

.stats-logo img {
  width: 48px;
  height: 48px;
}

/* Mobile Responsive for Stats */
@media (max-width: 991.98px) {
  .stats-section .row {
    margin: 0 -12px;
    justify-content: center;
  }

  .stats-section .col-lg-3 {
    margin-bottom: 16px;
    padding: 0 12px;
    display: block;
  }

  .stats-card:hover {
    transform: none;
  }

  .stats-number {
    font-size: var(--font-size-title);
  }

  .stats-title {
    font-size: var(--font-size-body);
  }

  .stats-description {
    font-size: var(--font-size-body);
  }
}

/* Home: split-band statistics (dark gradient top / white bottom, figures on seam) */
.stats-split-section {
  --stats-split-band-h: clamp(104px, 19vw, 128px);
  position: relative;
  width: 100%;
  background: #ffffff;
  overflow: hidden;
}

.stats-split-dark-band {
  width: 100%;
  height: var(--stats-split-band-h);
  /* Deep charcoal left → softer dull gray on the right (Figma ref) */
  background: linear-gradient(
    90deg,
    #0a0a0a 0%,
    #121212 28%,
    #2a2a2a 58%,
    #555555 100%
  );
}

/* Pull content up over the band, then pad down by exactly band height so the flow
   starts on the split line — hero translateY(-50%) centers the glyph on that line */
.stats-split-container {
  position: relative;
  z-index: 1;
  max-width: 100%;
  margin-top: calc(-1 * var(--stats-split-band-h));
  padding-top: var(--stats-split-band-h);
  padding-bottom: clamp(40px, 5vw, 64px);
}

.stats-split-row {
  align-items: flex-start;
}

.stats-split-item {
  text-align: center;
  padding: 0 8px 8px;
  height: 100%;
}

.stats-split-hero {
  font-family: 'Inter', 'Manrope', sans-serif;
  font-size: clamp(2rem, 12vw, 6.5rem);
  font-style: italic;
  font-weight: 700;
  line-height: 1;
  margin: 0;
  letter-spacing: -0.02em;
  transform: translateY(-50%);
  text-shadow: 0 4px 18px rgba(0, 0, 0, 0.45);
}

.stats-split-hero strong {
  font-weight: 700;
}

.stats-split-hero--gold {
  color: #c5a059;
}

/* Stay solid white over both bands; shadow keeps it readable on white */
.stats-split-hero--light {
    color: #ffffff;
    text-shadow: 0 1px 2px rgba(255, 255, 255, 0.55), 0 3px 14px rgba(117, 117, 117, 0), 0 6px 24px rgba(97, 97, 97, 0.13);
    filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.4));
  }

/* Gold parallelogram label bands (skewed bars, white type) */
.stats-split-label-stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 0.35rem;
  margin: calc(-1 * clamp(3.25rem, 3vw, 2rem)) auto 0;
  max-width: min(100%, 300px);
}

.stats-split-label-band {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(90deg, #d0af32 25.48%, #ddc17c 100%);
  transform: skewX(-16deg);
  padding: 0.42rem 1.35rem;
  min-height: 2.1rem;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.stats-split-label-band__text {
  display: inline-block;
  transform: skewX(16deg);
  font-family: 'Manrope', 'Inter', sans-serif;
  font-weight: 700;
  font-style: italic;
  /* font-size: clamp(1.5rem, 1.9vw, 1rem); */
  font-size: 1.5rem;
  line-height: 1.2;
  letter-spacing: 0.02em;
  color: #ffffff;
  text-align: center;
  text-transform: none;
}

.stats-split-label-band--single {
  padding-left: 1.6rem;
  padding-right: 1.6rem;
}

/* No vertical gap between the two gold bars (specific stat columns) */
.stats-split-label-stack.stats-split-label-stack--flush {
  gap: 0;
}

.stats-split-label-stack--flush .stats-split-label-band + .stats-split-label-band {
  margin-top: -3px;
}

@media (max-width: 991.98px) {
  .stats-split-section {
    --stats-split-band-h: clamp(48px, 14vw, 96px);
  }

  .stats-split-container {
    padding-bottom: clamp(24px, 5vw, 48px);
  }

  .stats-split-item {
    padding: 0 6px 1rem;
  }

  .stats-split-hero {
    font-size: clamp(2rem, 10.5vw, 5rem);
  }

  .stats-split-label-stack {
    margin: calc(-1 * clamp(1.75rem, 5vw, 3.25rem)) auto 0;
    max-width: 100%;
    padding: 0 6px;
  }
}

@media (max-width: 575.98px) {
  .stats-split-section {
    --stats-split-band-h: clamp(36px, 12vw, 64px);
  }

  .stats-split-container {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    padding-bottom: 1.5rem;
  }

  .stats-split-hero {
    font-size: clamp(1.85rem, 9vw, 3.25rem);
  }

  .stats-split-label-stack {
    margin: calc(-1 * clamp(1.35rem, 4vw, 2rem)) auto 0;
    gap: 0.28rem;
  }

  .stats-split-label-stack.stats-split-label-stack--flush {
    gap: 0;
  }

  .stats-split-label-band {
    padding: 0.35rem 1rem;
  }

  .stats-split-label-band__text {
    font-size: clamp(0.75rem, 3.2vw, 0.9rem);
  }

  .stats-split-row {
    row-gap: 0.5rem;
  }
}

/* SPECIALIZED SECTION - flat cards, minimal yellow */
.specialized-section {
  background: var(--section-bg);
  padding: var(--spacing-section) 0;
}

.specialized-header {
  margin-bottom: 48px;
}

/* Departments page intro: keep copy off the right edge on desktop */
@media (min-width: 992px) {
  .departments-intro-header {
    padding-right: 25%;
  }
}

.specialized-title {
  font-family: 'Inter', 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-title);
  color: var(--dark-charcoal);
  margin-bottom: 0;
  line-height: var(--line-height-heading);
}

.specialized-line {
  width: 48px;
  height: 3px;
  background: #DDC17C;
  margin-top: 6px; 
  margin-bottom: 0; /* next content controls its own spacing */
}

/* Elegant accent line under content headings (e.g. project-recruiting, executive-search) */
.heading-accent-line {
  width: 48px;
  height: 3px;
  background: linear-gradient(90deg, #DDC17C 0%, #d4af37 50%, #DDC17C 100%);
  border-radius: 2px;
   margin-top: 6px; 
  margin-bottom: 0;
  box-shadow: 0 1px 3px rgba(182, 147, 21, 0.25);
}

/* Larger gap between specialized cards */
.specialized-cards-row {
  --bs-gutter-x: 2rem;
  --bs-gutter-y: 1.75rem;
}

@media (min-width: 992px) {
  .specialized-cards-row {
    --bs-gutter-x: 2.5rem;
    --bs-gutter-y: 2rem;
  }
}

.specialized-card-link {
  display: block;
  text-decoration: none;
  color: inherit;
  width: 100%;
}

.specialized-card-link:hover {
  text-decoration: none;
  color: inherit;
}

.specialized-card {
  position: relative;
  background: #2a2a2a;
  border: none;
  border-radius: 0;
  overflow: hidden;
  transform: none;
  width: 100%;
  aspect-ratio: 1 / 1;
  margin: 0 auto;
  cursor: pointer;
  box-shadow: none;
  transition: box-shadow 0.2s ease;
}

.specialized-card:hover {
  transform: none;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12);
}

.specialized-card .card-badge {
  position: absolute;
  top: 0;
  right: 0;
  width: 56px;
  height: 56px;
  background: #ffffff;
  border: none;
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-headline);
  color: #DDC17C;
  z-index: 3;
}

.specialized-card .card-image {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}

.specialized-card .card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
  position: relative;
  z-index: 0;
  display: block;
}

.specialized-card .card-image .card-center {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  z-index: 2;
  pointer-events: none;
}

.specialized-card .card-image .card-icon {
  width: 42%;
  max-width: 100px;
  height: auto;
  object-fit: contain;
}

.specialized-card .card-image .card-label-text {
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-headline);
  line-height: 1.2;
  color: #ffffff;
  text-align: center;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
}

.specialized-card .card-image::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.5) 50%, transparent 100%);
  pointer-events: none;
  z-index: 1;
}

.specialized-card:hover .card-image img {
  transform: scale(1.03);
}

.specialized-card .card-label {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.5) 50%, transparent 100%);
  padding: 25px 20px 20px;
  z-index: 2;
}

.specialized-card .card-label::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: rgba(255, 255, 255, 0.2);
}

.specialized-card .card-label-content {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.specialized-card .card-label span:first-child {
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-headline);
  line-height: 1.2;
  color: #ffffff;
}

.specialized-card .card-arrow {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  transition: transform 0.2s ease;
}

.specialized-card .card-arrow img {
  width: 47px;
  height: 18px;
  opacity: 1;
}

.specialized-card:hover .card-arrow {
  transform: translateX(4px);
}

.btn-view-all {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border: none;
  border-radius: var(--card-radius-sm);
  padding: 14px 32px;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  color: #ffffff;
  text-decoration: none;
  display: inline-block;
  transition: opacity 0.2s ease;
}

.btn-view-all:hover {
  opacity: 0.95;
  color: #ffffff;
}

/* Home — Aktuelle Jobs (sector tags with counts) */
.home-current-jobs {
  background: linear-gradient(to bottom, #EAEAEA 0%, #ffffff 100%);
}

.home-current-jobs__title {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  line-height: 1.15;
  color: #20262b;
  margin: 0 0 1.25rem;
}

.home-current-jobs__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem 0.75rem;
}

.home-current-jobs__tag {
  display: inline-flex;
  align-items: stretch;
  gap: 0;
  max-width: 100%;
  padding: 0;
  background: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  text-decoration: none;
  color: #20262b;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.home-current-jobs__tag:hover {
  border-color: #d0af32;
  box-shadow: 0 2px 10px rgba(208, 175, 50, 0.18);
  color: #20262b;
}

.home-current-jobs__tag-label {
  display: inline-flex;
  align-items: center;
  padding: 0.6rem 0.85rem 0.6rem 1rem;
  font-family: 'Poppins', sans-serif;
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 1.35;
}

.home-current-jobs__tag-count {
  flex-shrink: 0;
  min-width: 2.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.6rem 0.65rem;
  background: linear-gradient(90deg, #d0af32 25.48%, #ddc17c 100%);
  border-radius: 0;
  font-family: 'Manrope', sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.2;
  color: #20262b;
  text-align: center;
}

@media (max-width: 575.98px) {
  .home-current-jobs__tag-label {
    padding: 0.5rem 0.65rem 0.5rem 0.85rem;
    font-size: 0.875rem;
  }

  .home-current-jobs__tag-count {
    min-width: 2.15rem;
    padding: 0.5rem 0.55rem;
    font-size: 0.8125rem;
  }
}

/* Home page: split layout + light tiles (photo on hover) — match Figma: gold icons, white bg */
.specialized-section--home {
  background: linear-gradient(to bottom, #EAEAEA 0%, #ffffff 100%);
}

.specialized-home-intro {
  max-width: 420px;
}

.specialized-home-title {
  font-weight: 600;
  text-transform: none;
  letter-spacing: -0.02em;
  line-height: 1.2;
  color: #1a1a1a;
}

.specialized-home-title strong {
  font-weight: 700;
}

.specialized-home-lead {
  font-size: 1rem;
  line-height: 1.55;
  color: #6b6b6b;
  margin-bottom: 0;
}

.specialized-home-line {
  margin-top: 0;
  background: #c9a862;
}

.btn-all-jobs-specialized {
  display: inline-block;
  background: #c9a862;
  border: none;
  border-radius: 2px;
  padding: 16px 30px;
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-body-title);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #ffffff;
  text-decoration: none;
  transition: background 0.2s ease, opacity 0.2s ease;
}

.btn-all-jobs-specialized:hover {
  background: #b8964f;
  color: #ffffff;
  opacity: 0.98;
}

.specialized-cards-row--home {
  --bs-gutter-x: 0.75rem;
  --bs-gutter-y: 0.75rem;
}

@media (min-width: 992px) {
  .specialized-cards-row--home {
    --bs-gutter-x: 1rem;
    --bs-gutter-y: 1rem;
  }
}

.specialized-section--home .specialized-card.specialized-card--home {
  background: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  box-shadow: none;
}

.specialized-section--home .specialized-card.specialized-card--home:hover {
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.06);
}

.specialized-section--home .specialized-card--home .card-image {
  position: relative;
  background: #ffffff;
  border: none;
  height: 100%;
  min-height: 0;
}

.specialized-section--home .specialized-card--home .specialized-card-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  opacity: 0;
  transition: opacity 0.35s ease, transform 0.35s ease;
}

.specialized-section--home .specialized-card--home:hover .specialized-card-bg {
  opacity: 1;
}

.specialized-section--home .specialized-card--home:hover .specialized-card-bg {
  transform: scale(1.02);
}

.specialized-section--home .specialized-card--home .card-image::after {
  opacity: 0;
  transition: opacity 0.35s ease;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.78) 0%, rgba(0, 0, 0, 0.35) 45%, transparent 100%);
  z-index: 1;
}

.specialized-section--home .specialized-card--home:hover .card-image::after {
  opacity: 1;
}

.specialized-section--home .specialized-card--home .card-center {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  padding: 18px 10px 14px;
  z-index: 2;
  pointer-events: none;
  gap: 0;
}

.specialized-section--home .specialized-card--home .card-icon-holder {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

/* White/light PNG icons → Figma gold line-art on default; white on photo hover */
.specialized-section--home .specialized-card--home .card-icon {
  width: 56%;
  max-width: 114px;
  height: auto;
  object-fit: contain;
  filter: brightness(0) saturate(100%) invert(72%) sepia(28%) saturate(380%) hue-rotate(5deg) brightness(0.94) contrast(1.05);
  transition: filter 0.35s ease, opacity 0.35s ease;
}

.specialized-section--home .specialized-card--home:hover .card-icon {
  filter: brightness(0) invert(1);
  opacity: 0.98;
}

.specialized-section--home .specialized-card--home .card-label-text {
  flex-shrink: 0;
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #b5b5b5;
  text-shadow: none;
  transition: color 0.35s ease, text-shadow 0.35s ease;
}

.specialized-section--home .specialized-card--home:hover .card-label-text {
  color: #ffffff;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.45);
}

/* Mobile Responsive for Specialized Section */
@media (max-width: 991.98px) {
  .specialized-title {
    font-size: var(--font-size-headline);
  }

  .specialized-section:not(.specialized-section--home) .row {
    justify-content: center;
  }

  .specialized-section:not(.specialized-section--home) .col-lg-3 {
    display: flex;
    justify-content: center;
  }

  .specialized-section:not(.specialized-section--home) .specialized-card {
    width: 95%;
    max-width: none;
    aspect-ratio: 1 / 1;
  }

  .specialized-section:not(.specialized-section--home) {
    padding: 80px 0;
  }

  .specialized-section--home {
    padding: 64px 0 !important;
  }

  .specialized-section--home .specialized-card.specialized-card--home {
    aspect-ratio: 1 / 1;
    width: 100%;
    max-width: none;
  }

  .specialized-home-intro {
    max-width: none;
    text-align: start;
    margin-bottom: 0.5rem;
  }

  .specialized-home-line {
    margin-left: 0;
    margin-right: 0;
  }

  .specialized-section--home .btn-all-jobs-specialized {
    width: 100%;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .specialized-section--home {
    padding: 48px 0 !important;
  }

  .specialized-section--home .container {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .specialized-home-title {
    font-size: clamp(1.375rem, 5vw, 1.75rem);
    line-height: 1.25;
  }

  .specialized-home-lead {
    font-size: 0.9375rem;
    line-height: 1.5;
  }

  .specialized-section--home .specialized-card--home .card-icon {
    width: 52%;
    max-width: 88px;
  }

  .specialized-section--home .specialized-card--home .card-label-text {
    font-size: 1rem;
    letter-spacing: 0.07em;
  }

  .specialized-section--home .specialized-card--home .card-center {
    padding: 14px 8px 10px;
  }

  .specialized-cards-row--home {
    --bs-gutter-x: 0.5rem;
    --bs-gutter-y: 0.5rem;
  }
}

/* FUTURE SECTION */
.future-section {
  min-height: 400px;
  padding: var(--spacing-section) 0;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
  background: transparent;
}


.future-section .container {
  position: relative;
  z-index: 1;
}

.future-content {
  padding: 0;
  max-width: 520px;
}

.future-title,
.future-title-light,
.future-title-bold {
  font-family: 'Inter', 'Manrope', sans-serif;
  font-size: var(--font-size-title);
  line-height: var(--line-height-heading);
  letter-spacing: 0%;
  color: var(--dark-charcoal);
  margin-bottom: 16px;
}

.future-title-light { font-weight: 400; }
.future-title-bold { font-weight: 600; }

.future-line {
  width: 48px;
  height: 3px;
  background: #DDC17C;
   margin-top: 6px; 
  margin-bottom: 0;
}

.future-logo-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
}

.future-section-logo {
  height: 280px;
  width: auto;
  object-fit: contain;
}

.future-subtitle {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #555555;
  margin-bottom: 32px;
  line-height: var(--line-height-body);
  padding-top: 12px;
}

.btn-future {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border: none;
  border-radius: var(--card-radius-sm);
  padding: 14px 32px;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  color: #ffffff;
  text-decoration: none;
  display: inline-block;
  transition: opacity 0.2s ease;
}

.btn-future:hover {
  opacity: 0.95;
  color: #ffffff;
}

/* Mobile Responsive for Future Section */
@media (max-width: 991.98px) {
  .future-section {
    min-height: 400px;
    padding: 48px 0;
  }

  .future-section-logo {
    height: 160px;
  }

  .future-title {
    font-size: var(--font-size-title);
  }

  .future-subtitle {
    font-size: var(--font-size-body);
  }
}

@media (max-width: 575.98px) {
  .future-section-logo {
    height: 120px;
  }

  .future-title {
    font-size: var(--font-size-headline);
  }

  .future-subtitle {
    font-size: var(--font-size-body);
  }
}

/* PROCESS SECTION - flat cards */
.process-section {
  background: var(--section-bg);
  padding: var(--spacing-section) 0;
}

.process-header {
  text-align: right;
}

.process-title {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-size: var(--font-size-title);
  line-height: var(--line-height-heading);
  letter-spacing: 0%;
  vertical-align: middle;
  color: #20262B;
  margin-bottom: 20px;
}

.process-title-bold {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-title);
  line-height: var(--line-height-heading);
  letter-spacing: 0%;
  vertical-align: middle;
  color: #20262B;
}

.process-title-light {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 300;
  font-size: var(--font-size-title);
  line-height: var(--line-height-heading);
  letter-spacing: 0%;
  vertical-align: middle;
  color: #20262B;
}

.process-line {
  width: 48px;
  height: 3px;
  background: #DDC17C;
   margin-top: 6px; 
  margin-left: 0;
  margin-bottom: 0;
}

.process-subtitle {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #20262B;
  line-height: 1.5;
  padding-top: 12px;
}

.process-section .row.g-4 {
  justify-content: center;
}

.process-card {
  background: var(--section-bg);
  border: 1px solid var(--card-border);
  border-radius: var(--card-radius);
  overflow: hidden;
  max-width: 420px;
  height: 100%;
  display: flex;
  flex-direction: column;
  box-shadow: none;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.process-card:hover {
  transform: none;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
  border-color: #ddd;
}

.process-card-image {
  width: 100%;
  padding: 20px;
  background: #ffffff;
  border-bottom: none;
  display: flex;
  justify-content: center;
  align-items: center;
}

.process-card-image img {
  max-width: 351.5809326171875px;
  height: 255.18109130859375px;
  width: auto;
  display: block;
  border-radius: 0;
  object-fit: contain;
}

.process-card-content {
  padding: 0px 20px 20px 20px;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.process-card-title {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-section-title);
  line-height: 30px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #20262B;
  margin-bottom: 15px;
}

.process-card-description {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #555555;
  line-height: 1.6;
  margin-bottom: 20px;
  flex-grow: 1;
}

.btn-process {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border: none;
  border-radius: var(--card-radius-sm);
  padding: 12px 28px;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  color: #ffffff;
  text-decoration: none;
  display: inline-block;
  align-self: flex-start;
  transition: opacity 0.2s ease;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.btn-process:hover {
  opacity: 0.95;
  color: #ffffff;
}

/* Mobile Responsive for Process Section */
@media (max-width: 991.98px) {
  .process-header {
    text-align: left;
  }

  .process-line {
    margin-left: 0;
  }

  .process-section .row.g-4 {
    justify-content: center;
  }

  .process-section .col-lg-4,
  .process-section .col-md-6 {
    display: flex;
    justify-content: center;
  }

  .process-card {
    margin: 0 auto;
  }

  .process-title,
  .process-title-bold,
  .process-title-light {
    font-size: var(--font-size-title);
    line-height: var(--line-height-heading);
  }

  .process-subtitle {
    font-size: var(--font-size-body);
  }
}

@media (max-width: 575.98px) {
  .process-title,
  .process-title-bold,
  .process-title-light {
    font-size: var(--font-size-title);
    line-height: var(--line-height-heading);
  }

  .process-subtitle {
    font-size: var(--font-size-body);
  }

  .process-card-title {
    font-size: var(--font-size-body);
  }

  .process-card-description {
    font-size: var(--font-size-body);
  }
}

/* OPPORTUNITIES SECTION */
.opportunities-section {
  background: #f5f5f5;
  background-color: #f5f5f5;
  padding: var(--spacing-section) 0;
}

.opportunities-header {
  padding-right: 40px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.opportunities-title {
  margin-bottom: 20px;
  line-height: 1.2;
}

.opportunities-title-top {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 300;
  font-size: var(--font-size-title);
  line-height: var(--line-height-heading);
  letter-spacing: 0%;
  vertical-align: middle;
  color: #20262B;
  display: block;
}

.opportunities-title-bottom {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-title);
  line-height: var(--line-height-heading);
  letter-spacing: 0%;
  vertical-align: middle;
  color: #20262B;
  display: block;
}

.opportunities-tagline {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-headline-text);
  line-height: 28px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #20262B;
}

.opportunities-line {
  width: 48px;
  height: 3px;
  background: #DDC17C;
   margin-top: 6px; 
  margin-bottom: 0;
}

.opportunities-logo {
  margin-top: 48px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.opportunities-logo-img {
  height: 280px;
  width: auto;
  object-fit: contain;
}

.job-listings {
  padding-left: 20px;
}

.job-item {
  margin-bottom: 0;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.job-item:hover {
  background-color: #f9f9f9;
}

.job-content {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 10px 0;
  gap: 12px;
}

/* Handpicked Opportunities (home): stretch row so logo + date pin to top/bottom */
.job-content.job-content--opportunities {
  align-items: stretch;
}

.job-main {
  flex: 1;
  min-width: 0;
}

.job-title {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-job-title);
  line-height: 20px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #20262B;
  margin-bottom: 2px;
}

.job-title--opportunities {
  font-weight: 700;
  line-height: 1.35;
  margin-bottom: 8px;
}

.job-title-link-opportunities {
  text-decoration: none;
  color: inherit;
  transition: color 0.2s ease;
}

.job-item:hover .job-title-link-opportunities {
  color: var(--gold);
}

.job-home-meta-line {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  column-gap: 0.5rem;
  row-gap: 0.25rem;
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-size: var(--font-size-caption);
  font-weight: 400;
  color: rgba(32, 38, 43, 0.58);
  margin: 0 0 10px;
  line-height: 1.45;
}

.job-home-meta-line .job-home-meta-item {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

.job-home-meta-line .job-home-meta-item i {
  font-size: 0.88em;
  color: var(--glitter);
}

.job-home-meta-sep {
  color: rgba(32, 38, 43, 0.28);
  user-select: none;
}

.job-home-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

.job-home-tag {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 5px 11px;
  background: #e9ecef;
  color: #495057;
  border: 1px solid #dee2e6;
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.25;
}

.job-home-tag i {
  font-size: 11px;
}

/* Sector tag: original gold accent (other tags use grey .job-home-tag base) */
.job-home-tag.job-home-tag--sector {
  background: var(--glitter);
  color: #20262B;
  border: none;
}

.job-details {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 15px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #20262B80;
  margin-bottom: 4px;
}

.job-location {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 16px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #20262B80;
  margin-bottom: 0;
}

.job-meta {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  flex-shrink: 0;
}

/* Logo top, date bottom (matches reference layout) */
.job-meta.job-meta--opportunities {
  justify-content: space-between;
  gap: 0;
  padding-top: 2px;
  padding-bottom: 2px;
}

.job-date {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 16px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #20262B80;
  white-space: nowrap;
}

.job-meta--opportunities .job-date {
  font-size: var(--font-size-caption);
  color: rgba(32, 38, 43, 0.45);
}

.job-logo {
  width: 24px;
  height: 22px;
}

/* Home Handpicked Opportunities: X logo muted until row hover / focus */
.job-meta.job-meta--opportunities .job-logo {
  opacity: 0.5;
  filter: grayscale(1);
  transition: opacity 0.2s ease, filter 0.2s ease;
}

.job-item:hover .job-meta.job-meta--opportunities .job-logo,
.job-item:focus-within .job-meta.job-meta--opportunities .job-logo {
  opacity: 1;
  filter: none;
}

/* Job search: same opportunities row layout; wishlist sits beside title */
.job-content--opportunities .job-opportunities-wishlist .job-card-wishlist-btn {
  padding: 6px;
}

.job-content--opportunities .job-opportunities-wishlist .job-card-wishlist-btn:hover {
  background: rgba(200, 169, 106, 0.06);
}

.job-divider {
  width: 100%;
  height: 1px;
  background: var(--card-border);
  margin: 0;
}

.job-item:last-child .job-divider {
  margin-bottom: 12px;
}

.see-more {
  text-align: right;
  margin-top: 20px;
  padding-top: 10px;
}

.see-more-link {
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  color: #2d2d2d;
  text-decoration: none;
  transition: color 0.3s ease;
}

.see-more-link:hover {
  color: #d0af32;
}

/* Home: AJAX pagination (prev/next chevrons) */
.home-candidates-shell {
  position: relative;
}

.home-candidates-pagination {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}

.home-candidates-page-btn {
  width: 53px;
  height: 53px;
  padding: 0;
  border-radius: 50%;
  border: 1px solid #c9a862;
  background: transparent;
  color: #b89b55;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.2s ease, opacity 0.2s ease, color 0.2s ease;
  font-size: 1.5rem;
  line-height: 1;
}

.home-candidates-page-btn:not(:disabled):hover {
  background: rgba(201, 168, 98, 0.1);
  color: #9a7d3f;
}

.home-candidates-page-btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.home-candidates-panel-loading {
  opacity: 0.55;
  pointer-events: none;
}

@media (max-width: 767.98px) {
  .home-candidates-pagination {
    flex-direction: row;
    justify-content: flex-start;
    width: auto;
  }
}

/* New Candidates section (home) - same layout as job items */
.candidate-listings-home .candidate-row-item {
  transition: background-color 0.3s ease;
  margin: 12px 0;
  background-color: #ffffff6e;
  padding: 0px 7px;
}
.candidate-listings-home .candidate-row-item:hover {
  background-color: #f9f9f9;
}
.candidate-row-content {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px 0;
}
.candidate-row-avatar-stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  flex-shrink: 0;
}
.candidate-row-uid {
  display: flex;
  justify-content: center;
  width: 100%;
}
.candidate-row-avatar {
  width: 80px;
  height: 80px;
  min-width: 56px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid #1a1a1a;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.candidate-row-avatar-img {
  width: 45px;
  height: 45px;
  object-fit: contain;
}
.candidate-row-main {
  flex: 1;
  min-width: 0;
}
.candidate-row-badges {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 6px;
}
.candidate-badge {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-button-sm);
  font-weight: 600;
  padding: 0px 8px;
  border-radius: 0;
  white-space: nowrap;
}
.candidate-badge-uid {
  background: #1a1a1a;
  color: #d0af32;
}
.candidate-badge-role {
  background: #d0af32;
  color: #1a1a1a;
}
.candidate-badge-available {
  background: #28a745;
  color: #fff;
}
.candidate-row-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  font-size: var(--font-size-caption);
  color: rgba(0,0,0,0.6);
  margin-bottom: 6px;
}
.candidate-row-meta span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.candidate-row-meta i {
  font-size: var(--font-size-caption);
}
.candidate-row-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}
.candidate-tag {
  font-size: var(--font-size-caption);
  padding: 3px 8px;
  border-radius: 0;
  font-weight: 500;
}
.candidate-tag-sector {
  background: #FFC308;
  color: #1a1a1a;
}
.candidate-tag-sector i {
  margin-right: 3px;
}
.candidate-tag-skill {
  background: #e9ecef;
  color: #495057;
}
.candidate-tag-more {
  background: #e9ecef;
  color: #495057;
}
.candidate-row-action {
  flex-shrink: 0;
}

.candidate-row-summary {
  color: #666;
  font-size: var(--font-size-body);
  line-height: 1.5;
  max-height: 4.5em;
  overflow: hidden;
  margin-top: 4px;
}

/* New Candidates (home): match candidate-search mobile — stacked column, centered avatar, full-width CTA */
@media (max-width: 767.98px) {
  .candidate-listings-home .candidate-row-content {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    padding: 16px 0;
  }

  .candidate-listings-home .candidate-row-avatar-stack {
    align-self: center;
    width: 100%;
  }

  .candidate-listings-home .candidate-row-avatar {
    width: 95px;
    height: 95px;
    min-width: 0;
    border-width: 3px;
    margin: 0 auto;
  }

  .candidate-listings-home .candidate-row-avatar-img {
    width: 52px;
    height: 52px;
  }

  .candidate-listings-home .candidate-row-main {
    width: 100%;
  }

  .candidate-listings-home .candidate-row-action {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    margin-top: 4px;
  }

  .candidate-listings-home .candidate-row-action .candidate-btn {
    width: 100%;
    justify-content: center;
    box-sizing: border-box;
  }
}

.candidate-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-button-sm);
  font-weight: 500;
  padding: 8px 16px;
  border-radius: 0;
  border: none;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.candidate-btn-request,
.candidate-btn-view {
  background: #FFC308;
  color: #1a1a1a;
}
.candidate-btn-request:hover,
.candidate-btn-view:hover {
  opacity: 0.9;
}
.candidate-btn-pending {
  background: #d0af32;
  color: #1a1a1a;
  cursor: default;
}

/* Job Listings Footer */
.job-listings-footer {
  margin-top: 40px;
  padding-top: 20px;
}

.job-load-more-btn {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  color: #ffffff;
  border: none;
  border-radius: 0;
  padding: 12px 40px;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  cursor: pointer;
  transition: opacity 0.3s ease;
}

.job-load-more-btn:hover {
  opacity: 0.9;
  color: #ffffff;
}

.job-count-text {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #9e9e9e;
  margin: 0;
  letter-spacing: 1px;
}

/* Mobile Responsive for Opportunities Section */
@media (max-width: 991.98px) {
  .opportunities-header {
    padding-right: 0;
    margin-bottom: 40px;
  }

  /* Only center the logo images on mobile; heading/tagline stay left-aligned */
  .opportunities-logo {
    width: 100%;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
  }

  .job-listings {
    padding-left: 0;
  }

  .job-content {
    flex-direction: column;
    gap: 8px;
  }

  /* Handpicked / job-search: same row layout as desktop — main left, X + date column on right */
  .job-content.job-content--opportunities {
    flex-direction: row;
    align-items: stretch;
    gap: 12px;
  }

  .job-meta {
    flex-direction: row;
    align-items: center;
    width: 100%;
    justify-content: space-between;
  }

  .job-meta.job-meta--opportunities {
    flex-direction: column;
    align-items: flex-end;
    justify-content: space-between;
    gap: 0;
    width: auto;
    flex-shrink: 0;
    align-self: stretch;
  }

  .opportunities-title-top {
    font-size: var(--font-size-title);
  }

  .opportunities-title-bottom {
    font-size: var(--font-size-title);
  }
}
.hgfdskewajs {
  margin: unset !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 0px 30px !important;
}

/* STRATEGIES SECTION - light bg, flat cards; increased height, cards moved up */
.strategies-section {
  background-color: #20262B;
  background-image: url('/images/7-bg.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 60px 0 80px;
  min-height: 520px;
  position: relative;
  display: flex;
  flex-direction: column;
}

.strategies-section .strategies-container-wrapper,
.strategies-section .hgfdskewajs {
  position: relative;
  z-index: 2;
}

.placement-hero.about-hero-section {
  background-image: url('/images/about-cover1.png') !important;
}

/* strategies-section-about: clone for About page only (not general strategies-section) */
.strategies-section-about {
  background-color: #20262B;
  background-image: url('/images/7-bg-about11.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  min-height: 520px;
  position: relative;
  overflow-x: clip;
  overflow-y: visible;
  width: 100%;
  box-sizing: border-box;
}
.strategies-section-about .strategies-wrapper-about {
  position: relative;
  z-index: 2;
  min-height: 520px;
  max-width: none;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
  padding-left: 30px;
  padding-right: 0;
}
.strategies-section-about .strategies-layout-about {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding-right: 0;
  margin-right: 0;
}
.strategies-section-about .strategies-header-about {
  padding-left: clamp(1.25rem, 4vw, 3rem);
  padding-right: 1.5rem;
  padding-top: 12px;
  padding-bottom: 0;
  min-width: 0;
  box-sizing: border-box;
}
.strategies-section-about .strategies-header-about .our-values-title {
  color: #ffffff;
  text-shadow: 0 3px 10px rgba(0, 0, 0, 0.34), 0 8px 22px rgba(0, 0, 0, 0.38), 0 0 14px rgba(255, 255, 255, 0.65);
  overflow-wrap: anywhere;
  word-break: normal;
}
.strategies-section-about .strategies-header-about .our-values-accent-line {
  background: linear-gradient(90deg, #DDC17C, #d0af32);
  width: 90px;
  height: 3px;
}
.strategies-section-about .strategies-container-about {
  margin-top: 16px;
  margin-bottom: 2rem;
  position: relative;
}
.strategies-section-about.in-view .strategies-cards { animation-play-state: running; }
.strategies-section-about.in-view .strategies-progress-bar { animation-play-state: running; }
.strategies-section-about .strategies-container-about:hover .strategies-progress-bar { animation-play-state: paused; }
@media (min-width: 992px) {
  .strategies-section-about .strategies-layout-about {
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    gap: 2rem;
  }
  .strategies-section-about .strategies-header-about {
    flex: 0 0 min(320px, 32%);
    max-width: 360px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding-left: clamp(1.5rem, 3vw, 2.5rem);
    margin-top: 80px;
  }
  .strategies-section-about .strategies-container-about {
    flex: 1;
    min-width: 0;
    margin-left: 3rem;
    margin-top: 0;
  }
}
@media (max-width: 991.98px) {
  .strategies-section-about {
    min-height: 480px;
    padding: 0;
  }
  .strategies-section-about .strategies-wrapper-about {
    min-height: 480px;
    padding-left: 15px;
    padding-right: 15px;
    padding-right: 0;
  }
  .strategies-section-about .strategies-header-about {
    margin-bottom: 0;
    padding-right: 0;
  }
  .strategies-section-about .strategies-container-about {
    margin-top: 30px;
    margin-left: 0;
  }
  .strategies-section-about .strategies-scroll-wrapper {
    margin-left: -15px;
    margin-right: -15px;
    width: calc(100% + 30px);
  }
}

.strategies-bottom-text-section {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ffffff;
  pointer-events: none;
  z-index: 1;
}

.strategies-bottom-text_old {
  display: block;
  width: 100%;
  padding: 0 1rem;
  box-sizing: border-box;
  font-family: 'Inter', 'Manrope', sans-serif;
  font-weight: 800;
  font-size: clamp(1.75rem, 5vw, 2.5rem);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #E1E1E1;
  white-space: nowrap;
  line-height: 1.1;
  text-align: justify;
  text-shadow:
    0 0 1px rgba(225, 225, 225, 0.9),
    0 0 4px rgba(225, 225, 225, 0.7),
    0 0 12px rgba(225, 225, 225, 0.5),
    0 0 24px rgba(225, 225, 225, 0.35);
}

.strategies-bottom-text {
  display: inline-block;
  max-width: 100%;
  padding: 0 1rem;
  box-sizing: border-box;
  font-family: 'Inter', 'Manrope', sans-serif;
  font-weight: 800;
  font-size: clamp(5.56rem, 0vw, 13rem);
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #E1E1E1;
  white-space: nowrap;
  line-height: 0.76;
  text-align: center;
  text-shadow: 0 0 1px rgba(225, 225, 225, 0.95), 0 0 3px rgba(225, 225, 225, 0.85), 0 0 6px rgba(225, 225, 225, 0.6), 0 0 10px rgba(225, 225, 225, 0.45), 0 0 16px rgba(225, 225, 225, 0.25);
}

/* Our values slider section */
.our-values-section {
  background: linear-gradient(90deg, #2d2d2d 0%, #3d3d3d 50%, #4a4a4a 100%);
  padding: 2rem 0;
  position: relative;
  overflow: hidden;
}

.our-values-container {
  position: relative;
  z-index: 1;
}

.our-values-header {
  padding-right: 2rem;
}

.our-values-title {
  font-family: 'Inter', 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-section-title);
  color: #ffffff;
  margin: 0;
  line-height: 1.2;
}

.our-values-accent-line {
  width: 48px;
  height: 3px;
  background: linear-gradient(90deg, #DDC17C, #d0af32);
   margin-top: 6px; 
  margin-bottom: 0;
}

.our-values-slider {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1.5rem;
}

.our-values-slides {
  flex: 1;
  position: relative;
  min-height: 130px;
  max-width: 480px;
}

.our-values-slide {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.35s ease, visibility 0.35s ease;
  padding-right: 1rem;
}

.our-values-slide.our-values-slide-active {
  position: relative;
  opacity: 1;
  visibility: visible;
}

.our-values-slide-icon {
  position: absolute;
  left: 50%;
  top: 55%;
  transform: translate(-50%, -50%);
  width: 250px; /* +25% */
  height: 250px; /* +25% */
  color: rgba(255, 255, 255, 0.12);
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

.our-values-slide-icon svg {
  width: 100%;
  height: 100%;
}

.our-values-slide-icon i {
  font-size: 13.125rem; /* 10.5rem * 1.25 */
}

.our-values-slide-title {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 1.25rem;
  color: #ffffff;
  margin: 0 0 0.5rem 0;
  line-height: 1.3;
  position: relative;
  z-index: 1;
}

.our-values-slide-desc {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: rgba(255, 255, 255, 0.92);
  margin: 0;
  line-height: 1.6;
  position: relative;
  z-index: 1;
  max-width: 100%;
}

.our-values-next {
  flex-shrink: 0;
  margin-left: auto;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 2px solid #DDC17C;
  background: rgba(45, 45, 45, 0.9);
  color: #DDC17C;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}

.our-values-next:hover {
  background: #DDC17C;
  color: #1a1a1a;
}

.our-values-next i {
  font-size: 1.125rem;
}

@media (max-width: 991.98px) {
  .our-values-section {
    padding: 1.5rem 0;
  }

  .our-values-header {
    padding-right: 0;
    margin-bottom: 1rem;
  }

  .our-values-slide-icon {
    width: 200px; /* 160px * 1.25 */
    height: 200px; /* 160px * 1.25 */
  }

  .our-values-slide-icon i {
    font-size: 7.8125rem; /* 6.25rem * 1.25 */
  }

  .our-values-slide-desc {
    max-width: 100%;
  }
}

/* About page: increase "Our values" section height (+25%) */
.page-about .our-values-section {
  padding: 5.0625rem 0; /* +30% from current about-page value */
}

.page-about .our-values-slide-icon {
  width: 325px; /* 250px * 1.3 */
  height: 325px; /* 250px * 1.3 */
}

.page-about .our-values-slide-icon i {
  font-size: 17.0625rem; /* 13.125rem * 1.3 */
}

@media (max-width: 991.98px) {
  .page-about .our-values-section {
    padding: 3.046875rem 0; /* +30% from current mobile about-page value */
  }

  .page-about .our-values-slide-icon {
    width: 260px; /* 200px * 1.3 */
    height: 260px; /* 200px * 1.3 */
  }

  .page-about .our-values-slide-icon i {
    font-size: 10.15625rem; /* 7.8125rem * 1.3 */
  }
}

/* Strategies layout: title left, cards pushed right, vertically centered */
.strategies-layout {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.strategies-header {
  padding-left: 48px;
  padding-right: 2rem;
  padding-top: 0;
  padding-bottom: 0;
}

@media (min-width: 992px) {
  .strategies-layout {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
  }

  .strategies-header {
    flex: 0 0 29%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding-left: 8%;
  }

  .strategies-container {
    flex: 1;
    min-width: 0;
    margin-left: 3rem;
    margin-top: 0 !important;
  }
}

.strategies-title {
  font-family: 'Inter', 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-section-title);
  color: #20262B;
  margin: 0;
  line-height: 1.2;
}

.strategies-title-underline {
  position: relative;
  display: inline-block;
}

.strategies-title-underline::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 100%;
  height: 3px;
  background: #DDC17C;
}

.strategies-section .strategies-container-wrapper,
.strategies-section .hgfdskewajs {
  position: relative;
  z-index: 2;
}

.strategies-container {
  margin-top: 16px;
  margin-bottom: 4rem;
  position: relative;
}

@media (min-width: 992px) {
  .strategies-section .strategies-container {
    width: auto;
  }
}

.strategies-scroll-wrapper {
  overflow: hidden;
  position: relative;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.strategies-cards {
  display: flex;
  gap: 24px;
  padding: 16px 0;
  width: max-content;
  animation: scrollCards 30s linear infinite;
  animation-play-state: paused;
  will-change: transform;
}

.strategies-section.in-view .strategies-cards {
  animation-play-state: running;
}

@keyframes scrollCards {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(-260px * 5 - 24px * 4));
  }
}

.strategies-cards:hover {
  animation-play-state: paused;
}

.strategies-container:hover .strategies-progress-bar {
  animation-play-state: paused;
}

.strategy-card {
  min-width: 340px;
  max-width: 340px;
  max-height: 360px;
  padding: 20px 18px;
  border-radius: var(--card-radius);
  position: relative;
  transition: background 0.3s ease, border-color 0.3s ease, color 0.3s ease, box-shadow 0.3s ease;
  cursor: pointer;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid #C7A33C;
  box-shadow: 0 2px 14px rgba(0, 0, 0, 0.08);
}

.strategy-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url('/images/x.svg');
  background-repeat: no-repeat;
  background-position: top right;
  background-size: 40% auto;
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 0;
  pointer-events: none;
}

.strategy-card:hover {
  background: linear-gradient(135deg, #d0af32 0%, #DDC17C 100%);
  border-color: #DDC17C;
  box-shadow: 0 4px 20px rgba(182, 147, 21, 0.35);
}

.strategy-card:hover::before {
  opacity: 0.18;
}

.strategy-number,
.strategy-card-title,
.strategy-card-description {
  position: relative;
  z-index: 1;
}

.strategy-number {
  font-family: 'Manrope', sans-serif;
  font-weight: 700;
  font-size: 1.125rem;
  margin-bottom: 8px;
  line-height: 1;
  color: #C7A33C;
  transition: color 0.3s ease;
}

.strategy-card-title {
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-headline-text);
  margin-bottom: 8px;
  line-height: var(--line-height-heading);
  color: #C7A33C;
  transition: color 0.3s ease;
  margin-bottom: 8px !important;
}

.strategy-card-description {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  color: #20262B;
  margin-bottom: 0;
  transition: color 0.3s ease;
}

.strategy-card:hover .strategy-number,
.strategy-card:hover .strategy-card-title,
.strategy-card:hover .strategy-card-description {
  color: #20262B;
}

.strategies-progress {
  width: 100%;
  height: 4px;
  background: var(--card-border);
  margin-top: 10px;
  position: relative;
  overflow: hidden;
  border-radius: 2px;
}

.strategies-progress-bar {
  height: 100%;
  background: #DDC17C;
  width: 0%;
  animation: progressAnimation 30s linear infinite;
  animation-play-state: paused;
  border-radius: 2px;
}

.strategies-section.in-view .strategies-progress-bar {
  animation-play-state: running;
}

@keyframes progressAnimation {
  0% {
    width: 0%;
  }
  50% {
    width: 100%;
  }
  100% {
    width: 0%;
  }
}

/* Mobile Responsive for Strategies Section */
@media (max-width: 991.98px) {
  .strategies-container {
    margin-top: 30px !important;
    margin-left: 0;
  }
  .strategies-section {
    min-height: 480px;
    padding: 0;
    background-size: cover;
    overflow-x: hidden;
  }

  .strategies-header {
    margin-bottom: 0px !important;
    padding-right: 0;
  }

  .strategies-section .strategies-container-wrapper,
  .strategies-section .hgfdskewajs {
    padding-left: 15px !important;
    padding-right: 15px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .strategies-scroll-wrapper {
    margin-left: -15px;
    margin-right: -15px;
    width: calc(100% + 30px);
  }

  .strategies-title {
    font-size: var(--font-size-section-title);
  }

  .strategy-card {
    min-width: 280px;
    max-width: 280px;
    max-height: 280px;
  }

  .strategy-number {
    font-size: var(--font-size-section-title);
  }

  .strategy-card-title {
    font-size: var(--font-size-section-title);
  }

  .strategy-card-description {
    font-size: var(--font-size-body);
  }
  .strategies-section .strategies-container-wrapper,
  .hgfdskewajs {
    padding: 0px 15px !important;
  }

  .strategies-scroll-wrapper {
    margin-left: -15px;
    margin-right: -15px;
    width: calc(100% + 30px);
  }
}

/* IMPACT SECTION - clean, minimal yellow */
/* Force impact block to use full width (no parent constraint) */
.impact-bleed-wrapper {
  width: 100% !important;
  max-width: none !important;
  position: relative;
  overflow: visible;
}

/* Soft fade at bottom so impact section blends into footer (no hard line) */
.impact-bleed-wrapper::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 50px; 
  background: linear-gradient(to bottom, transparent 0%, rgba(255, 255, 255, 0.4) 40%, #FBFBFB 100%);
  pointer-events: none;
  z-index: 2;
}

.impact-section {
  background-color: var(--section-bg-alt);
  background-image: none;
  padding: var(--spacing-section) 0;
  min-height: 560px;
  position: relative;
  overflow: visible;
  margin-top: 0;
  box-sizing: border-box;
  width: 100% !important;
  max-width: none !important;
}

/* Video container: fills entire section edge to edge */
.impact-content-white {
  background-color: #ffffff;
  padding: 10rem 0 0 0;
  width: 100%;
}

.impact-content-white .impact-title-wrapper {
  text-align: left;
}

@media (max-width: 991.98px) {
  .impact-content-white {
    padding: 1.25rem 0;
  }
}

@media (max-width: 575.98px) {
  .impact-content-white {
    padding: 1rem 0;
  }
}

.impact-video-section {
  position: relative;
  width: 100%;
  min-height: 630px;
  overflow: hidden;
}

.impact-video-section .impact-video-bg-wrap {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.impact-over-video-content {
  position: relative;
  z-index: 2;
  padding: 2.5rem 0 3rem;
}

.impact-video-section .impact-video-overlay {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.92) 0%, rgba(255, 255, 255, 0.5) 45%, transparent 75%);
}

/* About page: cloudy white overlay on left ~50% */
.impact-video-section-about .impact-video-cloud-overlay {
  background:
    radial-gradient(ellipse 80% 50% at 15% 30%, rgba(255, 255, 255, 0.95) 0%, transparent 65%),
    radial-gradient(ellipse 60% 70% at 10% 70%, rgba(255, 255, 255, 0.9) 0%, transparent 60%),
    radial-gradient(ellipse 70% 40% at 22% 15%, rgba(255, 255, 255, 0.92) 0%, transparent 55%),
    linear-gradient(90deg, rgba(255, 255, 255, 0.97) 0%, rgba(255, 255, 255, 0.85) 30%, rgba(255, 255, 255, 0.5) 50%, transparent 65%);
}

.impact-statistics-over-video .impact-statistics-title {
  display: none;
}

.impact-statistics-over-video .impact-stat-item {
  text-align: center;
}

.impact-stat-gold .impact-stat-number {
  color: #DDC17C;
}

.impact-stat-white .impact-stat-number {
  color: #ffffff;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

/* About page: richer white stats for visibility on cloudy/white background */
.impact-video-section-about .impact-stat-white .impact-stat-number {
  color: #ffffff;
  /* Cloudy soft shadow (no border/edge effect) for readability on bright background. */
  text-shadow:
    0 3px 10px rgba(0, 0, 0, 0.34),
    0 8px 22px rgba(0, 0, 0, 0.38),
    0 0 14px rgba(255, 255, 255, 0.65);
}

.impact-statistics-over-video .impact-stat-label {
  color: #2d2d2d;
}

.impact-video-bg-wrap {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
}

.impact-video-bg-wrap .impact-video-bg,
.impact-video-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  pointer-events: none;
}

.impact-video-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(248, 249, 250, 0.4);
  z-index: 1;
  pointer-events: none;
}

/* (removed) smooth blend so video doesn’t have a hard cut (soft cool tone like video) */
/* Left-side panel for text readability (like other sections with bg image) */
.impact-content {
  position: relative;
  z-index: 3;
  text-align: left;
}

.impact-title-wrapper {
  display: flex;
  flex-direction: column;
}

.impact-title-main {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-title);
  line-height: var(--line-height-heading);
  letter-spacing: 0%;
  vertical-align: middle;
  color: #1a1a1a;
  margin: 0;
}

.impact-title-highlight {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #20262B;
  margin: 0;
  display: inline-block;
  padding: 0;
  background: transparent;
  transform: none;
  width: fit-content;
}

.impact-title-highlight span {
  display: inline;
  transform: none;
}

.impact-title-underline {
  display: block;
  width: 48px;
  height: 3px;
  background: #DDC17C;
   margin-top: 6px; 
  margin-bottom: 0;
}

.impact-subtitle {
  font-family: 'Poppins', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-headline);
  line-height: 22px;
  letter-spacing: 0%;
  color: #2d2d2d;
  margin: 0;
}

.impact-description {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.6;
  color: #444444;
  margin: 0;
}

.impact-statistics {
  margin-top: 40px;
}

.impact-statistics-title {
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-headline);
  line-height: 30px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #1a1a1a;
  margin: 0;
}

.impact-stat-item {
  text-align: left;
}

.impact-stat-number {
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: 100px;
  line-height: 1.2;
  color: #20262B;
  margin-bottom: 8px;
}

.impact-stat-label {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-headline) !important;
  line-height: 1.5;
  color: #444444;
}

.impact-balloon-wrapper {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  min-height: 600px;
}

.impact-balloon-img {
  max-width: 100%;
  height: auto;
  object-fit: contain;
  position: relative;
  z-index: 2;
}

/* Mobile Responsive for Impact Section */
@media (max-width: 991.98px) {
  .impact-section {
    padding: 80px 0;
    min-height: auto;
  }

  .impact-title-main {
    font-size: var(--font-size-title);
    line-height: var(--line-height-heading);
  }

  .impact-title-highlight {
    font-size: var(--font-size-title);
    padding: 8px 16px;
  }

  .impact-subtitle {
    font-size: var(--font-size-body);
    line-height: 20px;
  }

  .impact-description {
    font-size: var(--font-size-body);
  }

  .impact-statistics-title {
    font-size: var(--font-size-headline);
  }

  .impact-stat-number {
    font-size: var(--font-size-title);
  }

  .impact-stat-label {
    font-size: var(--font-size-headline) !important;
  }

  .impact-balloon-wrapper {
    min-height: 400px;
    margin-top: 40px;
  }
  .impact-section {
    background-size: cover;
  }
}

@media (max-width: 575.98px) {
  .impact-section {
    padding: 60px 0;
  }

  .impact-title-main {
    font-size: var(--font-size-title);
    line-height: var(--line-height-heading);
  }

  .impact-title-highlight {
    font-size: var(--font-size-title);
    padding: 6px 12px;
  }

  .impact-subtitle {
    font-size: var(--font-size-body);
    line-height: 18px;
  }

  .impact-description {
    font-size: var(--font-size-body);
  }

  .impact-statistics-title {
    font-size: var(--font-size-body);
  }

  .impact-stat-number {
    font-size: var(--font-size-title);
  }

  .impact-stat-label {
    font-size: var(--font-size-headline) !important;
  }

  .impact-balloon-wrapper {
    min-height: 300px;
  }
}

/* TESTIMONIAL SECTION */
.testimonial-section {
  padding: var(--spacing-section) 0;
  background-color: var(--section-bg);
}

.testimonial-header {
  text-align: left;
}

.testimonial-title {
  display: flex;
  flex-direction: column;
  margin-bottom: 20px;
}

.testimonial-title-light {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 200 !important;
  font-size: var(--font-size-title);
  line-height: var(--line-height-heading);
  color: #20262B;
}

.testimonial-title-bold {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-title);
  line-height: var(--line-height-heading);
  color: #20262B;
}

.testimonial-subtitle {
  font-family: 'Poppins', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-headline);
  line-height: 28px;
  color: #20262B;
  margin-bottom: 15px;
}

.testimonial-underline {
  width: 48px;
  height: 3px;
  background: #DDC17C;
   margin-top: 6px; 
  margin-bottom: 0;
}

.testimonial-content-wrapper {
  margin-top: 60px;
}

.testimonial-layout > [class*='col-'] {
  min-width: 0;
}

.testimonial-profiles {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  width: 100%;
  max-width: 100%;
}

.profile-images {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  padding: 0 4px;
}

.profile-image-wrapper {
  position: relative;
  flex: 0 0 auto;
  width: 64px;
  height: 64px;
  margin-left: -16px;
  border-radius: 50%;
  overflow: hidden;
  border: 2px solid var(--section-bg, #f5f5f0);
  box-shadow: 0 0 0 1px rgba(32, 38, 43, 0.06);
  transition: opacity 0.3s ease, transform 0.3s ease, width 0.3s ease, height 0.3s ease;
  cursor: pointer;
  z-index: 1;
}

.profile-image-wrapper:first-child {
  margin-left: 0;
}

.profile-image-wrapper.active {
  width: 76px;
  height: 76px;
  z-index: 3;
  transform: scale(1);
}

/* Tighter overlap when many avatars */
.testimonial-profiles--count-5 .profile-image-wrapper,
.testimonial-profiles--count-6 .profile-image-wrapper,
.testimonial-profiles--count-7 .profile-image-wrapper,
.testimonial-profiles--count-8 .profile-image-wrapper {
  width: 52px;
  height: 52px;
  margin-left: -14px;
}

.testimonial-profiles--count-5 .profile-image-wrapper.active,
.testimonial-profiles--count-6 .profile-image-wrapper.active,
.testimonial-profiles--count-7 .profile-image-wrapper.active,
.testimonial-profiles--count-8 .profile-image-wrapper.active {
  width: 68px;
  height: 68px;
}

.profile-image-wrapper:not(.active) {
  opacity: 0.4;
}

.profile-image-wrapper.active {
  opacity: 1;
}

.profile-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.profile-info {
  text-align: center;
}

.profile-name {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-headline-text);
  line-height: 1.2;
  color: #20262B;
  margin-bottom: 5px;
}

.profile-role {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #20262B;
}

.testimonial-quote-wrapper {
  position: relative;
  padding: 24px 32px 24px 16px;
  min-height: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

@media (min-width: 992px) {
  .testimonial-layout__profiles {
    padding-right: 12px;
  }

  .testimonial-layout__quote .testimonial-quote-wrapper {
    padding: 32px 40px 32px 24px;
  }
}

.quote-bg {
  position: absolute;
  width: 153px;
  height: 149px;
  z-index: 0;
  pointer-events: none;
  opacity: 0.8;
}

.quote-bg-top {
  top: -20px;
  left: -20px;
}

.quote-bg-bottom {
  top: 20px;
  right: 20px;
  transform: rotate(0deg);
}

.testimonial-quote-content {
  position: relative;
  z-index: 1;
}

.testimonial-quote-text {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  letter-spacing: 0%;
  vertical-align: middle;
  color: #20262B;
  margin-bottom: 25px;
  position: relative;
  z-index: 2;
}

.testimonial-rating {
  display: flex;
  align-items: center;
  gap: 10px;
}

.rating-stars {
  display: flex;
  gap: 3px;
}

.rating-stars .star {
  color: #d0af32;
  font-size: var(--font-size-section-title);
  line-height: 1;
}

.rating-number {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #20262B;
}

.testimonial-arrow-btn {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  transition: transform 0.3s ease, opacity 0.3s ease;
  display: inline-block;
}

.testimonial-arrow-btn:hover {
  transform: scale(1.1);
  opacity: 0.8;
}

.testimonial-arrow-btn:active {
  transform: scale(0.95);
}

.arrow-icon {
  width: 37px;
  height: 38px;
  display: block;
}

/* Compact mobile: stack profiles, quote, and arrow vertically */
.testimonial-section--compact-mobile .testimonial-content-wrapper {
  margin-top: 40px;
}

.testimonial-section--compact-mobile .testimonial-layout {
  row-gap: 1.5rem;
}

.testimonial-section--compact-mobile .testimonial-profiles {
  gap: 16px;
}

.testimonial-section--compact-mobile .profile-images {
  justify-content: center;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding-bottom: 4px;
}

.testimonial-section--compact-mobile .profile-images::-webkit-scrollbar {
  display: none;
}

.testimonial-section--compact-mobile .testimonial-quote-wrapper {
  padding: 16px 0 8px;
  text-align: left;
}

.testimonial-section--compact-mobile .testimonial-quote-text {
  margin-bottom: 16px;
}

.testimonial-section--compact-mobile .testimonial-rating {
  justify-content: left;
}

.testimonial-section--compact-mobile .quote-bg-bottom {
  top: 0;
  right: 0;
  opacity: 0.35;
}

@media (max-width: 991.98px) {
  .testimonial-section--compact-mobile .profile-image-wrapper {
    margin-left: -12px;
  }

  .testimonial-section--compact-mobile .profile-image-wrapper:first-child {
    margin-left: 0;
  }
}

/* Mobile Responsive for Testimonial Section */
@media (max-width: 991.98px) {
  .testimonial-section {
    padding: 80px 0;
  }

  .testimonial-title-light,
  .testimonial-title-bold {
    font-size: var(--font-size-title);
    line-height: var(--line-height-heading);
  }

  .testimonial-subtitle {
    font-size: var(--font-size-body);
    line-height: 24px;
  }

  .testimonial-content-wrapper {
    margin-top: 40px;
  }

  .testimonial-quote-wrapper {
    padding: 40px 30px;
    min-height: 250px;
  }

  .testimonial-quote-text {
    font-size: var(--font-size-body);
  }

  .profile-image-wrapper {
    width: 56px;
    height: 56px;
    margin-left: -12px;
  }

  .profile-image-wrapper.active {
    width: 64px;
    height: 64px;
  }

  .testimonial-profiles--count-5 .profile-image-wrapper,
  .testimonial-profiles--count-6 .profile-image-wrapper,
  .testimonial-profiles--count-7 .profile-image-wrapper,
  .testimonial-profiles--count-8 .profile-image-wrapper {
    width: 48px;
    height: 48px;
    margin-left: -10px;
  }

  .testimonial-profiles--count-5 .profile-image-wrapper.active,
  .testimonial-profiles--count-6 .profile-image-wrapper.active,
  .testimonial-profiles--count-7 .profile-image-wrapper.active,
  .testimonial-profiles--count-8 .profile-image-wrapper.active {
    width: 58px;
    height: 58px;
  }

  .testimonial-arrow-btn {
    margin-top: 30px;
  }
}

@media (max-width: 575.98px) {
  .testimonial-section {
    padding: 60px 0;
  }

  .testimonial-title-light,
  .testimonial-title-bold {
    font-size: var(--font-size-title);
    line-height: var(--line-height-heading);
  }

  .testimonial-subtitle {
    font-size: var(--font-size-body);
    line-height: 20px;
  }

  .testimonial-content-wrapper {
    margin-top: 30px;
  }

  .testimonial-quote-wrapper {
    padding: 30px 20px;
    min-height: 200px;
  }

  .testimonial-quote-text {
    font-size: var(--font-size-body);
  }

  .profile-image-wrapper {
    width: 48px;
    height: 48px;
    margin-left: -10px;
  }

  .profile-image-wrapper.active {
    width: 56px;
    height: 56px;
  }

  .profile-name {
    font-size: var(--font-size-headline);
  }

  .profile-role {
    font-size: var(--font-size-body);
  }

  .rating-stars .star {
    font-size: var(--font-size-body);
  }

  .rating-number {
    font-size: var(--font-size-body);
  }

  .quote-bg {
    width: 100px;
    height: 100px;
  }
}

/* SINGLE CTA SECTION (homepage) */
.cta-section {
  background: var(--section-bg-alt);
  padding: var(--spacing-section) 0;
}

.cta-section-title {
  font-family: 'Inter', 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-title);
  line-height: var(--line-height-heading);
  color: var(--dark-charcoal);
  margin: 0;
}

.cta-section-text {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  color: #555555;
  margin: 0;
}

.cta-section .btn-warning {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border: none;
  border-radius: 0;
  padding: 14px 32px;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  color: #ffffff;
  min-width: 160px;
  transition: opacity 0.2s ease;
}

.cta-section .btn-warning:hover,
.cta-section .btn-warning:focus,
.cta-section .btn-warning:active {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  color: #ffffff;
  border: none;
  opacity: 0.95;
}

.cta-section .btn-dark {
  background: var(--dark-charcoal, #131618);
  border: none;
  border-radius: 0;
  padding: 14px 32px;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  color: #ffffff;
  min-width: 160px;
  transition: background 0.2s ease, opacity 0.2s ease;
}

.cta-section .btn-dark:hover,
.cta-section .btn-dark:focus,
.cta-section .btn-dark:active {
  background: #20262B;
  color: #ffffff;
  border: none;
  opacity: 0.95;
}

/* How XOWA Works (merged section): left-aligned header */
.how-xowa-works-section .process-header {
  text-align: left;
}

.how-xowa-works-section .process-line {
  margin-left: 0;
}

/* CONTACT SECTION (10th Section) */
.contact-section {
  background: var(--section-bg-alt);
  background-image: none;
  padding: var(--spacing-section) 0;
  position: relative;
  overflow: hidden;
}

.xyzzzzzcontact-section {
  background-image: url('/images/chbg.png');
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  padding: 134px 0 134px 0;
  position: relative;
  overflow: hidden;
}

/* .contact-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.7);
  z-index: 1;
} */

.contact-section .container {
  position: relative;
  z-index: 2;
}
.xyzzzzzcontact-section .container {
  position: relative;
  z-index: 2;
}
.contact-info {
  color: var(--dark-charcoal);
}

.contact-title {
  font-family: 'Inter', 'Neue Montreal', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-title);
  line-height: var(--line-height-heading);
  color: #ffffff;
  margin-bottom: 24px;
}

.contact-intro {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  color: #ffffff;
  margin-bottom: 32px;
}

.contact-info-heading {
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-headline);
  line-height: 1.3;
  color: #ffffff;
  margin-bottom: 20px;
}

.contact-details {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.contact-detail-item {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  color: #ffffff;
}

.contact-icon {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}

.contact-form-wrapper {
  max-width: 600px;
  margin-left: auto;
  background: var(--section-bg);
  background-image: none;
  border: 1px solid var(--card-border);
  border-radius: var(--card-radius);
  padding: 40px;
  box-shadow: none;
  position: relative;
  z-index: 2;
}

/* Contact Us Page Specific Form Wrapper */
.contact-us-form-wrapper {
  background-image: url('/images/newww.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.contact-form .form-label {
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #20262B;
  margin-bottom: 8px;
}

.contact-form .form-label .required {
  color: #d0af32;
  margin-left: 3px;
}

.contact-form .form-control,
.contact-form .form-select {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #4e4e4e;
  border: 1px solid #e0e0e0;
  /* border-radius: 8px; */
  padding: 12px 16px;
  background-color: #ffffff;
  transition: border-color 0.3s ease;
}

.contact-form .form-control:focus,
.contact-form .form-select:focus {
  border-color: #d0af32;
  outline: none;
  box-shadow: 0 0 0 3px rgba(208, 175, 50, 0.1);
}

.contact-form .form-control::placeholder {
  color: #9e9e9e;
}

.phone-input-wrapper {
  display: flex;
  gap: 10px;
}

.country-select {
  width: 80px;
  flex-shrink: 0;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%234E4E4E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  padding-right: 35px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.phone-input {
  flex: 1;
}

.contact-form textarea.form-control {
  resize: vertical;
  min-height: 120px;
}

.contact-submit-btn {
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  line-height: 100%;
  letter-spacing: 0%;
  color: #ffffff;
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border: none;
  border-radius: var(--card-radius-sm);
  height: 50px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  transition: opacity 0.2s ease;
  cursor: pointer;
}

.contact-submit-btn:hover,
.contact-submit-btn:focus,
.contact-submit-btn:active {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  color: #ffffff;
  border: none;
  opacity: 0.95;
}
.lineeee-wrapper {
  margin-bottom: -80px;
  display: flex;
  justify-content: center;
}
.lineeee {
  width: 80%;
}
/* Mobile Responsive for Contact Section */
@media (max-width: 991.98px) {
  .contact-section {
    padding: 144px 0 216px 0;
  }
  .xyzzzzzcontact-section {
    padding: 81px 0 121px 0;
  }

  .contact-title {
    font-size: var(--font-size-title);
  }

  .contact-intro {
    font-size: var(--font-size-body);
  }

  .contact-info-heading {
    font-size: var(--font-size-headline);
  }

  .contact-detail-item {
    font-size: var(--font-size-body);
  }

  .contact-form-wrapper {
    padding: 30px 25px;
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
  }
  .lineeee-wrapper {
    display: none;
  }
}

@media (max-width: 575.98px) {
  .contact-section {
    padding: 136px 0 192px 0;
  }
  .xyzzzzzcontact-section {
    padding: 76px 0 107px 0;
  }
  .contact-title {
    font-size: var(--font-size-title);
  }

  .contact-intro {
    font-size: var(--font-size-body);
  }

  .contact-info-heading {
    font-size: var(--font-size-headline);
  }

  .contact-detail-item {
    font-size: var(--font-size-body);
  }

  .contact-form-wrapper {
    padding: 25px 20px;
    margin-left: auto;
    margin-right: auto;
  }

  /* Stack phone fields only on contact layouts — candidate register keeps one row */
  .contact-section .phone-input-wrapper,
  .contact-page .phone-input-wrapper {
    flex-direction: column;
  }

  .contact-section .phone-input-wrapper .country-select,
  .contact-page .phone-input-wrapper .country-select {
    width: 100%;
  }

  .contact-submit-btn {
    width: 100%;
  }
}

/* ——— Contact page (light, sharp, corporate) ——— */
.contact-page--light {
  background: #ffffff;
  background-image: none !important;
}

.contact-page--light .contact-page-main {
  position: relative;
  z-index: 0;
  padding: 152px 0 80px;
  overflow: hidden;
}

/* Plain contact layout (no hero bg) — do not apply to .contact-page-main--split */
.contact-page--light .contact-page-main:not(.contact-page-main--split) {
  background: #ffffff;
  background-image: none !important;
}

.contact-page--light .contact-page-container {
  position: relative;
  z-index: 1;
  max-width: 1200px;
}

/* Contact: hero background + two white panels (match reference layout) */
.contact-page--split.contact-page--light .contact-page-main--split {
  padding: clamp(120px, 13vw, 168px) 0 88px;
  background-color: #dfe6ee;
  background-image:
    linear-gradient(.1deg, rgba(255, 255, 255, 0.5) 0%, rgba(248, 250, 252, 0.72) 40%, rgba(255, 255, 255, 0.88) 100%),
    url('/images/contactbg.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.contact-page--split.contact-page--light .contact-sidebar-card {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  height: 100%;
  padding: 1.75rem 1.5rem 1.25rem;
  background: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  box-shadow: 0 14px 48px rgba(0, 0, 0, 0.1);
}

.contact-page--split .contact-sidebar-header {
  margin: 0;
  padding: 0;
  max-width: none;
}

.contact-page--split .contact-sidebar-header .contact-page-title {
  margin-bottom: 0;
}

.contact-page--split .contact-sidebar-header .specialized-line {
  margin-top: 8px;
}

.contact-page--split .contact-sidebar-header .contact-page-intro {
  margin-top: 0.75rem;
}

.contact-page--split .contact-info-rows {
  display: flex;
  flex-direction: column;
  border-top: 1px solid #ebebeb;
  border-bottom: 1px solid #ebebeb;
}

.contact-page--split .contact-info-row {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 14px;
  padding: 1rem 0;
  margin: 0;
  border-bottom: 1px solid #ebebeb;
  text-decoration: none;
  color: inherit;
  transition: background-color 0.2s ease;
}

.contact-page--split .contact-info-row:last-child {
  border-bottom: none;
}

.contact-page--split a.contact-info-row--link:hover {
  background: rgba(200, 169, 106, 0.06);
}

.contact-page--split .contact-info-row-icon {
  width: 42px;
  height: 42px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #ececec;
  color: #6b7280;
  font-size: 1rem;
  border-radius: 0;
  transition: background 0.2s ease, color 0.2s ease;
}

.contact-page--split a.contact-info-row--link:hover .contact-info-row-icon {
  background: rgba(200, 169, 106, 0.2);
  color: #8a7344;
}

.contact-page--split .contact-info-row-body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  padding-top: 1px;
}

.contact-page--split .contact-info-row .contact-info-card-label {
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: #777777;
}

.contact-page--split .contact-info-row .contact-info-card-value {
  font-size: 0.9375rem;
  line-height: 1.5;
  color: #111111;
  word-break: break-word;
}

.contact-page--split .contact-map-embed {
  margin-top: 0.25rem;
  border: 1px solid #e5e5e5;
  overflow: hidden;
  aspect-ratio: 1 / 1;
  max-height: min(280px, 52vw);
  background: #f3f4f6;
}

.contact-page--split .contact-map-frame {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 200px;
  border: 0;
}

.contact-page--split.contact-page--light .contact-form-card.contact-form-wrapper {
  border: 1px solid #e0e0e0;
  box-shadow: 0 14px 48px rgba(0, 0, 0, 0.1);
  padding: 2rem 1.75rem;
}

.contact-page-header {
  margin-bottom: 40px;
  max-width: 42rem;
}

.contact-page-title {
  font-family: 'Inter', 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: clamp(2rem, 4vw, 2.5rem);
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: #111111;
  margin-bottom: 0;
}

.contact-page-header .contact-page-title + .specialized-line {
  margin-top: 8px;
}

.contact-page-title-gold {
  color: #c8a96a;
}

.contact-page-intro {
  font-family: 'Manrope', sans-serif;
  font-size: 1rem;
  line-height: 1.65;
  color: #555555;
  margin: 0;
}

.contact-info-cards {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.contact-page--light .contact-info-card {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 20px;
  border-radius: 0;
  background: #ffffff;
  border: 1px solid #e5e5e5;
  text-decoration: none;
  color: inherit;
  transition: border-color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
}

.contact-page--light a.contact-info-card:hover {
  border-color: #c8a96a;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
  transform: translateY(-2px);
}

.contact-page--light .contact-info-card.is-static {
  cursor: default;
}

.contact-page--light .contact-info-card-icon {
  width: 48px;
  height: 48px;
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: #f0f0f0;
  color: #4a4a4a;
  font-size: 1.05rem;
  transition: background 0.22s ease, color 0.22s ease;
}

.contact-page--light a.contact-info-card:hover .contact-info-card-icon {
  background: rgba(200, 169, 106, 0.18);
  color: #9a7d45;
}

.contact-info-card-body {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.contact-page--light .contact-info-card-label {
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: #777777;
}

.contact-page--light .contact-info-card-value {
  font-size: 0.9375rem;
  line-height: 1.5;
  color: #111111;
  word-break: break-word;
}

.contact-page--light .contact-form-card.contact-form-wrapper {
  max-width: none;
  margin: 0;
  background: #ffffff;
  border: 1px solid #e5e5e5;
  border-radius: 0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
  padding: 32px;
  overflow: visible;
}

.contact-page--light .contact-form--light {
  position: relative;
  z-index: 1;
}

.contact-label-muted {
  font-weight: 400;
  font-size: 0.8125rem;
  color: #888888;
}

.contact-page--light .contact-field .invalid-feedback {
  display: block;
  font-size: 0.8125rem;
  margin-top: 8px;
}

.contact-page--light .contact-input-wrap {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}

.contact-page--light .contact-input-wrap > i {
  position: absolute;
  left: 14px;
  color: #9ca3af;
  font-size: 0.9rem;
  pointer-events: none;
  z-index: 2;
  transition: color 0.2s ease;
}

.contact-page--light .contact-input-wrap .form-control {
  padding-left: 40px;
}

.contact-page--light .contact-input-wrap:focus-within > i {
  color: #c8a96a;
}

.contact-page--light .contact-input-wrap--textarea {
  align-items: flex-start;
}

.contact-page--light .contact-input-wrap--textarea > i {
  top: 14px;
  left: 14px;
}

.contact-page--light .contact-input-wrap--textarea .form-control {
  padding-top: 12px;
  min-height: 144px;
}

.contact-page--light .contact-form--light .form-label {
  font-size: 0.8125rem;
  font-weight: 600;
  color: #111111;
  margin-bottom: 8px;
}

.contact-page--light .contact-form--light .form-label .required {
  color: #c8a96a;
}

.contact-page--light .contact-form--light .form-control,
.contact-page--light .contact-form--light .form-select {
  min-height: 48px;
  border-radius: 0;
  border: 1px solid #dadada;
  background: #fafafa;
  color: #222222;
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.contact-page--light .contact-form--light .form-control:focus,
.contact-page--light .contact-form--light .form-select:focus {
  border-color: #c8a96a;
  background: #ffffff;
  outline: none;
  box-shadow: 0 0 0 2px rgba(200, 169, 106, 0.2);
}

.contact-page--light .contact-form--light .form-control.is-invalid,
.contact-page--light .contact-form--light .form-select.is-invalid {
  border-color: #dc2626;
  background: #fffafa;
  box-shadow: 0 0 0 2px rgba(220, 38, 38, 0.1);
}

.contact-page--light .contact-form--light .form-control.is-valid:not(textarea) {
  border-color: #16a34a;
  background: #ffffff;
  padding-right: 2.5rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%2316a34a' d='M13.485 3.93l-6.89 6.89-3.08-3.08-1.06 1.06 4.14 4.14 7.95-7.95z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 16px 16px;
}

.contact-page--light .contact-form--light textarea.form-control.is-valid {
  border-color: #16a34a;
  background: #ffffff;
  box-shadow: 0 0 0 2px rgba(22, 163, 74, 0.12);
}

.contact-page--light .phone-input-wrapper {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 8px;
}

.contact-page--light .phone-input-wrapper .country-select {
  min-height: 48px;
  border-radius: 0;
  width: 88px;
  flex-shrink: 0;
  border: 1px solid #dadada;
  background: #fafafa;
}

.contact-page--light .phone-input-wrapper .country-select:focus {
  border-color: #c8a96a;
  background: #ffffff;
  box-shadow: 0 0 0 2px rgba(200, 169, 106, 0.2);
}

.contact-page--light .phone-input-wrapper .contact-input-wrap .phone-input {
  padding-left: 40px;
}

/* intl-tel-input — contact page phone field */
.contact-page--light .contact-phone-iti {
  width: 100%;
}

.contact-page--light .contact-phone-iti .iti {
  --iti-border-color: #dadada;
  --iti-dialcode-color: #4e4e4e;
  --iti-dropdown-bg: #ffffff;
  --iti-arrow-color: #4e4e4e;
  --iti-hover-color: rgba(200, 169, 106, 0.12);
  --iti-selected-color: rgba(200, 169, 106, 0.18);
  --iti-spacer-horizontal: 12px;
  width: 100%;
  display: block;
}

.contact-page--light .contact-phone-iti .iti__tel-input,
.contact-page--light .contact-phone-iti .iti__tel-input[type="tel"] {
  width: 100%;
  min-height: 48px;
  border-radius: 0;
  border: 1px solid #dadada;
  background: #fafafa;
  color: #222222;
  font-size: var(--font-size-body, 1rem);
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.contact-page--light .contact-phone-iti .iti__tel-input:focus {
  border-color: #c8a96a;
  background: #ffffff;
  outline: none;
  box-shadow: 0 0 0 2px rgba(200, 169, 106, 0.2);
}

.contact-page--light .contact-phone-iti .iti__country-container {
  border-radius: 0;
}

.contact-page--light .contact-phone-iti .iti__selected-country {
  border-radius: 0;
  background: #fafafa;
  border: 1px solid #dadada;
  border-right: 0;
  min-height: 48px;
  padding-left: 10px;
  padding-right: 8px;
}

.contact-page--light .contact-phone-iti .iti__selected-country:focus,
.contact-page--light .contact-phone-iti .iti__selected-country:hover {
  background: #ffffff;
}

.contact-page--light .contact-phone-iti .iti__selected-country-primary {
  padding-right: 4px;
}

.contact-page--light .contact-phone-iti .iti__dropdown-content {
  border-radius: 0;
  border-color: #dadada;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
  max-height: 240px;
}

.contact-page--light .contact-phone-iti .iti__search-input {
  border-radius: 0;
  border: 1px solid #dadada;
  padding: 8px 10px;
  margin: 8px;
  width: calc(100% - 16px);
}

.contact-page--light .contact-field--phone .iti__tel-input.is-invalid {
  border-color: #dc2626;
  background: #fffafa;
  box-shadow: 0 0 0 2px rgba(220, 38, 38, 0.1);
}

.contact-page--light .contact-field--phone .iti__tel-input.is-valid {
  border-color: #16a34a;
  background: #ffffff;
}

.contact-page--light .contact-submit-btn--light {
  width: 100%;
  border-radius: 0;
  min-height: 52px;
  background: #c8a96a;
  color: #ffffff;
  font-weight: 600;
  letter-spacing: 0.02em;
  border: none;
  transition: background 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease, opacity 0.2s ease;
}

.contact-page--light .contact-submit-btn--light:hover:not(:disabled) {
  background: #b6985a;
  box-shadow: 0 6px 20px rgba(200, 169, 106, 0.35);
  transform: translateY(-1px);
}

.contact-page--light .contact-submit-btn--light:disabled {
  opacity: 0.85;
  cursor: wait;
}

.contact-page--light .contact-submit-btn--loading {
  pointer-events: none;
}

.contact-page--light .contact-form-messages {
  border: 1px solid #e5e5e5;
  border-radius: 0;
  font-size: 0.9375rem;
  padding: 12px 16px;
}

.contact-page--light .contact-form-messages.alert-success {
  background: #f4fbf6;
  color: #166534;
  border-color: #bbf7d0;
}

.contact-page--light .contact-form-messages.alert-danger {
  background: #fffafa;
  color: #991b1b;
  border-color: #fecaca;
}

.contact-page-bottom {
  min-height: 48px;
  background: #ffffff;
}

.contact-page-reveal {
  animation: contactPageReveal 0.65s ease-out both;
}

.contact-page-reveal-delay-1 {
  animation-delay: 0.06s;
}

.contact-page-reveal-delay-2 {
  animation-delay: 0.12s;
}

@keyframes contactPageReveal {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 991.98px) {
  .contact-page--light .contact-page-main {
    padding: 120px 0 64px;
  }

  .contact-page-header {
    margin-bottom: 32px;
  }

  .contact-page--light .contact-form-card.contact-form-wrapper {
    padding: 24px;
  }
}

@media (max-width: 575.98px) {
  .contact-page--light .contact-page-main {
    padding: 104px 0 56px;
  }

  .contact-page--light .contact-form-card.contact-form-wrapper {
    padding: 20px 16px;
  }

  .contact-page--light .phone-input-wrapper {
    flex-direction: column;
  }

  .contact-page--light .phone-input-wrapper .country-select {
    width: 100%;
  }
}

/* FAQ SECTION (11th Section) */
.faq-section {
  padding: 100px 0;
  background-color: #ffffff;
}

.faq-header {
  margin-bottom: 60px;
}

.faq-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #20262B;
  margin-bottom: 20px;
}

.faq-subtitle {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-headline);
  line-height: 1.6;
  color: #4e4e4e;
  max-width: 700px;
  margin: 0 auto;
}

.faq-container {
  max-width: 900px;
  margin: 0 auto;
}

.faq-item {
  border-bottom: 1px solid #e0e0e0;
  transition: all 0.3s ease;
}

.faq-question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 25px 0;
  cursor: pointer;
  gap: 15px;
  transition: all 0.3s ease;
}

.faq-question:hover {
  opacity: 0.8;
}

.faq-number {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-headline);
  line-height: 1.2;
  color: #20262B;
  flex-shrink: 0;
  min-width: 30px;
}

.faq-question-text {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-headline);
  line-height: 1.3;
  color: #20262B;
  flex: 1;
  text-align: left;
}

.faq-toggle {
  width: 32px;
  height: 32px;
  border: none;
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  flex-shrink: 0;
  transition: all 0.3s ease;
  position: relative;
  background: #4e4e4e;
  color: #ffffff;
}

.faq-item.active .faq-toggle {
  background: #d0af32;
  color: #20262B;
}

.faq-icon-minus,
.faq-icon-plus {
  font-family: 'Arial', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-headline);
  line-height: 1;
  position: absolute;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.faq-icon-minus {
  opacity: 0;
  transform: rotate(0deg);
}

.faq-icon-plus {
  opacity: 1;
  transform: rotate(0deg);
}

.faq-item.active .faq-icon-minus {
  opacity: 1;
  transform: rotate(0deg);
}

.faq-item.active .faq-icon-plus {
  opacity: 0;
  transform: rotate(90deg);
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease, padding 0.3s ease;
  padding: 0 0 0 45px;
}

.faq-item.active .faq-answer {
  max-height: 500px;
  padding: 0 0 25px 45px;
}

.faq-answer p {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.6;
  color: #4e4e4e;
  margin: 0;
}

/* Mobile Responsive for FAQ Section */
@media (max-width: 991.98px) {
  .faq-section {
    padding: 80px 0;
  }

  .faq-title {
    font-size: var(--font-size-title);
  }

  .faq-subtitle {
    font-size: var(--font-size-body);
  }

  .faq-question {
    padding: 20px 0;
  }

  .faq-number,
  .faq-question-text {
    font-size: var(--font-size-headline);
  }

  .faq-answer {
    padding-left: 38px;
  }

  .faq-item.active .faq-answer {
    padding-left: 38px;
  }
}

@media (max-width: 575.98px) {
  .faq-section {
    padding: 60px 0;
  }

  .faq-title {
    font-size: var(--font-size-title);
  }

  .faq-subtitle {
    font-size: var(--font-size-body);
  }

  .faq-question {
    padding: 15px 0;
    gap: 10px;
  }

  .faq-number {
    min-width: 25px;
    font-size: var(--font-size-body);
  }

  .faq-question-text {
    font-size: var(--font-size-body);
  }

  .faq-toggle {
    width: 28px;
    height: 28px;
  }

  .faq-icon-minus,
  .faq-icon-plus {
    font-size: var(--font-size-headline);
  }

  .faq-answer {
    padding-left: 35px;
  }

  .faq-item.active .faq-answer {
    padding-left: 35px;
    padding-bottom: 20px;
  }

  .faq-answer p {
    font-size: var(--font-size-body);
  }
}

/* FOOTER SECTION */
.footer-section {
  background-color: #ffffff;
  background-image: url('/images/footerbg.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 80px 0 30px;
  position: relative;
  color: #4e4e4e;
}

.footer-company {
  color: #4e4e4e;
}

.footer-logo {
  display: flex;
  align-items: center;
}

.footer-logo-img {
  height: 50px;
  width: auto;
  object-fit: contain;
}

.footer-tagline {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-footer-links) !important;
  line-height: 1.6;
  color: #4e4e4e;
  margin: 0;
}

.footer-social {
  display: flex;
  gap: 12px;
}

.social-icon {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: transform 0.3s ease, opacity 0.3s ease;
  border-radius: 0;
}

.social-icon:hover {
  transform: translateY(-2px);
  opacity: 0.9;
}

.social-icon-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.footer-links {
  margin-bottom: 30px;
}

.footer-heading {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-body);
  line-height: 1.3;
  color: #20262B;
  margin-bottom: 20px;
}

.footer-link-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-link-list li {
  margin-bottom: 12px;
}

.footer-link-list a {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-footer-links) !important;
  line-height: 1.5;
  color: #4e4e4e;
  text-decoration: none;
  transition: color 0.3s ease;
}

.footer-link-list a:hover {
  color: #d0af32;
}

.footer-contact {
  margin-bottom: 30px;
}

.contact-details-list {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.contact-detail-item-footer {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.contact-icon-footer {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  object-fit: contain;
  display: block;
}

.contact-text {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.footer-contact .contact-label {
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-footer-links) !important;
  line-height: 1.4;
  color: #4e4e4e;
}

.footer-contact .contact-value {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-footer-links) !important;
  line-height: 1.5;
  color: #4e4e4e;
}

.footer-bottom {
  margin-top: 10px;
}

.footer-divider {
  height: 1px;
  background-color: #e0e0e0;
  margin-bottom: 15px;
}

.footer-bottom-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
}

.footer-copyright p {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-footer-links) !important;
  line-height: 1.5;
  color: #4e4e4e;
  margin: 0;
}

.footer-policies {
  display: flex;
  align-items: center;
  gap: 8px;
}

.footer-policies a {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-footer-links) !important;
  line-height: 1.5;
  color: #4e4e4e;
  text-decoration: none;
  transition: color 0.3s ease;
}

.footer-policies a:hover {
  color: #d0af32;
}

.policy-separator {
  color: #4e4e4e;
  font-size: var(--font-size-body);
}

/* Mobile Responsive for Footer Section */
@media (max-width: 991.98px) {
  .footer-section {
    padding: 60px 0 25px;
  }

  .footer-logo {
    margin-bottom: 20px;
  }

  .footer-heading {
    font-size: var(--font-size-body);
    margin-bottom: 15px;
  }

  .footer-link-list a,
  .footer-tagline {
    font-size: var(--font-size-footer-links) !important;
  }

  .footer-contact .contact-label,
  .footer-contact .contact-value {
    font-size: var(--font-size-footer-links) !important;
  }

  .footer-bottom-content {
    flex-direction: column;
    text-align: center;
    gap: 15px;
  }
}

@media (max-width: 575.98px) {
  .footer-section {
    padding: 50px 0 20px;
  }

  .logo-main {
    font-size: var(--font-size-headline);
  }

  .logo-sub {
    font-size: var(--font-size-body);
  }

  .footer-tagline {
    font-size: var(--font-size-footer-links);
  }

  .social-icon {
    width: 40px;
    height: 40px;
  }

  .footer-heading {
    font-size: var(--font-size-body);
  }

  .footer-link-list a {
    font-size: var(--font-size-footer-links);
  }

  .footer-contact .contact-label {
    font-size: var(--font-size-footer-links) !important;
  }

  .footer-contact .contact-value {
    font-size: var(--font-size-footer-links) !important;
  }

  .footer-copyright p,
  .footer-policies a {
    font-size: var(--font-size-body);
  }

  .footer-policies {
    flex-direction: column;
    gap: 5px;
  }

  .policy-separator {
    display: none;
  }
}

/* ABOUT-US HERO SECTION: full viewport height, no overlay */
.about-hero-section {
  background-image: url('/images/about-cover1.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  min-height: 100vh;
  min-height: 100dvh;
  padding: 120px 0 80px;
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
}

/* Job search hero: landscape image */
.placement-hero.job-search-hero-section {
  background-image: url('/images/landscape/6.png');
  background-size: cover;
  background-position: center;
}

/* Candidate search hero: landscape image */
.candidate-search-hero-section {
  background-image: url('/images/landscape/10.png');
  background-size: cover;
  background-position: center;
}

.about-hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 1;
}

.about-hero-content {
  position: relative;
  z-index: 2;
  color: #ffffff;
}

.about-hero-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #ffffff;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.about-hero-title-line1 {
  display: block;
}

.about-hero-title-line2 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
}

.about-hero-solutions {
  background: #d0af32;
  color: #ffffff;
  padding: 8px 20px;
  display: inline-block;
  transform: skewX(-5deg);
}

.about-hero-text {
  max-width: 830px;
  margin: 0 auto;
}

.about-hero-paragraph {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.8;
  color: #ffffff;
  margin: 0;
}

.about-hero-triangle {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 300px;
  height: 200px;
  background: #d0af32;
  clip-path: polygon(100% 0%, 0% 100%, 100% 100%);
  z-index: 2;
}

/* Mobile Responsive for About-Us Hero Section */
@media (max-width: 991.98px) {
  .about-hero-section {
    min-height: 100vh;
    padding: 100px 0 60px;
  }

  .about-hero-title {
    font-size: var(--font-size-title);
  }

  .about-hero-paragraph {
    font-size: var(--font-size-body);
    line-height: 1.7;
  }

  .about-hero-triangle {
    width: 200px;
    height: 150px;
  }
}

@media (max-width: 575.98px) {
  .about-hero-section {
    min-height: 100vh;
    padding: 80px 0 48px;
  }

  .about-hero-title {
    font-size: var(--font-size-title);
  }

  .about-hero-title-line2 {
    flex-direction: column;
    align-items: center;
    gap: 5px;
  }

  .about-hero-solutions {
    padding: 6px 15px;
    transform: skewX(-3deg);
  }

  .about-hero-paragraph {
    font-size: var(--font-size-body);
    line-height: 1.6;
  }

  .about-hero-triangle {
    width: 150px;
    height: 100px;
  }
}

/* WHO WE ARE SECTION (About 3rd Section) */
.who-we-are-section {
  position: relative;
  overflow: hidden;
  background-color: #ffffff;
  margin: 150px 0;
}

.who-we-are-content {
  /* background-color: #ffffff; */
  padding: 0px 80px;
  height: 100%;
  display: flex;
  /* align-items: center; */
  position: relative;
  z-index: 2;
}

.who-we-are-inner {
  max-width: 600px;
}

.who-we-are-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: clamp(1.75rem, 4vw, 2.25rem);
  line-height: 1.2;
  color: #1a1a1a;
  margin: 0 0 0.5rem 0;
  text-align: left;
}

.who-we-are-accent-line {
  width: 48px;
  height: 3px;
  background: linear-gradient(90deg, #DDC17C, #d0af32);
  margin-left: 0;
  margin-right: auto;
   margin-top: 6px; 
  margin-bottom: 0;
}

.who-we-are-columns {
  margin-top: 20px;
}

.who-we-are-column {
  padding-right: 2rem;
  padding-bottom: 1.5rem;
}

.who-we-are-column:last-child {
  padding-right: 0;
}

.who-we-are-subheading {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: clamp(1.125rem, 2.5vw, 1.35rem);
  line-height: 1.3;
  color: #1a1a1a;
  margin: 0 0 0.75rem 0;
}

.who-we-are-subtitle {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 300;
  font-size: var(--font-size-title);
  line-height: 1.3;
  color: #20262B;
  margin-bottom: 20px;
}

.who-we-are-line {
  width: 200px;
  height: 2px;
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  margin-bottom: 40px;
  position: relative;
}

.who-we-are-line::after {
  content: '';
  position: absolute;
  right: -80px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  width: 2px;
  height: 300px;
  background: linear-gradient(180deg, #d0af32 25.48%, #DDC17C 100%);
  z-index: 1;
}

.who-we-are-section .who-we-are-text {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.7;
  color: #4a4a4a;
  margin: 0;
}

.who-we-are-image-wrapper {
  width: 100%;
  height: 100%;
  min-height: 600px;
  position: relative;
  overflow: visible;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

.who-we-are-image {
  width: 100%;
  max-width: 867px;
  height: 489px;
  margin-top: 115px;
  margin-left: -190px;
}
.dfhkwefjs {
  width: 130%;
}

.who-we-are-diagonal {
  position: absolute;
  top: 0;
  left: 50%;
  width: 2px;
  height: 120%;
  background: linear-gradient(
    180deg,
    transparent 0%,
    #d0af32 10%,
    #DDC17C 90%,
    transparent 100%
  );
  transform: translateX(-50%) translateY(-10%) rotate(-45deg);
  transform-origin: center;
  z-index: 3;
  pointer-events: none;
}

/* Mobile Responsive for Who We Are Section */
@media (max-width: 991.98px) {
  .who-we-are-column {
    padding-right: 0;
  }

  .who-we-are-content {
    padding: 60px 40px;
  }

  .who-we-are-title {
    font-size: var(--font-size-title);
  }

  .who-we-are-subtitle {
    font-size: var(--font-size-headline);
  }

  .who-we-are-text {
    font-size: var(--font-size-body);
  }

  .who-we-are-image-wrapper {
    min-height: 400px;
  }

  .who-we-are-image {
    width: 100%;
    max-width: 867px;
    height: auto;
    margin-top: 60px;
    margin-left: 0px;
  }

  .dfhkwefjs {
    width: 100% !important;
  }

  .who-we-are-line::after {
    display: none;
  }

  .who-we-are-diagonal {
    display: none;
  }
}

@media (max-width: 575.98px) {
  .who-we-are-content {
    padding: 50px 30px;
  }

  .who-we-are-title {
    font-size: var(--font-size-title);
  }

  .who-we-are-subtitle {
    font-size: var(--font-size-headline);
  }

  .who-we-are-text {
    font-size: var(--font-size-body);
    line-height: 1.6;
  }

  .who-we-are-image-wrapper {
    min-height: 300px;
  }

  .who-we-are-image {
    width: 100%;
    max-width: 867px;
    height: auto;
    margin-top: 40px;
  }

  .dfhkwefjs {
    width: 100% !important;
  }

  .who-we-are-line {
    width: 150px;
  }
}

/* About page: alignment to match Figma design */
.page-about .placement-hero-container,
.page-about .who-we-are-section .container,
.page-about .our-values-container,
.page-about .impact-content-white .container,
.page-about .impact-over-video-content,
.page-about .testimonial-section .container {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
}

.page-about .our-values-container {
  padding-left: 26px !important;
  padding-right: 12px !important;
}

.page-about .our-values-section .our-values-header {
  padding: 0;
  margin: 0;
  text-align: left;
}
.page-about .our-values-section .our-values-header .our-values-title {
  padding: 0;
  margin: 0;
}
.page-about .our-values-section .our-values-header .our-values-accent-line {
  padding: 0;
  margin-top: 6px;
  margin-bottom: 0;
}

@media (max-width: 991.98px) {
  .page-about .our-values-container {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
}

.page-about .testimonial-subtitle {
  display: none;
}

@media (min-width: 992px) {
  .page-about .testimonial-profiles {
    align-items: flex-start;
  }

  .page-about .profile-images {
    justify-content: flex-start;
  }
}

.page-about .testimonial-header .testimonial-underline {
  margin-left: 0;
  margin-right: auto;
}

/* MISSION & VISION SECTION (About 4th Section) */
.mission-vision-section {
  background-image: url('/images/a4bg.png');
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  padding: 200px 0 160px 0;
  min-height: 800px;
  position: relative;
  overflow: hidden;
}

.mission-vision-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.7);
  z-index: 1;
}

.mission-vision-triangle-top {
  position: absolute;
  top: 0;
  left: 0;
  width: 300px;
  height: 300px;
  background: #d0af32;
  clip-path: polygon(0 0, 100% 0, 0 100%);
  z-index: 2;
  border-right: 2px solid #ffffff;
}

.mission-vision-triangle-bottom {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 250px;
  height: 250px;
  background: #d0af32;
  clip-path: polygon(100% 0, 100% 100%, 0 100%);
  z-index: 2;
  border-left: 2px solid #ffffff;
}

.mission-vision-content {
  position: relative;
  z-index: 3;
  color: #ffffff;
  padding: 40px 0;
}

.mission-vision-title {
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #d0af32;
  margin-bottom: 20px;
}

.mission-vision-subtitle {
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-title);
  line-height: 1.3;
  color: #ffffff;
  margin-bottom: 30px;
}

.mission-vision-text-wrapper {
  display: flex;
  gap: 20px;
  align-items: flex-start;
}

.mission-vision-line {
  width: 2px;
  height: 100%;
  background-color: #ffffff;
  flex-shrink: 0;
  min-height: 120px;
}

.mission-vision-text {
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-headline);
  line-height: 1.8;
  color: #ffffff;
  margin: 0;
  flex: 1;
}

/* Mobile Responsive for Mission & Vision Section */
@media (max-width: 991.98px) {
  .mission-vision-section {
    padding: 150px 0;
    min-height: 600px;
  }

  .mission-vision-title {
    font-size: var(--font-size-title);
  }

  .mission-vision-subtitle {
    font-size: var(--font-size-headline);
  }

  .mission-vision-text {
    font-size: var(--font-size-body);
  }

  .mission-vision-triangle-top {
    width: 200px;
    height: 200px;
  }

  .mission-vision-triangle-bottom {
    width: 150px;
    height: 150px;
  }
}

@media (max-width: 575.98px) {
  .mission-vision-section {
    padding: 150px 0;
    min-height: 500px;
  }

  .mission-vision-title {
    font-size: var(--font-size-title);
  }

  .mission-vision-subtitle {
    font-size: var(--font-size-headline);
  }

  .mission-vision-text {
    font-size: var(--font-size-body);
    line-height: 1.6;
  }

  .mission-vision-triangle-top {
    width: 150px;
    height: 150px;
  }

  .mission-vision-triangle-bottom {
    width: 120px;
    height: 120px;
  }

  .mission-vision-line {
    min-height: 100px;
  }
}

/* OUR APPROACH SECTION (About 5th Section) */
.approach-section {
  background-color: #ffffff;
  padding: 100px 0;
}

.approach-header {
  margin-bottom: 150px !important;
}

.approach-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #20262B;
  margin-bottom: 20px;
}

.approach-slogan {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  line-height: 1.3;
  color: #20262B;
  margin-bottom: 15px;
}

.approach-subtitle {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-headline);
  line-height: 1.6;
  color: #20262B;
  margin: 0;
}

.approach-steps {
  position: relative;
}

.approach-step {
  text-align: center;
  position: relative;
  padding-bottom: 30px;
}

.approach-step-icon-wrapper {
  width: 129px;
  height: 114px;
  margin: 0 auto 30px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.approach-step-icon {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.approach-step-connector {
  position: absolute;
  top: 57px;
  left: calc(50% + 64.5px);
  right: calc(-50% + 64.5px);
  height: 2px;
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  z-index: 1;
}

.approach-step:last-child .approach-step-connector {
  display: none;
}

.approach-step-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-headline);
  line-height: 1.3;
  color: #20262B;
  margin-bottom: 10px;
}

.approach-step-description {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #20262B;
  margin: 0;
}

/* Mobile Responsive for Approach Section */
@media (max-width: 991.98px) {
  .approach-section {
    padding: 80px 0;
  }

  .approach-title {
    font-size: var(--font-size-title);
  }

  .approach-slogan {
    font-size: var(--font-size-headline);
  }

  .approach-subtitle {
    font-size: var(--font-size-body);
  }

  .approach-header {
    margin-bottom: 60px;
  }

  .approach-step-icon-wrapper {
    width: 110px;
    height: 97px;
    margin-bottom: 25px;
  }

  .approach-step-connector {
    display: none;
  }

  .approach-step-title {
    font-size: var(--font-size-headline);
  }

  .approach-step-description {
    font-size: var(--font-size-body);
  }
}

@media (max-width: 575.98px) {
  .approach-section {
    padding: 60px 0;
  }

  .approach-title {
    font-size: var(--font-size-title);
  }

  .approach-slogan {
    font-size: var(--font-size-headline);
  }

  .approach-subtitle {
    font-size: var(--font-size-body);
  }

  .approach-header {
    margin-bottom: 40px;
  }

  .approach-step-icon-wrapper {
    width: 100px;
    height: 88px;
    margin-bottom: 20px;
  }

  .approach-step-title {
    font-size: var(--font-size-body);
  }

  .approach-step-description {
    font-size: var(--font-size-body);
  }
}

/* FAQ CARDS SECTION (FAQ 2nd Section) */
.faq-cards-section {
  background-color: #ffffff;
  padding: 100px 0;
}

.faq-card {
  background-color: #20262B;
  border: 2px solid;
  border-image-source: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border-image-slice: 1;
  padding: 40px 30px;
  max-width: 310.8321838378906px;
  max-height: 222.6466522216797px;
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: center;
  text-align: center;
  position: relative;
  clip-path: polygon(
    0% 0%,

    /* top-left (square) */ 87% 0%,
    /* top-right inner horizontal cut */ 100% 18%,

    /* top-right inner vertical cut */ 100% 100%,

    /* bottom-right (square) */ 18% 100%,
    /* bottom-left inner horizontal cut */ 0% 87%
      /* bottom-left inner vertical cut */
  );
}

.faq-card-icon {
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.faq-card-icon img {
  width: 45px;
  height: 45px;
  object-fit: contain;
}

.faq-card-title {
  font-family: 'Manrope', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-section-title);
  line-height: 1.3;
  color: #ffffff;
  margin-bottom: 12px;
}

.faq-card-description {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #ffffff;
  margin: 0;
  text-align: left;
}

/* Mobile Responsive for FAQ Cards Section */
@media (max-width: 991.98px) {
  .faq-cards-section {
    padding: 80px 0;
  }

  .faq-cards-section .row {
    justify-content: center;
  }

  .faq-card {
    min-height: 250px;
    padding: 35px 25px;
    margin-bottom: 20px;
    margin-left: auto;
    margin-right: auto;
  }

  .faq-card-title {
    font-size: var(--font-size-section-title);
  }

  .faq-card-description {
    font-size: var(--font-size-body);
  }
}

@media (max-width: 575.98px) {
  .faq-cards-section {
    padding: 60px 0;
  }

  .faq-cards-section .row {
    justify-content: center;
  }

  .faq-card {
    min-height: 220px;
    padding: 30px 20px;
    margin-left: auto;
    margin-right: auto;
  }

  .faq-card-icon img {
    width: 40px;
    height: 40px;
  }

  .faq-card-title {
    font-size: var(--font-size-section-title);
  }

  .faq-card-description {
    font-size: var(--font-size-body);
  }
}

/* FAQS CATEGORIES SECTION */
.faqs-categories-section {
  background-color: #ffffff;
  padding: 100px 0;
  max-width: 743px;
  margin-left: auto;
  margin-right: auto;
}

.faqs-categories-section .col-12 {
  margin-bottom: 80px;
}

.faqs-categories-section .col-12:last-child {
  margin-bottom: 0;
}

.faqs-category-wrapper {
  border: 1px solid #d0af32;
  padding: 40px 30px;
  background-color: #ffffff;
}

.faqs-category-title {
  font-family: 'Manrope', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  line-height: 1.3;
  color: #171717;
  margin-bottom: 20px;
}

.faqs-category-content {
  display: flex;
  flex-direction: column;
}

.faqs-category-item {
  position: relative;
}

.faqs-category-question {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 0;
  cursor: pointer;
  user-select: none;
}

.faqs-question-text {
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-headline);
  line-height: 1.5;
  color: #171717;
  flex: 1;
}

.faqs-chevron {
  width: 20px;
  height: 20px;
  transition: transform 0.3s ease;
  margin-left: 15px;
  flex-shrink: 0;
  display: block;
}

.faqs-category-item.active .faqs-chevron {
  transform: rotate(180deg);
}

.faqs-category-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease, padding 0.3s ease;
  padding: 0 0;
}

.faqs-category-item.active .faqs-category-answer {
  max-height: 500px;
  padding: 0 0 20px 0;
}

.faqs-category-answer p {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.6;
  color: #171717;
  margin: 0;
}

.faqs-category-divider {
  height: 1px;
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  margin: 0;
}

.faqs-category-item:last-child .faqs-category-divider {
  display: none;
}

/* Mobile Responsive for FAQ Categories Section */
@media (max-width: 991.98px) {
  .faqs-categories-section {
    padding: 80px 0;
  }

  .faqs-categories-section .col-12 {
    margin-bottom: 60px;
  }

  .faqs-category-wrapper {
    padding: 35px 25px;
  }

  .faqs-category-title {
    font-size: var(--font-size-title);
  }

  .faqs-question-text {
    font-size: var(--font-size-headline);
  }

  .faqs-category-answer p {
    font-size: var(--font-size-body);
  }
}

@media (max-width: 575.98px) {
  .faqs-categories-section {
    padding: 60px 0;
  }

  .faqs-categories-section .col-12 {
    margin-bottom: 50px;
  }

  .faqs-category-wrapper {
    padding: 30px 20px;
  }

  .faqs-category-title {
    font-size: var(--font-size-headline);
    margin-bottom: 25px;
  }

  .faqs-category-question {
    padding: 15px 0;
  }

  .faqs-question-text {
    font-size: var(--font-size-body);
  }

  .faqs-chevron {
    font-size: var(--font-size-body);
  }

  .faqs-category-answer p {
    font-size: var(--font-size-body);
  }
}

/* ========== FAQ PAGE (premium support centre) ========== */
.faq-page-hero {
  background-image: url('/images/landscape/10.png');
  background-size: cover;
  background-position: center;
  min-height: 400px;
  padding: 80px 0;
  display: flex;
  align-items: center;
  position: relative;
}

.faq-page-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(0,0,0,0.72) 0%, rgba(0,0,0,0.5) 100%);
  z-index: 1;
}

.faq-page-hero-title {
  font-family: 'Poppins', 'Inter', sans-serif;
  font-weight: 700;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  color: #fff;
  margin: 0 0 0.75rem 0;
}

.faq-page-hero-sub {
  font-family: 'Inter', sans-serif;
  font-size: 1.125rem;
  color: rgba(255,255,255,0.95);
  margin: 0 0 1.5rem 0;
  max-width: 560px;
}

.faq-page-hero-actions .faq-btn-primary {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  color: #fff;
  border: none;
  border-radius: 0;
  padding: 12px 24px;
  font-weight: 600;
  font-size: var(--font-size-button);
  transition: opacity 0.2s, box-shadow 0.2s;
}

.faq-page-hero-actions .faq-btn-primary:hover {
  color: #fff;
  opacity: 0.95;
  box-shadow: 0 4px 14px rgba(208, 175, 50, 0.4);
}

/* Search bar */
.faq-search-section {
  background: #fff;
  border-bottom: 1px solid #eee;
}

.faq-search-wrap {
  position: relative;
  max-width: 560px;
  margin: 0 auto;
}

.faq-search-icon {
  position: absolute;
  left: 18px;
  top: 50%;
  transform: translateY(-50%);
  color: #999;
  font-size: 1rem;
  pointer-events: none;
}

.faq-search-input {
  width: 100%;
  padding: 14px 18px 14px 46px;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  font-family: 'Inter', sans-serif;
  font-size: 1rem;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.faq-search-input:focus {
  outline: none;
  border-color: #DDC17C;
  box-shadow: 0 0 0 3px rgba(182, 147, 21, 0.12);
}

/* Section title */
.faq-page-section-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 1.5rem;
  color: #1a1a1a;
  margin: 0;
}

/* Popular cards */
.faq-popular-section {
  background: #fafafa;
}

.faq-popular-card {
  border-left: 4px solid #DDC17C;
}

/* Accordion cards */
.faq-accordion-card {
  background: #fff;
  border-radius: 0;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
  margin-bottom: 12px;
  border: 1px solid #eee;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.faq-accordion-card:hover {
  border-color: rgba(182, 147, 21, 0.4);
  box-shadow: 0 4px 16px rgba(0,0,0,0.08);
}

.faq-accordion-card.active {
  border-color: #DDC17C;
  box-shadow: 0 4px 16px rgba(182, 147, 21, 0.15);
}

.faq-card-q {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 20px;
  cursor: pointer;
  user-select: none;
  gap: 12px;
}

.faq-card-q-text {
  font-family: 'Poppins', 'Inter', sans-serif;
  font-weight: 600;
  font-size: 1rem;
  color: #1a1a1a;
  flex: 1;
}

.faq-card-chevron {
  color: #DDC17C;
  font-size: 0.875rem;
  transition: transform 0.25s ease;
  flex-shrink: 0;
}

.faq-accordion-card.active .faq-card-chevron {
  transform: rotate(180deg);
}

.faq-card-a {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}

.faq-accordion-card.active .faq-card-a {
  max-height: 2000px;
}

.faq-card-a p {
  margin: 0;
  padding: 0 20px 18px 20px;
  font-family: 'Inter', sans-serif;
  font-size: var(--font-size-body);
  line-height: 1.6;
  color: #555;
  border-top: 1px solid #f0f0f0;
  padding-top: 14px;
  margin-top: 0;
}

/* Tabs */
.faq-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}

.faq-tab {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  border: 1px solid #e0e0e0;
  background: #fff;
  border-radius: 0;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  color: #555;
  cursor: pointer;
  transition: all 0.2s;
}

.faq-tab:hover {
  border-color: #DDC17C;
  color: #1a1a1a;
}

.faq-tab.active {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border-color: #DDC17C;
  color: #fff;
}

.faq-accordion-section {
  background: #fff;
}

.faq-no-results {
  font-family: 'Inter', sans-serif;
}

.faq-btn-outline {
  background: transparent;
  border: 2px solid #DDC17C;
  color: #DDC17C;
  border-radius: 0;
  padding: 10px 20px;
  font-weight: 600;
  font-size: var(--font-size-button);
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}

.faq-btn-outline:hover {
  background: #DDC17C;
  color: #fff;
}

/* Contact section */
.faq-contact-section {
  background: #fafafa;
}

.faq-contact-card {
  background: #fff;
  border-radius: 0;
  padding: 28px 24px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}

.faq-contact-card-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-section-title);
  color: #1a1a1a;
  margin: 0 0 1rem 0;
}

.faq-contact-item {
  margin: 0 0 12px 0;
  font-family: 'Inter', sans-serif;
  font-size: 1rem;
  color: #333;
}

.faq-contact-item:last-child {
  margin-bottom: 0;
}

.faq-contact-item i {
  color: #DDC17C;
  width: 20px;
  margin-right: 8px;
}

.faq-contact-item a {
  color: #1a1a1a;
  text-decoration: none;
}

.faq-contact-item a:hover {
  color: #DDC17C;
}

.faq-contact-form-card {
  background: #fff;
  border-radius: 0;
  padding: 28px 24px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}

.faq-contact-form-card .form-control {
  border-radius: 0;
  border: 1px solid #e0e0e0;
}

.faq-contact-form-card .form-control:focus {
  border-color: #DDC17C;
  box-shadow: 0 0 0 3px rgba(182, 147, 21, 0.12);
}

@media (max-width: 767.98px) {
  .faq-page-hero {
    min-height: 320px;
    padding: 60px 0;
  }
  .faq-tabs {
    flex-direction: column;
  }
  .faq-tab {
    width: 100%;
    justify-content: center;
  }
}

/* JOB SEARCH INTERFACE (Job List Hero Section) */
.job-search-container {
  margin-top: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.job-search-form {
  display: flex;
  align-items: center;
  gap: 15px;
  background-color: #ffffff;
  border-radius: 0;
  padding: 15px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  max-width: 900px;
  width: 100%;
  flex-wrap: wrap;
}

.job-search-field {
  position: relative;
  flex: 1;
  min-width: 180px;
}

.job-search-icon {
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  opacity: 0.5;
  pointer-events: none;
}

.job-search-input {
  width: 100%;
  padding: 12px 15px 12px 45px;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #171717;
  background-color: #ffffff;
  transition: border-color 0.3s ease;
}
.dhbciewjnaowa {
  max-width: unset !important;
  width: 100% !important;
  margin: unset !important;
}

.job-search-input::placeholder {
  color: #9e9e9e;
}

.job-search-input:focus {
  outline: none;
  border-color: #d0af32;
}

.job-search-select {
  width: 100%;
  padding: 12px 40px 12px 15px;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #9e9e9e;
  background-color: #ffffff;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%239E9E9E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 15px center;
  cursor: pointer;
  transition: border-color 0.3s ease;
}

.job-search-select:focus {
  outline: none;
  border-color: #d0af32;
  color: #171717;
}

.job-search-select option {
  color: #171717;
}

.job-search-btn {
  padding: 12px 40px;
  border: none;
  border-radius: 0;
  background: linear-gradient(0deg, #dec17d, #dec17d),
    linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  color: #ffffff;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  cursor: pointer;
  transition: opacity 0.3s ease;
  white-space: nowrap;
  flex-shrink: 0;
}

.job-search-btn:hover {
  opacity: 0.9;
}

/* Mobile Responsive for Job Search Form */
@media (max-width: 991.98px) {
  .job-search-form {
    flex-direction: column;
    gap: 12px;
  }

  .job-search-field {
    width: 100%;
    min-width: 100%;
  }

  .job-search-btn {
    width: 100%;
  }
}

@media (max-width: 575.98px) {
  .job-search-container {
    margin-top: 30px;
  }

  .job-search-form {
    padding: 12px;
    gap: 10px;
  }

  .job-search-input,
  .job-search-select {
    padding: 10px 12px 10px 40px;
    font-size: var(--font-size-body);
  }

  .job-search-icon {
    width: 18px;
    height: 18px;
    left: 12px;
  }

  .job-search-select {
    background-position: right 12px center;
  }

  .job-search-btn {
    padding: 10px 30px;
    font-size: var(--font-size-button);
  }
}

/* JOB SEARCH FILTER SECTION (Job List Section Second) */
.job-search-section {
  background-color: #ffffff;
  padding: 100px 0;
}

.job-search-header {
  margin-bottom: 30px;
}

.job-search-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #20262B;
  margin: 0;
}

.job-search-line {
  width: 100px;
  height: 2px;
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  margin: 0;
}

.job-search-description {
  max-width: 800px;
  margin: 0;
}

.job-search-description p {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.6;
  color: #4e4e4e;
  margin: 0;
  text-align: left;
}

.job-search-filter-container {
  margin-top: 40px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
}

.job-search-filter-form {
  display: flex;
  align-items: center;
  width: 100%;
  flex-wrap: wrap;
}

.job-search-filter-field {
  position: relative;
  flex: 1;
  min-width: 150px;
  max-width: 250px;
}

.job-search-filter-icon {
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  opacity: 0.5;
  pointer-events: none;
}

.job-search-filter-input {
  width: 100%;
  padding: 12px 15px 12px 45px;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #171717;
  background-color: #ffffff;
  transition: border-color 0.3s ease;
}

.job-search-filter-input::placeholder {
  color: #9e9e9e;
}

.job-search-filter-input:focus {
  outline: none;
  border-color: #d0af32;
}

.job-search-filter-select {
  width: 100%;
  padding: 12px 40px 12px 15px;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #9e9e9e;
  background-color: #ffffff;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%239E9E9E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 15px center;
  cursor: pointer;
  transition: border-color 0.3s ease;
}

.job-search-filter-select:focus {
  outline: none;
  border-color: #d0af32;
  color: #171717;
}

.job-search-filter-select option {
  color: #171717;
}

.job-search-filter-btn {
  padding: 12px 30px;
  border: none;
  border-radius: 0;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  cursor: pointer;
  transition: opacity 0.3s ease;
  white-space: nowrap;
  flex-shrink: 0;
}

.job-search-filter-btn-primary {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  color: #ffffff;
}

.job-search-filter-btn-primary:hover {
  opacity: 0.9;
}

.job-search-filter-btn-secondary {
  background-color: #171717;
  color: #ffffff;
}

.job-search-filter-btn-secondary:hover {
  opacity: 0.9;
}

/* 1440px Breakpoint - Keep all elements on same line */
@media (min-width: 1440px) {
  .job-search-filter-form {
    flex-wrap: nowrap;
    /* gap: 8px; */
  }

  .job-search-filter-field {
    min-width: 130px;
    max-width: 250px;
    flex: 1 1 auto;
  }

  .job-search-filter-btn {
    flex-shrink: 0;
    padding: 12px 20px;
  }
}

/* Mobile Responsive for Job Search Filter Section */
@media (max-width: 991.98px) {
  .job-search-section {
    padding: 80px 0;
  }

  .job-search-title {
    font-size: var(--font-size-title);
  }

  .job-search-filter-form {
    flex-direction: column;
    /* gap: 12px; */
  }

  .job-search-filter-field {
    width: 100%;
    min-width: 100%;
  }

  .job-search-filter-btn {
    width: 100%;
  }
}

@media (max-width: 575.98px) {
  .job-search-section {
    padding: 60px 0;
  }

  .job-search-title {
    font-size: var(--font-size-title);
  }

  .job-search-description p {
    font-size: var(--font-size-body);
  }

  .job-search-filter-container {
    margin-top: 30px;
  }

  .job-search-filter-form {
    padding: 15px;
    /* gap: 10px; */
  }

  .job-search-filter-input,
  .job-search-filter-select {
    padding: 10px 12px 10px 40px;
    font-size: var(--font-size-body);
  }

  .job-search-filter-icon {
    width: 18px;
    height: 18px;
    left: 12px;
  }

  .job-search-filter-select {
    background-position: right 12px center;
  }

  .job-search-filter-btn {
    padding: 10px 25px;
    font-size: var(--font-size-button);
  }
}

/* JOB DETAILS MODAL */
.job-details-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  overflow-y: auto;
}

.job-details-modal.active {
  display: flex;
  align-items: center;
  justify-content: center;
}

.job-details-modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 1;
}

.job-details-modal-content {
  position: relative;
  background-color: #ffffff;
  background-image: url('/images/xlowopacitybg.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  max-width: 900px;
  width: 90%;
  max-height: 90vh;
  margin: 40px auto;
  padding: 60px 50px 50px;
  border-radius: 8px;
  box-shadow: 0 10px 50px rgba(0, 0, 0, 0.3);
  z-index: 2;
  overflow-y: auto;
}

.job-details-close {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  background-color: #20262B;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  transition: background-color 0.3s ease;
}

.job-details-close:hover {
  background-color: #333333;
}

.job-details-close svg path {
  stroke: #ffffff;
}

/* Job show page: Save Job link X icon - grey by default, original on hover */
.job-show-save-x-icon {
  filter: grayscale(100%);
  opacity: 0.7;
  transition: filter 0.2s ease, opacity 0.2s ease;
}

.job-show-save-link:hover .job-show-save-x-icon {
  filter: none;
  opacity: 1;
}

.job-details-header {
  margin-bottom: 40px;
  padding-bottom: 20px;
  border-bottom: 1px solid #e0e0e0;
}

.job-details-header-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 15px;
}

.job-details-title {
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-headline);
  line-height: 1.4;
  color: #20262B;
  margin: 0;
  flex: 1;
  padding-right: 20px;
}

.job-details-header-meta {
  display: flex;
  align-items: center;
  gap: 15px;
  flex-shrink: 0;
}

.job-details-date {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #9e9e9e;
}

.job-details-logo {
  width: 24px;
  height: 24px;
}

.job-details-specs {
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-headline);
  line-height: 1.5;
  color: #20262B;
  margin: 0;
}

.job-details-body {
  margin-top: 30px;
}

.job-details-section {
  margin-bottom: 35px;
}

.job-details-section-title {
  font-family: 'Manrope', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-headline);
  line-height: 1.3;
  color: #20262B;
  margin-bottom: 15px;
}

.job-details-text {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.7;
  color: #20262B;
  margin-bottom: 15px;
}

.job-details-text:last-child {
  margin-bottom: 0;
}

.job-details-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.job-details-list li {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.7;
  color: #20262B;
  margin-bottom: 12px;
  padding-left: 25px;
  position: relative;
}

.job-details-list li:before {
  content: '•';
  position: absolute;
  left: 0;
  color: #d0af32;
  font-weight: 700;
  font-size: var(--font-size-headline);
}

.job-details-list li:last-child {
  margin-bottom: 0;
}

.job-details-upload {
  margin: 40px 0;
}

.job-upload-area {
  position: relative;
  border: 1px solid #e0e0e0;
  border-radius: 4px;
  background-color: #f5f5f5;
  padding: 40px 20px;
  text-align: center;
  cursor: pointer;
  transition: border-color 0.3s ease, background-color 0.3s ease;
}

.job-upload-area:hover {
  border-color: #d0af32;
  background-color: #fafafa;
}

.job-upload-area.dragover {
  border-color: #d0af32;
  background-color: #fff9e6;
}

.job-upload-icon {
  margin-bottom: 15px;
  display: flex;
  justify-content: center;
}

.job-upload-text {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #9e9e9e;
  margin-bottom: 8px;
}

.job-upload-formats {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #9e9e9e;
  margin: 0;
}

.job-file-input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}

.job-details-apply {
  margin-top: 40px;
  text-align: center;
}

.job-apply-btn {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  color: #ffffff;
  border: none;
  border-radius: 8px;
  padding: 15px 60px;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  cursor: pointer;
  transition: opacity 0.3s ease;
}

.job-apply-btn:hover {
  opacity: 0.9;
}

/* Mobile Responsive for Job Details Modal */
@media (max-width: 991.98px) {
  .job-details-modal-content {
    width: 95%;
    padding: 40px 30px;
    margin: 20px auto;
  }

  .job-details-title {
    font-size: var(--font-size-headline);
  }

  .job-details-header-top {
    flex-direction: column;
    gap: 15px;
  }

  .job-details-header-meta {
    align-self: flex-start;
  }

  .job-details-section-title {
    font-size: var(--font-size-headline);
  }

  .job-details-text,
  .job-details-list li {
    font-size: var(--font-size-body);
  }
}

@media (max-width: 575.98px) {
  .job-details-modal-content {
    padding: 30px 20px;
    margin: 10px auto;
  }

  .job-details-close {
    top: 15px;
    right: 15px;
    width: 35px;
    height: 35px;
  }

  .job-details-title {
    font-size: var(--font-size-headline);
  }

  .job-details-specs {
    font-size: var(--font-size-body);
  }

  .job-details-section {
    margin-bottom: 25px;
  }

  .job-details-section-title {
    font-size: var(--font-size-headline);
  }

  .job-details-text,
  .job-details-list li {
    font-size: var(--font-size-body);
  }

  .job-upload-area {
    padding: 30px 15px;
  }

  .job-apply-btn {
    padding: 12px 40px;
    font-size: var(--font-size-button);
    width: 100%;
  }
}

/* Choose Account Type Section */
.choose-account-section {
  padding: 100px 0;
  background-color: #ffffff;
}

.choose-account-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #20262B;
  margin-bottom: 60px;
}

.account-type-card {
  position: relative;
  /* background-color: #20262B; */
  background-image: url('/images/cardddbg.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 620px;
  height: 521px;
  max-width: 100%;
  padding: 60px 50px;
  clip-path: polygon(0 0, calc(100% - 40px) 0, 100% 40px, 100% 100%, 0 100%);
  overflow: hidden;
  margin: 0 auto;
}

.account-card-content {
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.account-card-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-section-title);
  line-height: 1.2;
  color: #ffffff;
  margin-bottom: 24px;
}

.account-card-description {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.6;
  color: #ffffff;
  margin-bottom: 32px;
}

.account-card-features {
  list-style: none;
  padding: 0;
  margin: 0 0 40px 0;
  flex-grow: 1;
}

.account-card-features li {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.8;
  color: #ffffff;
  margin-bottom: 16px;
  padding-left: 24px;
  position: relative;
}

.account-card-features li::before {
  content: '•';
  position: absolute;
  left: 0;
  color: #d0af32;
  font-size: var(--font-size-headline);
  font-weight: bold;
}

.account-card-buttons {
  display: flex;
  gap: 15px;
  margin-top: auto;
  flex-wrap: wrap;
}

.account-card-button {
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  line-height: 100%;
  letter-spacing: 0%;
  color: #ffffff;
  background: linear-gradient(0deg, #dec17d, #dec17d),
    linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border: none;
  border-radius: 0;
  padding: 15px 40px;
  width: 100%;
  cursor: pointer;
  transition: opacity 0.3s ease;
  text-decoration: none;
  display: inline-block;
  text-align: center;
  flex: 1;
  min-width: 140px;
}

.account-card-button:hover {
  opacity: 0.9;
}

.account-card-button-login {
  background: transparent;
  border: 2px solid #d0af32;
  color: #d0af32;
}

.account-card-button-login:hover {
  background: rgba(208, 175, 50, 0.1);
  opacity: 1;
}

/* Responsive Styles */
@media (max-width: 991.98px) {
  .choose-account-section {
    padding: 60px 0;
  }

  .choose-account-title {
    font-size: var(--font-size-title);
    margin-bottom: 40px;
  }

  .account-type-card {
    width: 100%;
    max-width: 620px;
    height: auto;
    min-height: 500px;
    padding: 40px 30px;
    margin-bottom: 30px;
  }

  .account-card-title {
    font-size: var(--font-size-section-title);
  }

  .account-card-description {
    font-size: var(--font-size-body);
  }

  .account-card-features li {
    font-size: var(--font-size-body);
  }

  .account-card-buttons {
    flex-direction: column;
    gap: 12px;
  }

  .account-card-button {
    width: 100%;
    flex: none;
  }
}

@media (max-width: 575.98px) {
  .choose-account-title {
    font-size: var(--font-size-title);
  }

  .account-type-card {
    width: 100%;
    max-width: 100%;
    height: auto;
    min-height: 450px;
    padding: 30px 20px;
    clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 30px, 100% 100%, 0 100%);
  }

  .account-card-title {
    font-size: var(--font-size-section-title);
  }

  .account-card-description {
    font-size: var(--font-size-body);
  }

  .account-card-features li {
    font-size: var(--font-size-body);
    margin-bottom: 12px;
  }

  .account-card-buttons {
    flex-direction: column;
    gap: 10px;
  }

  .account-card-button {
    padding: 12px 30px;
    font-size: var(--font-size-body);
  }
}

/* Signup Hero Section (height reduced further 20%) */
.signup-hero-section {
  position: relative;
  background-image: url('/images/signupbg.png');
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  min-height: 100vh;
  padding: 140px 0 207px 0;
  display: flex;
  align-items: center;
}

.signup-hero-section .container {
  position: relative;
  z-index: 2;
}

/* Signup Form Container */
.signup-form-container {
  max-width: 751px;
  margin: 0 auto;
  width: 100%;
}

/* Signup Form Wrapper */
.signup-form-wrapper {
  /* background-color: #ffffff; */
  padding: 60px 50px;
  border-radius: 0;
  width: 100%;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.signup-form-header {
  margin-bottom: 40px;
}

.signup-form-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #ffffff;
  margin-bottom: 12px;
  text-align: center;
}

.signup-form-subtitle {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-headline);
  line-height: 1.6;
  color: #ffffff;
  margin: 0;
  text-align: center;
}

.signup-form-header {
  margin-bottom: 40px;
  text-align: center;
  padding: 0 20px;
}

/* Form Styles */
.signup-form {
	width: 70%;
	margin: 0 auto;
}

.form-group {
  margin-bottom: 24px;
}

/* Input Wrapper Styles */
.input-wrapper {
  position: relative;
  background-color: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  padding: 0;
  height: 48px;
  transition: all 0.3s ease;
}

.input-wrapper:hover {
  border-color: #d0af32;
}

.input-label {
  display: block;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 20px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #1a1a1a;
  margin-bottom: 8px;
}

.signup-form-wrapper .input-label {
  color: #1a1a1a;
}

.required {
  color: #d0af32;
  margin-left: 4px;
}

.form-control {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #1a1a1a;
  background-color: transparent;
  border: none;
  border-radius: 0;
  width: 100%;
  transition: all 0.3s ease;
}

.input-wrapper .form-control {
  padding: 0 16px;
  height: 100%;
  box-sizing: border-box;
}

.input-wrapper:focus-within {
  border-color: #d0af32;
  box-shadow: 0 0 0 3px rgba(208, 175, 50, 0.1);
}

.form-control:focus {
  outline: none;
}

.form-control::placeholder {
  color: #999;
  opacity: 1;
  font-family: 'Inter', sans-serif;
}

/* Password Input Wrapper */
.password-input-wrapper {
  position: relative;
  background-color: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  padding: 0;
  height: 48px;
  transition: all 0.3s ease;
}

.password-input-wrapper:hover {
  border-color: #d0af32;
}

.input-with-icon {
  position: relative;
  width: 100%;
  height: 100%;
}

.password-input-wrapper .form-control {
  padding-right: 50px;
  padding-left: 16px;
  height: 100%;
  box-sizing: border-box;
  border: none;
  background: transparent;
}

.password-input-wrapper:focus-within {
  border-color: #d0af32;
  box-shadow: 0 0 0 3px rgba(208, 175, 50, 0.1);
}

.password-input-wrapper .form-control:focus {
  outline: none;
}

.password-toggle {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  transition: opacity 0.3s ease;
}

.password-toggle:hover {
  opacity: 0.7;
}

.password-toggle svg,
.password-toggle i {
  width: 20px;
  height: 20px;
  transition: color 0.3s ease;
  color: #4E4E4E;
  font-size: var(--font-size-headline);
}

.password-toggle:hover i {
  color: #d0af32;
}

/* Checkbox Styles */
.checkbox-group {
  margin-bottom: 32px;
  display: flex;
  justify-content: center;
  width: 100%;
}

.custom-checkbox {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  cursor: pointer;
  position: relative;
}

.custom-checkbox input[type='checkbox'] {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.checkbox-custom {
  width: 24px;
  height: 24px;
  background-color: transparent;
  border: 2px solid #d0af32;
  border-radius: 0;
  margin-right: 12px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}

.custom-checkbox input[type='checkbox']:checked + .checkbox-custom {
  border-color: #D0AF32;
  background-color: #D0AF32;
}

.checkbox-checked-icon {
  display: none;
  width: 24px;
  height: 24px;
}

.custom-checkbox input[type='checkbox']:checked + .checkbox-custom .checkbox-checked-icon {
  display: block;
}


.checkbox-text {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.6;
  color: #0e121b;
  flex: 1;
}

/* Remember Me and Forgot Password Container */
.remember-forgot-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
  flex-wrap: nowrap;
  gap: 15px;
}

.remember-checkbox {
  margin: 0;
  width: auto;
  flex-shrink: 0;
  white-space: nowrap;
}

.forgot-password-link {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-body);
  color: #d0af32;
  text-decoration: none;
  flex-shrink: 0;
  white-space: nowrap;
}

.forgot-password-link:hover {
  text-decoration: underline;
  color: #DDC17C;
}

/* Submit Button */
.signup-submit-btn {
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  line-height: 100%;
  letter-spacing: 0%;
  color: #ffffff;
  background: linear-gradient(0deg, #dec17d, #dec17d),
    linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border: none;
  border-radius: 0;
  padding: 15px 40px;
  width: 100%;
  cursor: pointer;
  transition: opacity 0.3s ease;
  margin-bottom: 20px;
}

.signup-submit-btn:hover {
  opacity: 0.9;
}

/* Form Sections */
.form-section {
  margin-bottom: 40px;
}

/* Password Fields Row */
.password-fields-row {
  display: flex;
  flex-direction: row;
  gap: 16px;
}

.password-fields-row .form-group {
  flex: 1;
  margin-bottom: 0;
}

/* File Upload Area */
.file-upload-area {
  margin-bottom: 8px;
}

.file-upload-label {
  display: block;
  cursor: pointer;
  border: 2px dashed #E5E5E7;
  border-radius: 0;
  padding: 40px 20px;
  text-align: center;
  background-color: #ffffff;
  transition: border-color 0.3s ease, background-color 0.3s ease;
}

.file-upload-label:hover {
  border-color: #B79417;
  background-color: #FAFAFA;
}

.file-upload-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.upload-icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

.upload-text {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #0e121b;
  margin: 0;
}

.upload-hint {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #6B7280;
  margin: 0;
}

.upload-description {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #6B7280;
  margin-top: 8px;
  margin-bottom: 0;
}

.form-section-header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 24px;
}

.section-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}

.form-section-title {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 24px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #0e121b;
  margin: 0;
}

.form-row {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.form-row .form-group {
  flex: 1;
  min-width: 200px;
}

/* Phone Input Wrapper */
.phone-input-wrapper {
  display: flex;
  gap: 10px;
}

.country-code-select {
  display: flex;
  align-items: center;
  gap: 8px;
  background-color: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  padding: 0 12px;
  min-width: 100px;
  height: 48px;
  box-sizing: border-box;
}

.flag-icon {
  width: 20px;
  height: 15px;
  flex-shrink: 0;
  display: block;
}

img.flag-icon {
  object-fit: cover;
}

.country-code-select .form-control {
  border: none;
  padding: 0;
  background: transparent;
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #171717;
  height: 100%;
}

.phone-input {
  flex: 1;
}

/* Date Input Wrapper */
.date-input-wrapper {
  position: relative;
}

.date-icon {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
}

/* Select Wrapper */
.select-wrapper {
  position: relative;
}

.select-arrow {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
}

.select-wrapper .form-control {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding-right: 40px;
}

/* Textarea Wrapper */
.textarea-wrapper {
  height: auto;
  min-height: 120px;
}

.textarea-wrapper .form-control {
  padding: 16px;
  resize: vertical;
  min-height: 120px;
  height: 100%;
  box-sizing: border-box;
}

/* Phone Input Wrapper */
.phone-input-wrapper {
  display: flex;
  gap: 10px;
  align-items: stretch;
}

.phone-input-wrapper .input-wrapper {
  flex: 1;
}

/* Preferred Sectors */
.preferred-sectors-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
}

.sector-count {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #6B7280;
}

.sector-instruction {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #6B7280;
  margin-bottom: 16px;
}

.sectors-checkbox-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.sector-checkbox-item {
  display: flex;
  align-items: center;
}

.sector-checkbox {
  width: 20px;
  height: 20px;
  margin-right: 12px;
  cursor: pointer;
  accent-color: #C9A24D;
}

.sector-checkbox-label {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #0e121b;
  cursor: pointer;
}

/* Form Footer Section */
.signup-form-footer-section {
  margin-top: 32px;
  padding-top: 24px;
  border-top: 1px solid #e5e5e7;
}

.already-have-account {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #0e121b;
  margin-bottom: 16px;
  text-align: center;
}

.signin-account-btn {
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  line-height: 100%;
  letter-spacing: 0%;
  color: #ffffff;
  background: linear-gradient(0deg, #dec17d, #dec17d),
    linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border: none;
  border-radius: 0;
  padding: 15px 40px;
  width: 100%;
  cursor: pointer;
  transition: opacity 0.3s ease;
  margin-bottom: 24px;
}

.signin-account-btn:hover {
  opacity: 0.9;
}

/* Form Footer */
.signup-form-footer {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-top: 8px;
  width: 100%;
}

.footer-line {
  flex: 1;
  height: 1px;
  background-color: #d0af32;
  max-width: 100px;
}

.footer-lock-icon {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}

.footer-lock-icon path {
  fill: #d0af32;
}

.footer-text {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #d0af32;
  white-space: nowrap;
  flex-shrink: 0;
}

/* Promo Wrapper */
.signup-promo-wrapper {
  position: relative;
  padding: 40px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 600px;
}

.signup-promo-triangle {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-left: 60px solid #d0af32;
  border-top: 60px solid transparent;
  z-index: 1;
}

.signup-promo-image {
  position: relative;
  z-index: 2;
  margin-bottom: 40px;
  max-width: 685px;
  max-height: 973px;
  width: 100%;
  height: auto;
}

.signup-promo-image img {
  width: 100%;
  height: auto;
  max-width: 685px;
  max-height: 973px;
  object-fit: contain;
}

.signup-promo-content {
  position: relative;
  z-index: 2;
  text-align: center;
  max-width: 550px;
  margin-top: -270px;
  padding: 20px;
}
.hfsdaskkhfsdjs {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-headline);
  line-height: 181%;
  color: #20262B;
}

.signup-promo-title {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #ffffff;
  margin-bottom: 20px;
  text-align: left;
}

.signup-promo-description {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-headline);
  line-height: 1.6;
  color: #ffffff;
  margin: 0;
  text-align: left;
}

/* Responsive Styles */
@media (max-width: 991.98px) {
  .signup-hero-section {
    padding: 95px 0 129px 0;
    min-height: auto;
  }

  .signup-form-container {
    max-width: 100%;
    padding: 0 20px;
  }

  .signup-form-wrapper {
    padding: 40px 30px;
    margin-bottom: 40px;
  }

  .signup-form-title {
    font-size: var(--font-size-title);
  }

  .signup-form-subtitle {
    font-size: var(--font-size-body);
  }

  .signup-promo-wrapper {
    min-height: 500px;
    padding: 20px 0;
  }

  .signup-promo-title {
    font-size: var(--font-size-title);
  }

  .signup-promo-description {
    font-size: var(--font-size-body);
  }
}

@media (max-width: 575.98px) {
  .signup-hero-section {
    padding: 101px 0 140px;
  }

  .signup-form-container {
    padding: 0 15px;
  }

  .signup-form-wrapper {
    padding: 30px 20px;
  }

  .signup-form-title {
    font-size: var(--font-size-title);
  }

  .signup-form-subtitle {
    font-size: var(--font-size-body);
  }

  .password-fields-row {
    flex-direction: column;
    gap: 0;
  }

  .password-fields-row .form-group {
    margin-bottom: 24px;
  }

  .signup-promo-wrapper {
    min-height: 400px;
  }

  .signup-promo-title {
    font-size: var(--font-size-headline);
  }

  .signup-promo-description {
    font-size: var(--font-size-body);
  }

  .signup-promo-triangle {
    border-left: 40px solid #d0af32;
    border-top: 40px solid transparent;
  }
}

/* ——— Auth login (candidate + company): light, sharp, corporate ——— */
.auth-login-page--light.signup-hero-section {
  background: #ffffff;
  background-image: none !important;
  min-height: 100vh;
  min-height: 100dvh;
  padding: 140px 0 72px;
  display: flex;
  align-items: center;
}

.auth-login-page--light .auth-login-container {
  max-width: 1200px;
}

.auth-login-page--light .auth-login-row {
  align-items: stretch;
}

.auth-login-page--light .auth-login-row > .auth-login-col {
  display: flex;
  flex-direction: column;
}

.auth-login-page--light .auth-login-card.signup-form-wrapper {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 100%;
  background: #ffffff;
  border: 1px solid #e5e5e5;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
  padding: 40px;
  margin: 0;
}

.auth-login-page--light .auth-login-header.signup-form-header {
  text-align: left;
  padding: 0;
  margin-bottom: 28px;
  flex-shrink: 0;
}

.auth-login-page--light .auth-login-title.signup-form-title {
  font-weight: 700;
  color: #111111;
  text-align: left;
  margin-bottom: 0;
  line-height: 1.2;
}

.auth-login-page--light .signup-form-title-gold {
  color: #c8a96a;
}

.auth-login-page--light .auth-login-accent-line.specialized-line {
  margin-top: 10px;
  margin-bottom: 0;
}

.auth-login-page--light .auth-login-subtitle.signup-form-subtitle {
  color: #666666;
  text-align: left;
  font-size: 0.9375rem;
  line-height: 1.6;
  margin-top: 12px;
}

.auth-login-page--light .auth-login-form.signup-form {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  width: 100%;
  margin: 0;
}

.auth-login-page--light .auth-login-label {
  color: #111111;
  font-weight: 600;
  font-size: 0.8125rem;
  margin-bottom: 8px;
}

.auth-login-page--light .input-wrapper.auth-field-wrap {
  position: relative;
  background: #fafafa;
  border: 1px solid #dadada;
  height: 50px;
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.auth-login-page--light .input-wrapper.auth-field-wrap:hover {
  border-color: #c8a96a;
}

.auth-login-page--light .input-wrapper.auth-field-wrap:focus-within {
  background: #ffffff;
  border-color: #c8a96a;
  box-shadow: 0 0 0 2px rgba(200, 169, 106, 0.2);
}

.auth-login-page--light .auth-field-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: #888888;
  font-size: 0.9rem;
  pointer-events: none;
  z-index: 2;
}

.auth-login-page--light .input-wrapper.auth-field-wrap .form-control {
  padding-left: 42px;
  background: transparent;
}

.auth-login-page--light .password-input-wrapper.auth-password-wrap {
  position: relative;
  background: #fafafa;
  border: 1px solid #dadada;
  height: 50px;
  padding: 0;
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.auth-login-page--light .password-input-wrapper.auth-password-wrap:hover {
  border-color: #c8a96a;
}

.auth-login-page--light .password-input-wrapper.auth-password-wrap:focus-within {
  background: #ffffff;
  border-color: #c8a96a;
  box-shadow: 0 0 0 2px rgba(200, 169, 106, 0.2);
}

.auth-login-page--light .auth-field-icon--password {
  left: 14px;
}

.auth-login-page--light .auth-password-wrap .form-control {
  padding-left: 42px;
  background: transparent;
}

.auth-login-page--light .auth-password-wrap .password-toggle {
  right: 12px;
}

.auth-login-page--light .auth-login-field-error {
  color: #b45309;
  font-size: 0.875rem;
  margin: 8px 0 0;
  font-family: 'Inter', sans-serif;
}

.auth-login-page--light .auth-login-remember-row {
  margin-bottom: 20px;
}

.auth-login-page--light .auth-login-checkbox.custom-checkbox {
  justify-content: flex-start;
  width: auto;
}

.auth-login-page--light .auth-login-checkbox .checkbox-text {
  color: #333333;
}

.auth-login-page--light .auth-login-forgot.forgot-password-link {
  color: #c8a96a;
}

.auth-login-page--light .auth-login-forgot.forgot-password-link:hover {
  color: #b6985a;
}

.auth-login-page--light .auth-login-submit.signup-submit-btn {
  background: #c8a96a;
  color: #ffffff;
  margin-bottom: 0;
  min-height: 52px;
  transition: background 0.2s ease, box-shadow 0.2s ease;
}

.auth-login-page--light .auth-login-submit.signup-submit-btn:hover {
  opacity: 1;
  background: #b6985a;
  box-shadow: 0 6px 20px rgba(200, 169, 106, 0.35);
}

.auth-login-page--light .auth-login-divider {
  height: 1px;
  background: #e5e5e5;
  margin: 24px 0 20px;
  width: 100%;
}

.auth-login-page--light .auth-login-security {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  background: #f7f7f7;
  border: 1px solid #e5e5e5;
  font-family: 'Manrope', sans-serif;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: #666666;
}

.auth-login-page--light .auth-login-security i {
  color: #c8a96a;
  margin-top: 2px;
  flex-shrink: 0;
}

.auth-login-page--light .auth-login-alert {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 0;
  font-size: 0.875rem;
  font-family: 'Manrope', sans-serif;
  border: 1px solid transparent;
}

.auth-login-page--light .auth-login-alert--success {
  background: #f4fbf6;
  border-color: #bbf7d0;
  color: #166534;
}

.auth-login-page--light .auth-login-alert--info {
  background: #f0f9ff;
  border-color: #bae6fd;
  color: #0369a1;
}

.auth-login-page--light .auth-login-alert--danger {
  background: #fffafa;
  border-color: #fecaca;
  color: #991b1b;
}

.auth-login-page--light .auth-login-register {
  margin-top: auto;
  padding-top: 24px;
  border-top: 1px solid #e5e5e5;
  text-align: center;
  flex-shrink: 0;
}

.auth-login-page--light .auth-login-register-text {
  font-family: 'Manrope', sans-serif;
  font-size: 0.875rem;
  color: #666666;
  margin: 0 0 8px;
}

.auth-login-page--light .auth-login-register-link {
  font-family: 'Manrope', sans-serif;
  font-size: 0.9375rem;
  font-weight: 600;
  color: #c8a96a;
  text-decoration: none;
}

.auth-login-page--light .auth-login-register-link:hover {
  color: #b6985a;
  text-decoration: underline;
}

.auth-login-page--light .auth-login-promo.signup-promo-wrapper {
  position: relative;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 100%;
  height: 100%;
  padding: 32px;
  background: #ffffff;
  border: 1px solid #e5e5e5;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
  align-items: stretch;
}

.auth-login-page--light .auth-login-promo-pattern {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(165deg, transparent 55%, rgba(200, 169, 106, 0.06) 100%);
  z-index: 0;
}

.auth-login-page--light .auth-login-promo-image.signup-promo-image {
  position: relative;
  z-index: 1;
  flex: 1 1 auto;
  min-height: 0;
  margin: 0 0 24px;
  max-width: 100%;
  overflow: visible;
  border: 1px solid #eeeeee;
  display: flex;
  align-items: center;
  justify-content: center;
}

.auth-login-page--light .auth-login-promo-image img {
  width: 100%;
  max-width: 100%;
  height: auto;
  max-height: min(100%, 70vh);
  object-fit: contain;
  display: block;
}

.auth-login-page--light .auth-login-promo-content.signup-promo-content {
  position: relative;
  z-index: 1;
  margin-top: 0;
  padding: 0;
  text-align: left;
  max-width: none;
  flex-shrink: 0;
}

.auth-login-page--light .auth-login-promo-title.signup-promo-title {
  color: #111111;
  text-align: left;
  margin-bottom: 12px;
  font-size: 1.25rem;
  font-weight: 700;
}

.auth-login-page--light .auth-login-promo-text.signup-promo-description {
  color: #555555;
  text-align: left;
  font-size: 0.9375rem;
  line-height: 1.65;
  margin: 0;
}

@media (max-width: 991.98px) {
  .auth-login-page--light.signup-hero-section {
    padding: 120px 0 56px;
    min-height: auto;
  }

  .auth-login-page--light .auth-login-card.signup-form-wrapper {
    padding: 32px 28px;
  }

  .auth-login-page--light .auth-login-promo.signup-promo-wrapper {
    margin-bottom: 8px;
  }
}

@media (max-width: 575.98px) {
  .auth-login-page--light.signup-hero-section {
    padding: 104px 0 48px;
  }

  .auth-login-page--light .auth-login-card.signup-form-wrapper {
    padding: 24px 18px;
  }

  .auth-login-page--light .auth-login-promo.signup-promo-wrapper {
    padding: 24px 18px;
  }
}

/* Hero Buttons */
.hero-buttons-wrapper {
  margin-top: 40px;
}

.btn-post-job {
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 100%;
  letter-spacing: 0%;
  color: #ffffff;
  background: linear-gradient(90deg, #dec17d 0%, #d0af32 25.48%, #DDC17C 100%);
  border: none;
  border-radius: 0;
  padding: 15px 40px;
  box-shadow: 0px 4px 10px rgba(208, 175, 50, 0.3);
  transition: opacity 0.3s ease, box-shadow 0.3s ease;
  text-decoration: none;
  display: inline-block;
}

.btn-post-job:hover {
  opacity: 0.9;
  box-shadow: 0px 6px 15px rgba(208, 175, 50, 0.4);
  color: #ffffff;
}

.btn-talk-expert {
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 100%;
  letter-spacing: 0%;
  color: #ffffff;
  background-color: #1a1a1a;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 0;
  padding: 15px 40px;
  transition: background-color 0.3s ease, border-color 0.3s ease;
  text-decoration: none;
  display: inline-block;
}

.btn-talk-expert:hover {
  background-color: #2a2a2a;
  border-color: rgba(255, 255, 255, 0.5);
  color: #ffffff;
}

/* Responsive Styles for Hero Buttons */
@media (max-width: 575.98px) {
  .hero-buttons-wrapper {
    flex-direction: column;
    align-items: center;
  }

  .btn-post-job,
  .btn-talk-expert {
    width: 100%;
    max-width: 300px;
  }
}

/* Company Features Section */
.company-features-section {
  padding: 100px 0;
  background-color: #ffffff;
}

.company-features-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-title);
  line-height: 90px;
  letter-spacing: 0%;
  text-align: right;
  vertical-align: middle;
  color: #20262B;
  margin-bottom: 24px;
}

.company-features-description {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-headline);
  line-height: 28px;
  letter-spacing: 0%;
  text-align: right;
  vertical-align: middle;
  color: #20262B;
  margin-bottom: 24px;
}

.company-features-line {
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  margin-top: 24px;
  margin-left: auto;
  max-width: 200px;
}

/* Company Feature Cards Wrapper */
.company-features-cards-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  justify-content: flex-start;
}

/* Company Feature Cards */
.company-feature-card {
  flex: 0 0 auto;
  position: relative;
  /* background-color: #20262B; */
  background-image: url('/images/companycardbg.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  max-width: 407px;
  max-height: 233px;

  padding: 40px 30px;
  overflow: hidden;
  /* clip-path: polygon(0 0, calc(100% - 40px) 0, 100% 40px, 100% 100%, 0 100%); */
}

.company-card-icon {
  position: absolute;
  top: 30px;
  left: 30px;
  z-index: 2;
}

.company-card-icon img {
  width: 48px;
  height: 48px;
}

.company-card-triangle {
  display: none;
}

.company-card-content {
  position: relative;
  z-index: 2;
  margin-top: 40px;
}

.company-card-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-section-title);
  line-height: 28px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #ffffff;
  margin-bottom: 12px;
}

.company-card-description {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-headline);
  line-height: 24px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #ffffff;
  margin: 0;
}

/* Responsive Styles */
@media (max-width: 991.98px) {
  .company-features-section {
    padding: 60px 0;
  }

  .company-features-title {
    font-size: var(--font-size-title);
    line-height: 60px;
    text-align: center;
  }

  .company-features-description {
    text-align: center;
  }

  .company-features-line {
    margin-left: auto;
    margin-right: auto;
  }

  .company-features-cards-wrapper {
    justify-content: center;
  }
}

@media (max-width: 575.98px) {
  .company-features-title {
    font-size: var(--font-size-title);
    line-height: 48px;
  }

  .company-features-description {
    font-size: var(--font-size-body);
    line-height: 24px;
  }

  .company-feature-card {
    min-height: 250px;
    padding: 30px 20px;
    /* clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 30px, 100% 100%, 0 100%); */
  }

  .company-card-triangle {
    border-left: 40px solid #d0af32;
    border-top: 40px solid transparent;
  }

  .company-card-icon {
    top: 20px;
    left: 20px;
  }

  .company-card-icon img {
    width: 40px;
    height: 40px;
  }

  .company-card-content {
    margin-top: 60px;
  }

  .company-card-title {
    font-size: var(--font-size-section-title);
    line-height: 24px;
  }

  .company-card-description {
    font-size: var(--font-size-body);
    line-height: 22px;
  }

  .company-features-cards-wrapper {
    justify-content: center;
    gap: 16px;
  }

  .company-feature-card {
    width: 100%;
    max-width: 100%;
  }
}

/* Company Modern Teams Section */
.company-modern-teams-section {
  position: relative;
  background-image: url('/images/newbg.png');
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  padding: 200px 0 260px 0;
  min-height: 100vh;
  display: flex;
  align-items: center;
}
.svdfiuteajBSWIAs{
  position: relative;
  background-image: url('/images/newbg.png');
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  padding: 200px 0 260px 0 ;
  color: #ffffff !important;
}

.modern-teams-content {
  color: #ffffff;
}

.modern-teams-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #ffffff;
  margin-bottom: 24px;
}

.modern-teams-line {
  width: 100px;
  height: 2px;
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  margin-bottom: 24px;
}

.modern-teams-description {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-headline);
  line-height: 1.6;
  color: #ffffff;
  margin-bottom: 40px;
}

.modern-teams-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.modern-teams-list li {
  display: flex;
  align-items: flex-start;
  margin-bottom: 20px;
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-headline);
  line-height: 1.6;
  color: #ffffff;
}

.list-icon {
  color: #d0af32;
  font-size: var(--font-size-body);
  margin-right: 12px;
  margin-top: 6px;
  flex-shrink: 0;
}

.list-text {
  flex: 1;
}

/* Modern Teams Images Grid */
.modern-teams-images-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  width: 100%;
}

.image-card-wrapper {
  position: relative;
  width: 284px;
  height: 284px;
  overflow: hidden;
}

.modern-teams-image {
  width: 284px;
  height: 284px;
  display: block;
  object-fit: cover;
}

/* Responsive Styles */
@media (max-width: 991.98px) {
  .company-modern-teams-section {
    padding: 200px 0 250px 0;
    min-height: auto;
  }

  .modern-teams-title {
    font-size: var(--font-size-title);
    text-align: center;
  }

  .modern-teams-line {
    margin-left: auto;
    margin-right: auto;
  }

  .modern-teams-description {
    text-align: center;
    font-size: var(--font-size-body);
  }

  .modern-teams-images-grid {
    margin-top: 40px;
    gap: 16px;
    justify-items: center;
  }

  .image-card-wrapper {
    width: 100%;
    max-width: 284px;
    height: auto;
    aspect-ratio: 1 / 1;
  }

  .modern-teams-image {
    width: 100%;
    height: 100%;
  }
}

@media (max-width: 575.98px) {
  .company-modern-teams-section {
    padding: 200px 0 250px 0;
  }

  .modern-teams-title {
    font-size: var(--font-size-title);
  }

  .modern-teams-description {
    font-size: var(--font-size-body);
  }

  .modern-teams-list li {
    font-size: var(--font-size-body);
    margin-bottom: 16px;
  }

  .modern-teams-images-grid {
    gap: 12px;
    justify-items: center;
  }

  .image-card-wrapper {
    width: 100%;
    max-width: 284px;
    height: auto;
    aspect-ratio: 1 / 1;
  }

  .modern-teams-image {
    width: 100%;
    height: 100%;
  }
}

/* Company Hire Steps Section */
.company-hire-steps-section {
  padding: 100px 0;
  background-color: #ffffff;
}

.hire-steps-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #20262B;
  margin-bottom: 16px;
}

.hire-steps-subtitle {
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-title);
  line-height: 1.5;
  color: #20262B;
  margin-bottom: 16px;
}

.hire-steps-intro {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-headline);
  line-height: 1.6;
  color: #20262B;
  margin-bottom: 0;
}

/* Steps Flow */
.hire-steps-flow {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 40px;
  margin-top: 16px;
  position: relative;
}

.hire-step-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
  max-width: 300px;
  position: relative;
}

.hire-step-box {
  width: 120px;
  height: 120px;
  /* background-color: #20262B; */
  /* border: 2px solid #d0af32; */
  background-image: url('/images/clip.png');
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  /* clip-path: polygon(15% 0%, 100% 0%, 100% 100%, 0% 100%, 0% 15%); */
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30px;
  z-index: 2;
}

.hire-step-number {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  line-height: 1;
  color: #d0af32;
}

.hire-step-connector {
  position: absolute;
  top: 60px;
  right: -40px;
  width: 40px;
  height: 2px;
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  z-index: 1;
}

.hire-step-item:last-child .hire-step-connector {
  display: none;
}

.hire-step-content {
  text-align: center;
  margin-top: 20px;
}

.hire-step-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-headline);
  line-height: 1.3;
  color: #20262B;
  margin-bottom: 12px;
}

.hire-step-description {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #20262B;
  margin: 0;
}

/* Responsive Styles */
@media (max-width: 991.98px) {
  .company-hire-steps-section {
    padding: 60px 0;
  }

  .hire-steps-flow {
    flex-direction: column;
    align-items: center;
    gap: 60px;
  }

  .hire-step-connector {
    display: none;
  }

  .hire-step-item {
    max-width: 100%;
  }
}

@media (max-width: 575.98px) {
  .hire-steps-title {
    font-size: var(--font-size-title);
  }

  .hire-steps-subtitle {
    font-size: var(--font-size-headline);
  }

  .hire-steps-intro {
    font-size: var(--font-size-body);
  }

  .hire-step-box {
    width: 100px;
    height: 100px;
  }

  .hire-step-number {
    font-size: var(--font-size-title);
  }

  .hire-step-title {
    font-size: var(--font-size-headline);
  }

  .hire-step-description {
    font-size: var(--font-size-body);
  }
}

/* Company Ready Section */
.company-ready-section {
  padding: 100px 0;
  background-color: #ffffff;
}

.ready-section-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #20262B;
  margin-bottom: 24px;
}

.ready-section-description {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-headline);
  line-height: 1.6;
  color: #20262B;
  margin-bottom: 40px;
}

.ready-section-buttons {
  margin-top: 40px;
}

/* Responsive Styles */
@media (max-width: 991.98px) {
  .company-ready-section {
    padding: 60px 0;
  }

  .ready-section-title {
    font-size: var(--font-size-title);
  }

  .ready-section-description {
    font-size: var(--font-size-body);
  }
}

@media (max-width: 575.98px) {
  .company-ready-section {
    padding: 40px 0;
  }

  .ready-section-title {
    font-size: var(--font-size-title);
  }

  .ready-section-description {
    font-size: var(--font-size-body);
  }

  .ready-section-buttons {
    flex-direction: column;
    align-items: center;
  }

  .ready-section-buttons .btn-post-job,
  .ready-section-buttons .btn-talk-expert {
    width: 100%;
    max-width: 300px;
  }
}

/* Candidate Opportunities Section - Override alignment */
.candidate-opportunities-section .candidate-opportunities-title {
  text-align: left !important;
}

.candidate-opportunities-section .candidate-opportunities-description {
  text-align: left !important;
}

.candidate-opportunities-section .candidate-opportunities-line {
  margin-left: 0 !important;
  margin-right: auto;
}

/* Work the Way You Want Section */
.work-way-section {
  padding: 100px 0;
  background-color: #ffffff;
}

.work-way-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #20262B;
  margin-bottom: 24px;
  text-align: center;
}

.work-way-line {
  width: 100%;
  max-width: 400px;
  height: 2px;
  background: linear-gradient(90deg, #D0AF32 25.48%, #DDC17C 100%);
  margin: 0 auto 60px auto;
}

.work-way-cards-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.work-way-card {
  width: 305px;
  height: 200px;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.work-way-card-1,
.work-way-card-3 {
  background-image: url('/images/crrrr.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.work-way-card-2,
.work-way-card-4 {
  background-image: url('/images/crr24.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.work-way-card-icon {
  position: relative;
  z-index: 2;
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.work-way-card-triangle-top {
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 60px 60px 0;
  border-color: transparent #D0AF32 transparent transparent;
  z-index: 1;
}

.work-way-card-triangle-bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 60px 0 0 60px;
  border-color: #D0AF32 transparent transparent transparent;
  z-index: 1;
}

.work-way-card-label {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-headline);
  line-height: 1.2;
  color: #ffffff;
  text-align: center;
  position: relative;
  z-index: 2;
}

/* Responsive Styles */
@media (max-width: 991.98px) {
  .work-way-section {
    padding: 60px 0;
  }

  .work-way-title {
    font-size: var(--font-size-title);
  }

  .work-way-cards-wrapper {
    gap: 20px;
  }
}

@media (max-width: 575.98px) {
  .work-way-section {
    padding: 40px 0;
  }

  .work-way-title {
    font-size: var(--font-size-title);
  }

  .work-way-card {
    width: 100%;
    max-width: 305px;
  }

  .work-way-cards-wrapper {
    flex-direction: column;
    align-items: center;
  }
}

/* Dropdown Menu Sharp Corners */
.dropdown-menu {
  border-radius: 0 !important;
  border: none;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.dropdown-item {
  border-radius: 0 !important;
}

.dropdown-item:first-child {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}

.dropdown-item:last-child {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

/* Privacy Policy Content Section */
.privacy-policy-content-section {
  padding: 80px 0;
  background-color: #ffffff;
}

.privacy-section {
  margin-bottom: 80px;
}

.privacy-section:last-child {
  margin-bottom: 0;
}

.privacy-section-heading {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-title);
  line-height: 72px;
  letter-spacing: 0%;
  text-align: left;
  vertical-align: middle;
  color: #20262B;
  margin-bottom: 24px;
}

.privacy-intro-paragraph {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 22px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #20262B;
}

.privacy-divider {
  border: none;
  border-top: 2.67px solid #BD9A1D;
  margin: 24px 0;
}

.privacy-body-content {
  margin-top: 24px;
}

.privacy-body-paragraph {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.8;
  color: #20262B;
  text-align: justify;
}

.legal-document .legal-subheading {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.4;
  color: #20262B;
}

.legal-document .legal-list {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-body);
  line-height: 1.8;
  color: #20262B;
  padding-left: 1.5rem;
  margin-bottom: 1rem;
}

.legal-document .legal-list li {
  margin-bottom: 0.5rem;
}

.legal-document .legal-inline-link {
  color: #9a7b10;
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.legal-document .legal-inline-link:hover {
  color: #d0af32;
}

/* Responsive Styles for Privacy Policy */
@media (max-width: 991.98px) {
  .privacy-policy-content-section {
    padding: 60px 0;
  }

  .privacy-section {
    margin-bottom: 60px;
  }

  .privacy-section-heading {
    font-size: var(--font-size-title);
  }

  .privacy-intro-paragraph {
    font-size: var(--font-size-body);
  }

  .privacy-body-paragraph {
    font-size: var(--font-size-body);
    line-height: 1.7;
  }
}

@media (max-width: 575.98px) {
  .privacy-policy-content-section {
    padding: 40px 0;
  }

  .privacy-section {
    margin-bottom: 50px;
  }

  .privacy-section-heading {
    font-size: var(--font-size-headline);
  }

  .privacy-intro-paragraph {
    font-size: var(--font-size-body);
  }

  .privacy-body-paragraph {
    font-size: var(--font-size-body);
    line-height: 1.6;
    text-align: left;
  }
}

/* Dashboard Header Section */
.dashboard-header {
  background-color: #F5F5F5;
  padding: 16px 0;
  border-bottom: 1px solid #E0E0E0;
}

.dashboard-header-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 24px;
}

/* Search Box */
.dashboard-search-wrapper {
  flex: 1;
  max-width: 500px;
}

.dashboard-search-box {
  position: relative;
  display: flex;
  align-items: center;
  background-color: #FFFFFF;
  border: 1px solid #E0E0E0;
  border-radius: 8px;
  padding: 10px 16px;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.dashboard-search-box:focus-within {
  border-color: #C9A24D;
  box-shadow: 0 0 0 3px rgba(201, 162, 77, 0.1);
}

.dashboard-search-icon {
  width: 20px;
  height: 20px;
  margin-right: 12px;
  flex-shrink: 0;
}

.dashboard-search-input {
  flex: 1;
  border: none;
  outline: none;
  background: transparent;
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #2D2D2D;
  padding: 0;
}

.dashboard-search-input::placeholder {
  color: #9E9E9E;
}

/* Header Icons */
.dashboard-header-icons {
  display: flex;
  align-items: center;
  gap: 16px;
}

.dashboard-icon-btn {
  position: relative;
  background: none;
  border: none;
  padding: 8px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s ease;
}

.dashboard-icon-btn:hover {
  opacity: 0.7;
}

.dashboard-icon-btn img {
  width: 24px;
  height: 24px;
  display: block;
}

.dashboard-icon-btn i {
  font-size: var(--font-size-headline);
  color: #2D2D2D;
  display: block;
}

.profile-btn {
  border: 2px solid #C9A24D !important;
  border-radius: 50%;
  padding: 0;
}

.profile-btn img {
  width: 40px;
  height: 40px;
  display: block;
}

/* Notification Badge */
.notification-badge {
  position: absolute;
  top: 6px;
  right: 6px;
  width: 8px;
  height: 8px;
  background-color: #CC4D3A;
  border-radius: 50%;
  border: 2px solid #F5F5F5;
}

/* Profile Status Dot */
.profile-status-dot {
  position: absolute;
  top: 2px;
  right: 2px;
  width: 10px;
  height: 10px;
  background-color: #C9A24D;
  border-radius: 50%;
  border: 2px solid #F5F5F5;
}

/* Profile Dropdown */
.dashboard-profile-dropdown {
  position: relative;
  display: flex;
  align-items: center;
}

.dashboard-dropdown-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  background-color: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
  min-width: 240px;
  z-index: 1000;
  display: none;
  overflow: hidden;
}

.dashboard-dropdown-menu.active {
  display: block;
}

/* Dropdown Toggle Button - Header Button */
.dashboard-dropdown-toggle {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 16px;
  /* background: linear-gradient(135deg, #F5E6D3 0%, #E8D4B8 100%); */
  border: 1px solid #C9A24D;
  border-radius: 0px;
  cursor: pointer;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  color: #2D2D2D;
  transition: background 0.3s ease;
  white-space: nowrap;
}

.dashboard-dropdown-toggle:hover {
  background: linear-gradient(135deg, #F0DCC0 0%, #E0C9A8 100%);
}

.dashboard-dropdown-toggle .dropdown-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  display: block;
  color: #2D2D2D;
  font-size: var(--font-size-body);
}

.dashboard-dropdown-toggle .dropdown-caret {
  margin-left: 4px;
  flex-shrink: 0;
  transform: rotate(180deg);
  transition: transform 0.3s ease;
}

.dashboard-dropdown-toggle.active .dropdown-caret {
  transform: rotate(0deg);
}

/* Dropdown List */
.dashboard-dropdown-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.dashboard-dropdown-item {
  border-bottom: 1px solid #F0F0F0;
}

.dashboard-dropdown-item:last-child {
  border-bottom: none;
}

.dashboard-dropdown-link {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  text-decoration: none;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 18px;
  letter-spacing: 0%;
  color: #2D2D2D;
  background-color: #FFFFFF;
  border-radius: 0;
  transition: background-color 0.3s ease, color 0.3s ease;
  width: 100%;
  text-align: left;
  border: none;
  cursor: pointer;
}

.dashboard-dropdown-link:hover {
  background-color: #F9F9F9;
  color: #2D2D2D;
}

.dashboard-dropdown-item.active .dashboard-dropdown-link {
  background-color: #2D2D2D;
  color: #C9A24D;
}

.dashboard-dropdown-item.active .dashboard-dropdown-link .dropdown-icon {
  color: #C9A24D;
}

.dashboard-dropdown-link .dropdown-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  display: block;
  color: #2D2D2D;
  font-size: var(--font-size-body);
}

.dashboard-dropdown-link:hover .dropdown-icon {
  color: #2D2D2D;
}

.dashboard-dropdown-item.active .dashboard-dropdown-link .dropdown-icon {
  color: #C9A24D;
}

.dashboard-dropdown-link .dropdown-icon[src*="cv.svg"] {
  width: 14px;
  height: 17px;
}

.dashboard-dropdown-link-form {
  width: 100%;
}

.dashboard-dropdown-link-form .dashboard-dropdown-link {
  width: 100%;
}

/* Responsive Styles for Dashboard Header */
@media (max-width: 1200px) {
  .dashboard-header-content {
    padding: 0 20px;
  }

  .dashboard-search-wrapper {
    max-width: 400px;
  }

  .dashboard-dropdown-toggle span {
    display: none;
  }

  .dashboard-dropdown-toggle {
    padding: 10px 12px;
    min-width: auto;
  }
}

@media (max-width: 991.98px) {
  .dashboard-header-content {
    padding: 0 16px;
    flex-wrap: nowrap;
  }

  .dashboard-search-wrapper {
    max-width: 280px;
    min-width: 200px;
  }

  .dashboard-search-input {
    font-size: var(--font-size-body);
  }

  .dashboard-header-icons {
    gap: 8px;
    flex-shrink: 0;
  }

  .dashboard-icon-btn {
    padding: 6px;
  }

  .dashboard-icon-btn img {
    width: 20px;
    height: 20px;
  }

  .profile-btn img {
    width: 36px;
    height: 36px;
  }

  .dashboard-dropdown-toggle {
    padding: 8px 10px;
  }

  .dashboard-dropdown-toggle .dropdown-icon {
    width: 18px;
    height: 18px;
  }

  .dashboard-dropdown-toggle .dropdown-caret {
    width: 10px;
    height: 10px;
  }
}

@media (max-width: 768px) {
  .dashboard-header {
    padding: 12px 0;
  }

  .dashboard-header-content {
    padding: 0 12px;
    gap: 8px;
  }

  .dashboard-search-wrapper {
    max-width: 200px;
    min-width: 150px;
  }

  .dashboard-search-box {
    padding: 8px 12px;
  }

  .dashboard-search-icon {
    width: 18px;
    height: 18px;
    margin-right: 8px;
  }

  .dashboard-search-input {
    font-size: var(--font-size-body);
  }

  .dashboard-header-icons {
    gap: 6px;
  }

  .dashboard-icon-btn {
    padding: 4px;
  }

  .dashboard-icon-btn img {
    width: 18px;
    height: 18px;
  }

  .profile-btn img {
    width: 32px;
    height: 32px;
  }

  .profile-status-dot {
    width: 8px;
    height: 8px;
    top: 1px;
    right: 1px;
  }

  .notification-badge {
    width: 6px;
    height: 6px;
    top: 4px;
    right: 4px;
  }

  .dashboard-dropdown-toggle {
    padding: 6px 8px;
  }

  .dashboard-dropdown-toggle .dropdown-icon {
    width: 16px;
    height: 16px;
  }
}

@media (max-width: 575.98px) {
  .dashboard-header {
    padding: 10px 0;
  }

  .dashboard-header-content {
    padding: 0 10px;
    flex-wrap: wrap;
    gap: 10px;
  }

  .dashboard-search-wrapper {
    max-width: 100%;
    order: 1;
    width: 100%;
    min-width: 100%;
  }

  .dashboard-search-box {
    width: 100%;
  }

  .dashboard-header-icons {
    order: 2;
    gap: 6px;
    width: 100%;
    justify-content: space-between;
  }

  .dashboard-icon-btn {
    padding: 6px;
  }

  .dashboard-icon-btn img {
    width: 20px;
    height: 20px;
  }

  .profile-btn img {
    width: 36px;
    height: 36px;
  }

  .dashboard-profile-dropdown {
    flex: 1;
    min-width: 0;
  }

  .dashboard-dropdown-toggle {
    width: 100%;
    justify-content: center;
    padding: 8px 12px;
  }

  .dashboard-dropdown-toggle span {
    display: inline;
    font-size: var(--font-size-body);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 120px;
  }

  .dashboard-dropdown-menu {
    right: 0;
    left: 0;
    min-width: 100%;
    width: 100%;
  }
}

/* Dashboard Hero Section (height reduced further 20%) */
.dashboard-hero-section {
  background-color: #F5F5F5;
  padding: 34px 0 45px;
  /* min-height: calc(100vh - 200px); */
}

/* Welcome Section */
.dashboard-welcome {
  text-align: center;
  margin-bottom: 60px;
}

.dashboard-welcome-content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-bottom: 16px;
}

.dashboard-welcome-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}

.dashboard-welcome-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #2D2D2D;
  margin: 0;
}

.dashboard-welcome-subtitle {
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #6B6B6B;
  margin: 0;
}

/* Dashboard Cards Row */
.dashboard-cards-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  max-width: 1400px;
  margin: 0 auto;
}

/* Dashboard Card */
.dashboard-card {
  background-color: #FFFFFF;
  
  padding: 10px;
  position: relative;
  display: flex;
  flex-direction: column;
  max-height: 142px;
  transition: border-color 0.3s ease, border-width 0.3s ease;
  overflow: hidden;
}

.dashboard-card:hover {
 border: 1px solid #C9A24D;
  border-width: 1px;
}

.dashboard-card-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 10px;
}

.dashboard-card-icon {
  width: 36px;
  height: 36px;
  flex-shrink: 0;
}

.dashboard-card-icon img {
  width: 100%;
  height: 100%;
  display: block;
}

.dashboard-card-trend,
.dashboard-card-status,
.dashboard-card-action,
.dashboard-card-tag {
  display: flex;
  align-items: center;
  gap: 4px;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.2;
}

.trend-text.positive {
  color: #22C55E;
}

.status-text {
  color: #2D2D2D;
}

.action-text {
  color: #22C55E;
}

.dashboard-card-tag {
  background: linear-gradient(135deg, #F5E6D3 0%, #E8D4B8 100%);
  padding: 4px 8px;
  border-radius: 4px;
}

.tag-text {
  color: #C9A24D;
  font-weight: 500;
}

.dashboard-card-content {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.dashboard-card-label-value-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  /* margin-bottom: 8px; */
}

.dashboard-card-label {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 20px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #6B7280;
  margin: 0;
}

.dashboard-card-value {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-headline);
  line-height: 32px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #111111;
  margin: 0;
}

/* Progress Bar for Profile Status Card */
.dashboard-progress-wrapper {
  /* margin-top: 8px; */
}

.dashboard-progress-bar {
  width: 100%;
  height: 6px;
  background-color: #E8E8E8;
  margin-bottom: 6px;
  position: relative;
  overflow: hidden;
}

.dashboard-progress-fill {
  height: 100%;
  background: linear-gradient(90deg, #C9A24D 0%, #D4B233 100%);
  transition: width 0.3s ease;
}

.dashboard-progress-text {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.3;
  color: #2D2D2D;
  margin: 0;
}

/* Responsive Styles for Dashboard Hero */
@media (max-width: 1200px) {
  .dashboard-cards-row {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}

@media (max-width: 768px) {
  .dashboard-hero-section {
    padding: 22px 0 34px;
  }

  .dashboard-welcome {
    margin-bottom: 40px;
  }

  .dashboard-welcome-title {
    font-size: var(--font-size-title);
  }

  .dashboard-welcome-subtitle {
    font-size: var(--font-size-body);
  }

  .dashboard-cards-row {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .dashboard-card {
    padding: 20px;
  }

  .dashboard-card-value {
    font-size: var(--font-size-title);
  }
}

/* Dashboard Main Section */
.dashboard-main-section {
  background-color: #F5F5F5;
  padding: 40px 0 80px;
}

.dashboard-main-layout {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 32px;
  max-width: 1400px;
  margin: 0 auto;
}

/* Left Column */
.dashboard-left-column {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

/* Pro Tip Banner */
.dashboard-pro-tip {
  background-color: #2D2D2D;
  border-radius: 0px;
  padding: 32px;
  position: relative;
  overflow: hidden;
}

.pro-tip-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  z-index: 2;
}

.pro-tip-text {
  flex: 1;
  max-width: 70%;
}

.pro-tip-heading {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #C9A24D;
  margin: 0 0 12px 0;
  text-transform: capitalize;
  letter-spacing: 0.5px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.pro-tip-icon {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

.pro-tip-title {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-headline);
  line-height: 32px;
  color: #FFFFFF;
  margin: 0 0 16px 0;
  letter-spacing: 0.5px;
}

.pro-tip-description {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #E5E5E5;
  margin: 0 0 24px 0;
  letter-spacing: 0.5px;

}

.pro-tip-button {
  background: linear-gradient(90deg, #C9A24D 0%, #D4B233 100%);
  border: none;
  border-radius: 0px;
  padding: 12px 24px;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #FFFFFF;
  cursor: pointer;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.pro-tip-button:hover {
  opacity: 0.9;
  transform: translateY(-2px);
}

.pro-tip-icon-wrapper {
  position: relative;
  flex-shrink: 0;
}

.pro-tip-icon-circle {
  width: 120px;
  height: 120px;
  background-color: rgba(45, 45, 45, 0.6);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(10px);
}

/* Recommended Section */
.dashboard-recommended {
  /* background-color: #FFFFFF; */
  border-radius: opx;
  /* padding: 24px; */
}

.recommended-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2px;
}

.recommended-title {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-headline);
  line-height: 32px;
  color: #111111;
  margin: 0;
  letter-spacing: 0.5px;
}

.recommended-view-all {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #6B7280;
  text-decoration: none;
  transition: color 0.3s ease;
}

.recommended-view-all:hover {
  color: #BD9A1D;
}

/* Job Card */
.dashboard-job-card {
  background-color: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 0px;
  padding: 24px;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.dashboard-job-card:hover {
  border-color: #C9A24D;
  box-shadow: 0 4px 12px rgba(201, 162, 77, 0.1);
}

.job-card-title-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
}

.job-card-badge {
  background-color: #F5F5F5;
  border: 1px solid #E5E5E5;
  border-radius: 6px;
  padding: 4px 12px;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #2D2D2D;
  flex-shrink: 0;
}

.job-card-salary {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #111111;
}

.job-card-content {
  margin-bottom: 24px;
}

.job-card-title {
  font-family: 'Neue Montreal', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-section-title);
  line-height: 1.2;
  color: #111111;
  margin: 0;
  flex: 1;
}

.job-card-company {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #2D2D2D;
}

.job-card-company img {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}

.job-card-skills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}

.skill-tag {
  background-color: #F5F5F5;
  border-radius: 0px;
  padding: 6px 12px;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #2D2D2D;
}

.job-card-meta {
  max-width: 450px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
}

.job-meta-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #6B7280;
}

.job-meta-column {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.job-salary {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #111111;
}

.job-card-actions {
  display: flex;
  gap: 12px;
  padding-top: 20px;
  border-top: 1px solid #E5E5E5;
}

.job-card-button {
  flex: 1;
  padding: 12px 24px;
  border-radius: 0px;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-body);
  line-height: 1.4;
  cursor: pointer;
  transition: all 0.3s ease;
  border: 1px solid transparent;
}

.details-btn {
  background-color: #FFFFFF;
  border-color: #E5E5E5;
  color: #2D2D2D;
}

.details-btn:hover {
  border-color: #C9A24D;
  color: #C9A24D;
}

.apply-btn {
  background: linear-gradient(90deg, #C9A24D 0%, #D4B233 100%);
  color: #FFFFFF;
}

.apply-btn:hover { 
  color: white !important;
  transform: translateY(-2px);
}

/* Right Column - Recent Activity */
.dashboard-right-column {
  display: flex;
  flex-direction: column;
}

.dashboard-activity {
  width: 100%;
  max-width: 272px;
  background-color: #FFFFFF;
  border-radius: 0px;
  padding: 24px;
  /* position: sticky; */
  top: 20px;
  height: 100%;
}

.activity-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
}

.activity-title {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-body);
  line-height: 24px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #111111;
  margin: 0;
}

.activity-view-all {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #C9A24D;
  text-decoration: none;
  transition: color 0.3s ease;
}

.activity-view-all:hover {
  color: #BD9A1D;
}

/* Activity Timeline */
.activity-timeline {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.activity-item {
  display: flex;
  gap: 12px;
  position: relative;
  padding-left: 0;
}

.activity-item:not(:last-child)::after {
  content: '';
  position: absolute;
  left: 15px;
  top: 32px;
  bottom: -20px;
  width: 1px;
  background-color: #E5E5E5;
}

.activity-icon {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
}

.activity-icon img {
  width: 100%;
  height: 100%;
  display: block;
}

.activity-content {
  flex: 1;
  padding-top: 0;
}

.activity-item-title {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 20px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #111111;
  margin: 0 0 4px 0;
}

.activity-text {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 20px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #6B7280;
  margin: 0 0 4px 0;
}

.activity-time {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #6B7280;
}

/* Responsive Styles for Dashboard Main Section */
@media (max-width: 1200px) {
  .dashboard-main-layout {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .dashboard-activity {
    position: static;
  }
}

@media (max-width: 768px) {
  .dashboard-main-section {
    padding: 24px 0 60px;
  }

  .dashboard-pro-tip {
    padding: 24px;
  }

  .pro-tip-content {
    flex-direction: column;
    gap: 24px;
  }

  .pro-tip-text {
    max-width: 100%;
  }

  .pro-tip-title {
    font-size: var(--font-size-headline);
  }

  .pro-tip-icon-circle {
    width: 80px;
    height: 80px;
  }

  .dashboard-recommended,
  .dashboard-activity {
    padding: 20px;
  }

  .job-card-actions {
    flex-direction: column;
  }

  .job-card-button {
    width: 100%;
  }
}

/* CV Management Section */
.cv-management-section {
  background-color: #F5F5F5;
  padding: 60px 0 80px;
  min-height: calc(100vh - 200px);
}

.cv-management-wrapper {
  max-width: 704px;
  margin: 0 auto;
  padding: 0 24px;
}

/* CV Management Header */
.cv-management-header {
  text-align: center;
  margin-bottom: 48px;
}

.cv-management-title {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-headline);
  line-height: 32px;
  letter-spacing: 0%;
  text-align: center;
  color: #111111;
  margin: 0 0 16px 0;
}

.cv-management-subtitle {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #6B7280;
  margin: 0;
}

/* CV Content Wrapper */
.cv-content-wrapper {
  border: 1px solid #DDC17C;
  border-radius: 0;
  padding: 24px;
}

/* CV Upload Section */
.cv-upload-section {
  margin-bottom: 40px;
}

.cv-upload-title {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-headline);
  line-height: 1.4;
  color: #111111;
  margin: 0 0 24px 0;
}

.cv-upload-area {
  display: flex;
    flex-direction: column;
    align-items: center;
  border: 2px dashed #C9A24D;
  border-radius: 0;
  padding: 60px 40px;
  text-align: center;
  background-color: #FFFFFF;
  transition: border-color 0.3s ease, background-color 0.3s ease;
}

.cv-upload-area:hover {
  border-color: #BD9A1D;
  background-color: #FEFEFE;
}

.cv-upload-icon-wrapper {
  margin-bottom: 24px;
  display: flex;
  justify-content: center;
}

.cv-upload-label {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-headline);
  line-height: 20px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #20262B;
  margin: 0 0 12px 0;
}

.cv-upload-instruction {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #6B7280;
  margin: 0 0 24px 0;
}

.cv-choose-file-btn {
  background-color: #2D2D2D;
  border: none;
  border-radius: 0;
  padding: 12px 24px;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  line-height: 1.4;
  color: #FFFFFF;
  cursor: pointer;
  transition: background-color 0.3s ease, transform 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.cv-choose-file-icon {
  flex-shrink: 0;
}

.cv-choose-file-btn:hover {
  background-color: #1A1A1A;
  transform: translateY(-2px);
}

/* CV Tips Section */
.cv-tips-section {
  margin-bottom: 40px;
  border: 1px solid #E5E5E7;
  border-radius: 0;
  padding: 24px;
}

.cv-section-title {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-headline);
  line-height: 1.4;
  color: #111111;
  margin: 0 0 20px 0;
}

.cv-tips-list,
.cv-requirements-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.cv-tip-item,
.cv-requirement-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 0;
}

.cv-tip-item:last-child,
.cv-requirement-item:last-child {
  margin-bottom: 0;
}

/* 2 columns for File Requirements on 1440px and above */
@media (min-width: 1440px) {
  .cv-requirements-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
}

.cv-tip-icon,
.cv-requirement-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  margin-top: 2px;
}

.cv-tip-item span,
.cv-requirement-item span {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 24px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #6B7280;
}

/* CV Requirements Section */
.cv-requirements-section {
  margin-bottom: 40px;
  border: 1px solid #E5E5E7;
  border-radius: 0;
  padding: 24px;
}

/* CV Upload Action */
.cv-upload-action {
  display: flex;
  justify-content: flex-end;
  margin-top: 40px;
}

.cv-upload-btn {
  background-color: #2D2D2D;
  border: none;
  border-radius: 0;
  padding: 14px 32px;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-button);
  line-height: 1.4;
  color: #FFFFFF;
  cursor: pointer;
  transition: background-color 0.3s ease, transform 0.3s ease;
}

.cv-upload-btn:hover {
  background-color: #1A1A1A;
  transform: translateY(-2px);
}

/* Responsive Styles for CV Management */
@media (max-width: 768px) {
  .cv-management-section {
    padding: 40px 0 60px;
  }

  .cv-management-wrapper {
    padding: 0 16px;
  }

  .cv-management-title {
    font-size: var(--font-size-title);
  }

  .cv-upload-area {
    padding: 40px 24px;
  }

  .cv-upload-action {
    justify-content: center;
  }

  .cv-upload-btn {
    width: 100%;
    max-width: 300px;
  }
}

@media (max-width: 575.98px) {
  .cv-management-title {
    font-size: var(--font-size-title);
  }

  .cv-management-subtitle {
    font-size: var(--font-size-body);
  }

  .cv-upload-area {
    padding: 32px 16px;
  }

  .cv-upload-icon-wrapper svg {
    width: 40px;
    height: 40px;
  }

  .cv-upload-label {
    font-size: var(--font-size-body);
  }

  .cv-upload-instruction {
    font-size: var(--font-size-body);
  }
}

/* Create Job Post Section */
.create-job-section {
  background-color: #F5F5F5;
  padding: 60px 0 80px;
  min-height: calc(100vh - 200px);
}

.create-job-wrapper {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 24px;
}

/* Header */
.create-job-header {
  text-align: center;
  margin-bottom: 48px;
}

.create-job-title {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #111111;
  margin: 0 0 12px 0;
}

.create-job-subtitle {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #6B7280;
  margin: 0;
}

/* Progress Stepper */
.job-stepper {
  margin-bottom: 48px;
}

.stepper-container {
  display: flex;
  align-items: flex-start;
  position: relative;
  max-width: 800px;
  margin: 0 auto;
}

.stepper-container {
  display: flex;
  align-items: flex-start;
  position: relative;
}

.stepper-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
  position: relative;
  z-index: 2;
}

.stepper-circle {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #FFFFFF;
  border: 2px solid #D1D5DB;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
  position: relative;
  z-index: 2;
}

.stepper-circle.active {
  background-color: #FFFFFF;
  border: 2px solid #C9A24D;
}

.stepper-circle.completed {
  background-color: #C9A24D;
  border: 2px solid #C9A24D;
}

.stepper-number {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-body);
  color: #9CA3AF;
}

.stepper-circle.active .stepper-number {
  color: #C9A24D;
}

.stepper-circle svg {
  display: none;
}

.stepper-circle.completed svg {
  display: block;
}

.stepper-circle.completed .stepper-number {
  display: none;
}

.stepper-content {
  text-align: center;
}

.stepper-title {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #111111;
  margin: 0 0 4px 0;
}

.stepper-step:not(.active):not(.completed) .stepper-title {
  font-weight: 400;
  color: #6B7280;
}

.stepper-subtitle {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #6B7280;
  margin: 0;
}

.stepper-line-connector {
  flex: 1;
  height: 2px;
  background-color: #9CA3AF;
  margin: 0 10px;
  margin-top: 20px;
  position: relative;
  z-index: 1;
  align-self: flex-start;
}

.stepper-line-connector.active {
  background-color: #C9A24D;
}

/* Form Container */
.job-form-container {
  margin-bottom: 40px;
}

.job-form-step {
  display: none;
}

.job-form-step.active {
  display: block;
}

.job-form-card {
  background-color: #FFFFFF;
  border-radius: 12px;
  padding: 32px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.job-form-section-title {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-headline);
  line-height: 1.4;
  color: #111111;
  margin: 0 0 24px 0;
}

.job-form-fields {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.form-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.form-field label {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #111111;
}

.form-field input,
.form-field select,
.form-field textarea {
  padding: 12px 16px;
  border: 1px solid #E5E5E5;
  border-radius: 0;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #111111;
  background-color: #FFFFFF;
  transition: border-color 0.3s ease;
}

.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus {
  outline: none;
  border-color: #C9A24D;
}

.form-field input::placeholder,
.form-field textarea::placeholder {
  color: #9E9E9E;
}

.form-field select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  padding-right: 40px;
}

.form-field-full {
  width: 100%;
}

.form-field-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

/* Perks Section */
.perks-section {
  margin-top: 8px;
}

.perks-title {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #111111;
  margin: 0 0 16px 0;
}

.perks-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.perk-checkbox {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

.perk-checkbox input[type="checkbox"] {
  width: 20px;
  height: 20px;
  border: 1px solid #E5E5E5;
  border-radius: 0;
  cursor: pointer;
  appearance: none;
  position: relative;
  flex-shrink: 0;
}

.perk-checkbox input[type="checkbox"]:checked {
  background-color: #C9A24D;
  border-color: #C9A24D;
}

.perk-checkbox input[type="checkbox"]:checked::after {
  content: '';
  position: absolute;
  top: 2px;
  left: 6px;
  width: 6px;
  height: 10px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.perk-checkbox span {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #111111;
}

/* Job Preview */
.job-preview-card {
  background-color: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 12px;
  padding: 24px;
  margin-bottom: 24px;
}

.job-preview-title-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
}

.job-preview-title {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-headline);
  line-height: 1.3;
  color: #111111;
  margin: 0;
}

.job-preview-badge {
  background-color: #2D2D2D;
  color: #FFFFFF;
  padding: 6px 12px;
  border-radius: 0;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 1.4;
}

.job-preview-company {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
}

.job-preview-company img {
  width: 24px;
  height: 24px;
}

.job-preview-company span {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  color: #111111;
}

.job-preview-skills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}

.skill-tag {
  background-color: #F5F5F5;
  color: #6B7280;
  padding: 6px 12px;
  border-radius: 0;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.4;
}

.job-preview-meta {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 12px;
}

.job-meta-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #6B7280;
}

.job-salary {
  font-weight: 600;
  color: #111111;
}

.job-preview-actions {
  display: flex;
  gap: 12px;
  margin-top: 24px;
}

.job-preview-btn {
  padding: 10px 20px;
  border-radius: 0;
  border: none;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  cursor: pointer;
  transition: all 0.3s ease;
  width: 100%;
}

.details-btn {
  background-color: #F5F5F5;
  color: #111111;
}

.apply-btn {
  background-color: #C9A24D;
  color: #FFFFFF;
}

/* Summary Card */
.job-summary-card {
  background-color: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 12px;
  padding: 24px;
}

.summary-title {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-headline);
  line-height: 1.4;
  color: #111111;
  margin: 0 0 20px 0;
}

.summary-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid #F5F5F5;
}

.summary-item:last-child {
  border-bottom: none;
}

.summary-label {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  color: #6B7280;
}

.summary-value {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  color: #111111;
}

.urgency-high {
  color: #EF4444;
}

/* Navigation Buttons */
.job-form-navigation {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 40px;
}

.job-nav-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  border-radius: 0;
  border: none;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  cursor: pointer;
  transition: all 0.3s ease;
}

.back-btn {
  background-color: #F5F5F5;
  color: #111111;
}

.back-btn:hover {
  background-color: #E5E5E5;
}

.continue-btn {
  background-color: #2D2D2D;
  color: #FFFFFF;
}

.continue-btn:hover {
  background-color: #1A1A1A;
}

.job-nav-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/* Responsive Styles */
@media (max-width: 768px) {
  .create-job-wrapper {
    padding: 0 16px;
  }

  .create-job-title {
    font-size: var(--font-size-headline);
  }

  .stepper-container {
    flex-wrap: wrap;
    gap: 20px;
  }

  .stepper-step {
    flex: 0 0 calc(50% - 10px);
  }

  .form-field-row {
    grid-template-columns: 1fr;
  }

  .perks-grid {
    grid-template-columns: 1fr;
  }

  .job-preview-title-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .job-preview-actions {
    flex-direction: column;
  }

  .job-preview-btn {
    width: 100%;
  }
}

/* Employer Dashboard Section */
.employer-dashboard-section {
  background-color: #F5F5F5;
  padding: 60px 0 80px;
  min-height: calc(100vh - 200px);
}

.employer-dashboard-wrapper {
  max-width: 1200px;
  margin: 0 auto;
  /* padding: 0 24px; */
  position: relative;
}

/* Header */
.employer-dashboard-header {
  text-align: center;
  margin-bottom: 48px;
}

.employer-dashboard-title {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-headline);
  line-height: 32px;
  letter-spacing: 0%;
  text-align: center;
  color: #111111;
  margin: 0 0 12px 0;
}

.employer-dashboard-subtitle {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #6B7280;
  margin: 0;
}

/* Recent Applications Card */
.recent-applications-card {
  background-color: #FFFFFF;
  border: 1px solid #E5E5E7;
  border-radius: 0;
  /* padding: 24px; */
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  margin-bottom: 24px;
}

.applications-card-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px;
  /* margin-bottom: 24px; */
}

.applications-title-wrapper {
  display: flex;
  align-items: center;
  gap: 12px;
}

.applications-title {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-headline);
  line-height: 1.4;
  color: #111111;
  margin: 0;
}

.applications-count {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #9333EA;
}

.view-all-btn {
  padding: 8px 16px;
  border: 1px solid #E5E5E5;
  border-radius: 0;
  background-color: #FFFFFF;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  color: #111111;
  cursor: pointer;
  transition: all 0.3s ease;
}

.view-all-btn:hover {
  background-color: #F5F5F5;
}

/* Applications Table */
.applications-table-wrapper {
  overflow-x: auto;
}

.applications-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #E5E5E7;
  border-radius: 0;
}

.applications-table thead {
  background-color: #F9FAFB;
}

.applications-table th {
  padding: 12px 16px;
  text-align: left;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #6B7280;
  border-bottom: 1px solid #E5E5E5;
}

.applications-table td {
  padding: 16px;
  border-bottom: 1px solid #F3F4F6;
}

.applications-table tbody tr:hover {
  background-color: #F9FAFB;
}

.applications-table tbody tr:last-child td {
  border-bottom: none;
}

/* Applicant Info */
.applicant-info {
  display: flex;
  align-items: center;
  gap: 12px;
}

.applicant-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
}

.applicant-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.avatar-placeholder {
  width: 100%;
  height: 100%;
  background-color: #FCE7F3;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-body);
  color: #EC4899;
}

.applicant-details {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.applicant-name {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #111111;
}

.applicant-handle {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: #6B7280;
}

.job-title {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-job-title);
  line-height: 20px;
  letter-spacing: 0%;
  color: #2D2D2D;
}

.match-percentage {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 20px;
  letter-spacing: 0%;
  color: #2D2D2D;
}

/* Status Badge */
.status-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  border-radius: 0;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 1.4;
}

.status-badge.status-interview,
.status-badge.status-new,
.status-badge.status-screening,
.status-badge.status-offer {
  color: #22C55E;
  background-color: #F0FDF4;
}

.status-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #22C55E;
}

.applied-time {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 18px;
  letter-spacing: 0%;
  background: linear-gradient(180deg, #90AEED 0%, #3F5793 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* Action Icons */
.action-icons {
  display: flex;
  align-items: center;
  gap: 12px;
}

.action-icon-btn {
  background: none;
  border: none;
  padding: 4px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s ease;
}

.action-icon-btn:hover {
  opacity: 0.7;
}

.action-icon-btn svg {
  display: block;
}

/* Post New Job Button */
.post-job-button-wrapper {
  /* position: fixed; */
  /* bottom: 40px; */
  /* right: 40px; */
  /* z-index: 100; */
  display: flex;
  justify-content: flex-end;
}

.post-job-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 14px 24px;
  border: 2px solid #C9A24D;
  border-radius: 0;
  background-color: #FFFFFF;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-body);
  color: #C9A24D;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.post-job-btn:hover {
  background-color: #C9A24D;
  color: #FFFFFF;
}

.post-job-btn svg {
  flex-shrink: 0;
}

/* Responsive Styles */
@media (max-width: 768px) {
  .employer-dashboard-wrapper {
    /* padding: 0 16px; */
  }

  .employer-dashboard-title {
    font-size: var(--font-size-headline);
  }

  .applications-card-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }

  .applications-table-wrapper {
    overflow-x: scroll;
  }

  .applications-table {
    min-width: 800px;
  }

  .post-job-button-wrapper {
    bottom: 20px;
    right: 20px;
  }

  .post-job-btn {
    padding: 12px 20px;
    font-size: var(--font-size-body);
  }
}

/* PROJECT RECRUITING PAGE STYLES */

.project-recruiting-line {
  width: 48px;
  height: 3px;
  background: #DDC17C;
   margin-top: 6px; 
  margin-bottom: 0;
}

.project-recruiting-hero-subtitle {
  font-size: var(--font-size-headline);
  color: #ffffff;
  margin: 20px 0 0 0;
  font-family: 'Inter', sans-serif;
}

.project-recruiting-section {
  padding: 80px 0;
  background-color: #ffffff;
}

.project-recruiting-section-alt {
  background-color: #fafafa;
}

.project-recruiting-section-dark {
  background-color: #2B2B2B;
  padding: 80px 0;
}

.project-recruiting-content {
  max-width: 900px;
  margin: 0 auto;
}

.project-recruiting-text {
  font-size: var(--font-size-body);
  color: #666;
  line-height: 1.8;
  margin-bottom: 20px;
  font-family: 'Inter', sans-serif;
}

.project-recruiting-text:last-child {
  margin-bottom: 0;
}

.project-recruiting-heading {
  font-size: var(--font-size-title);
  font-weight: 700;
  color: #1a1a1a;
  margin: 0 0 20px 0;
  font-family: 'Poppins', sans-serif;
}

.project-recruiting-heading-large {
  font-size: var(--font-size-headline);
  font-weight: 600;
  color: #d0af32;
  margin: 0 0 30px 0;
  font-family: 'Poppins', sans-serif;
}

.project-recruiting-subheading {
  font-size: var(--font-size-headline);
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 10px 0;
  font-family: 'Poppins', sans-serif;
}

.project-recruiting-contact-image {
  width: 100%;
  height: 400px;
  background-color: #e5e5e5;
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.project-recruiting-contact-image i {
  font-size: 120px;
  color: #999;
}

.project-recruiting-contact-info {
  margin-bottom: 30px;
}

.project-recruiting-contact-item {
  font-size: var(--font-size-body);
  color: #666;
  margin: 5px 0;
  font-family: 'Inter', sans-serif;
}

.project-recruiting-contact-item i {
  color: #d0af32;
  margin-right: 10px;
}

.project-recruiting-contact-item a {
  color: #666;
  text-decoration: none;
  transition: color 0.3s ease;
}

.project-recruiting-contact-item a:hover {
  color: #d0af32;
}

.project-recruiting-partnership-visual {
  position: relative;
  width: 100%;
  height: 400px;
  background: linear-gradient(135deg, #d0af32 0%, #DDC17C 50%, #d0af32 100%);
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.project-recruiting-partnership-overlay-left {
  position: absolute;
  left: 0;
  top: 0;
  width: 50%;
  height: 100%;
  background-color: rgba(26, 26, 26, 0.3);
}

.project-recruiting-partnership-overlay-right {
  position: absolute;
  right: 0;
  top: 0;
  width: 50%;
  height: 100%;
  background-color: rgba(26, 26, 26, 0.1);
}

.project-recruiting-partnership-icon {
  position: relative;
  z-index: 2;
  text-align: center;
}

.project-recruiting-partnership-icon i {
  font-size: 80px;
  color: #1a1a1a;
  opacity: 0.7;
}

.project-recruiting-partnership-text {
  font-size: var(--font-size-headline);
  font-weight: 600;
  color: #ffffff;
  margin: 0 0 20px 0;
  font-family: 'Poppins', sans-serif;
}

.project-recruiting-partnership-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  margin-bottom: 30px;
}

.project-recruiting-partnership-logo-icon {
  width: 60px;
  height: 60px;
  background: linear-gradient(135deg, #d0af32 0%, #DDC17C 100%);
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.project-recruiting-partnership-logo-icon i {
  font-size: 30px;
  color: #1a1a1a;
}

.project-recruiting-partnership-logo-text {
  font-size: var(--font-size-title);
  font-weight: 700;
  color: #ffffff;
  margin: 0;
  font-family: 'Poppins', sans-serif;
}

.project-recruiting-partnership-subtext {
  font-size: var(--font-size-headline);
  color: #d0af32;
  margin: 0 0 30px 0;
  font-family: 'Inter', sans-serif;
}

.project-recruiting-btn-outline {
  background: transparent;
  border: 2px solid #d0af32;
  border-radius: 0;
  color: #d0af32;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  padding: 10px 30px;
  text-decoration: none;
  display: inline-block;
  transition: all 0.3s;
}

.project-recruiting-btn-outline:hover {
  background-color: #d0af32;
  color: #1a1a1a;
  border-color: #d0af32;
}

/* Responsive Styles for Project Recruiting */
@media (max-width: 991.98px) {
  .project-recruiting-hero-subtitle {
    font-size: var(--font-size-headline);
  }

  .project-recruiting-section {
    padding: 60px 0;
  }

  .project-recruiting-section-dark {
    padding: 60px 0;
  }

  .project-recruiting-heading {
    font-size: var(--font-size-headline);
  }

  .project-recruiting-heading-large {
    font-size: var(--font-size-body);
  }

  .project-recruiting-text {
    font-size: var(--font-size-body);
  }

  .project-recruiting-contact-image {
    height: 300px;
  }

  .project-recruiting-contact-image i {
    font-size: 80px;
  }

  .project-recruiting-partnership-visual {
    height: 300px;
  }

  .project-recruiting-partnership-icon i {
    font-size: var(--font-size-title);
  }

  .project-recruiting-partnership-logo-text {
    font-size: var(--font-size-headline);
  }
}

@media (max-width: 767.98px) {
  .project-recruiting-hero-subtitle {
    font-size: var(--font-size-headline);
    margin: 15px 0 0 0;
  }

  .project-recruiting-section {
    padding: 40px 0;
  }

  .project-recruiting-section-dark {
    padding: 40px 0;
  }

  .project-recruiting-heading {
    font-size: var(--font-size-headline);
    margin-bottom: 15px;
  }

  .project-recruiting-heading-large {
    font-size: var(--font-size-body);
    margin-bottom: 20px;
  }

  .project-recruiting-subheading {
    font-size: var(--font-size-body);
  }

  .project-recruiting-text {
    font-size: var(--font-size-body);
    margin-bottom: 15px;
  }

  .project-recruiting-contact-image {
    height: 250px;
    margin-bottom: 30px;
  }

  .project-recruiting-contact-image i {
    font-size: var(--font-size-title);
  }

  .project-recruiting-partnership-visual {
    height: 250px;
    margin-bottom: 30px;
  }

  .project-recruiting-partnership-icon i {
    font-size: 50px;
  }

  .project-recruiting-partnership-text {
    font-size: var(--font-size-headline);
  }

  .project-recruiting-partnership-logo {
    flex-direction: column;
    gap: 10px;
  }

  .project-recruiting-partnership-logo-text {
    font-size: var(--font-size-headline);
  }

  .project-recruiting-partnership-subtext {
    font-size: var(--font-size-body);
  }
}

@media (max-width: 575.98px) {
  .project-recruiting-hero-subtitle {
    font-size: var(--font-size-body);
  }

  .project-recruiting-section {
    padding: 30px 0;
  }

  .project-recruiting-section-dark {
    padding: 30px 0;
  }

  .project-recruiting-heading {
    font-size: var(--font-size-headline);
  }

  .project-recruiting-heading-large {
    font-size: var(--font-size-body);
  }

  .project-recruiting-text {
    font-size: var(--font-size-body);
  }

  .project-recruiting-contact-image {
    height: 200px;
  }

  .project-recruiting-contact-image i {
    font-size: 50px;
  }

  .project-recruiting-partnership-visual {
    height: 200px;
  }

  .project-recruiting-partnership-icon i {
    font-size: var(--font-size-title);
  }

  .project-recruiting-partnership-text {
    font-size: var(--font-size-headline);
  }

  .project-recruiting-partnership-logo-text {
    font-size: var(--font-size-headline);
  }

  .project-recruiting-partnership-subtext {
    font-size: var(--font-size-body);
  }
}

/* EMPLOYMENT MODAL PAGE STYLES */
.employment-modal-section {
  padding: 80px 0;
  background-color: #ffffff;
}

.employment-modal-section-alt {
  background-color: #fafafa;
}

.employment-modal-diagram-container {
  position: relative;
  padding: 40px;
  background-color: #fafafa;
  border-radius: 0;
}

.employment-modal-diagram-container-white {
  background-color: #ffffff;
}

.employment-modal-logo-wrapper {
  text-align: center;
  margin-bottom: 40px;
}

.employment-modal-logo-box {
  display: inline-block;
  width: 80px;
  height: 80px;
  background-color: #e5e5e5;
  border-radius: 0;
  position: relative;
  padding: 20px;
}

.employment-modal-logo-triangle {
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-bottom: 25px solid #1a1a1a;
  margin: 0 auto;
}

.employment-modal-logo-text {
  font-size: var(--font-size-body);
  font-weight: 600;
  color: #1a1a1a;
  margin: 10px 0 0 0;
  font-family: 'Poppins', sans-serif;
}

.employment-modal-flow-diagram {
  position: relative;
  min-height: 400px;
}

.employment-modal-flow-diagram-small {
  min-height: 350px;
}

.employment-modal-top-labels {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}

.employment-modal-label {
  text-align: center;
  flex: 1;
}

.employment-modal-label-text {
  font-size: var(--font-size-body);
  color: #666;
  margin: 0;
  font-family: 'Inter', sans-serif;
}

.employment-modal-dotted-line-vertical {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 2px;
  height: 60px;
  border-left: 2px dotted #999;
}

.employment-modal-dotted-line-horizontal-top {
  position: absolute;
  top: 60px;
  left: 25%;
  width: 25%;
  border-top: 2px dotted #999;
}

.employment-modal-dotted-line-horizontal-top-right {
  position: absolute;
  top: 60px;
  right: 25%;
  width: 25%;
  border-top: 2px dotted #999;
}

.employment-modal-company-diamond {
  position: absolute;
  top: 100px;
  left: 15%;
  transform: translateX(-50%) rotate(45deg);
  width: 100px;
  height: 100px;
  background-color: #e5e5e5;
  border: 2px solid #999;
  border-radius: 0;
}

.employment-modal-company-diamond-alt {
  top: 120px;
}

.employment-modal-diamond-inner {
  transform: rotate(-45deg);
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.employment-modal-diamond-icon {
  font-size: var(--font-size-headline);
  color: #666;
}

.employment-modal-diamond-label {
  position: absolute;
  top: 220px;
  left: 15%;
  transform: translateX(-50%);
  font-size: var(--font-size-body);
  color: #666;
  white-space: nowrap;
  font-family: 'Inter', sans-serif;
}

.employment-modal-diamond-label-alt {
  top: 240px;
}

.employment-modal-candidate-diamond {
  position: absolute;
  top: 100px;
  right: 15%;
  transform: translateX(50%) rotate(45deg);
  width: 100px;
  height: 100px;
  background-color: #e5e5e5;
  border: 2px solid #999;
  border-radius: 0;
}

.employment-modal-candidate-diamond-bottom {
  bottom: 0;
  top: auto;
  left: 50%;
  right: auto;
  transform: translateX(-50%) rotate(45deg);
}

.employment-modal-candidate-label {
  position: absolute;
  top: 220px;
  right: 15%;
  transform: translateX(50%);
  font-size: var(--font-size-body);
  color: #666;
  white-space: nowrap;
  font-family: 'Inter', sans-serif;
}

.employment-modal-candidate-label-bottom {
  bottom: -30px;
  top: auto;
  left: 50%;
  right: auto;
  transform: translateX(-50%);
}

.employment-modal-employment-square {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 120px;
  height: 120px;
  background-color: #d0af32;
  border: 2px solid #DDC17C;
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.employment-modal-employment-square-top {
  position: relative;
  display: inline-block;
  width: 100px;
  height: 100px;
  background-color: #d0af32;
  border: 2px solid #DDC17C;
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.employment-modal-employment-icon {
  font-size: var(--font-size-title);
  color: #1a1a1a;
}

.employment-modal-employment-icon-small {
  font-size: var(--font-size-title);
}

.employment-modal-employment-label {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  font-size: var(--font-size-body);
  color: #666;
  white-space: nowrap;
  font-family: 'Inter', sans-serif;
}

.employment-modal-employment-label-top {
  font-size: var(--font-size-body);
  color: #666;
  margin: 10px 0 0 0;
  font-family: 'Inter', sans-serif;
}

.employment-modal-dotted-line-diagonal-left {
  position: absolute;
  bottom: 120px;
  left: 15%;
  width: 35%;
  border-top: 2px dotted #999;
  transform: rotate(-25deg);
  transform-origin: left;
}

.employment-modal-dotted-line-diagonal-right {
  position: absolute;
  bottom: 120px;
  right: 15%;
  width: 35%;
  border-top: 2px dotted #999;
  transform: rotate(25deg);
  transform-origin: right;
}

.employment-modal-dotted-line-diagonal-left-alt {
  top: 170px;
  bottom: auto;
}

.employment-modal-dotted-line-vertical-bottom {
  position: absolute;
  bottom: 100px;
  left: 50%;
  width: 2px;
  height: 80px;
  border-left: 2px dotted #999;
}

.employment-modal-heading {
  font-size: var(--font-size-title);
  font-weight: 700;
  color: #1a1a1a;
  margin: 0 0 24px 0;
  font-family: 'Poppins', sans-serif;
}

.employment-modal-text {
  font-size: var(--font-size-body);
  color: #666;
  line-height: 1.8;
  margin: 0;
  font-family: 'Inter', sans-serif;
}

/* Responsive Styles for Employment Modal */
@media (max-width: 991.98px) {
  .employment-modal-section {
    padding: 60px 0;
  }

  .employment-modal-diagram-container {
    padding: 30px;
  }

  .employment-modal-flow-diagram {
    min-height: 350px;
  }

  .employment-modal-flow-diagram-small {
    min-height: 300px;
  }

  .employment-modal-heading {
    font-size: var(--font-size-headline);
  }
}

@media (max-width: 767.98px) {
  .employment-modal-section {
    padding: 40px 0;
  }

  .employment-modal-diagram-container {
    padding: 20px;
    margin-bottom: 30px;
  }

  .employment-modal-logo-box {
    width: 60px;
    height: 60px;
    padding: 15px;
  }

  .employment-modal-logo-triangle {
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-bottom: 20px solid #1a1a1a;
  }

  .employment-modal-flow-diagram {
    min-height: 300px;
  }

  .employment-modal-flow-diagram-small {
    min-height: 250px;
  }

  .employment-modal-company-diamond,
  .employment-modal-candidate-diamond {
    width: 80px;
    height: 80px;
  }

  .employment-modal-diamond-icon {
    font-size: var(--font-size-headline);
  }

  .employment-modal-employment-square {
    width: 100px;
    height: 100px;
  }

  .employment-modal-employment-icon {
    font-size: var(--font-size-title);
  }

  .employment-modal-heading {
    font-size: var(--font-size-headline);
    margin-bottom: 20px;
  }

  .employment-modal-text {
    font-size: var(--font-size-body);
  }
}

@media (max-width: 575.98px) {
  .employment-modal-section {
    padding: 30px 0;
  }

  .employment-modal-diagram-container {
    padding: 15px;
  }

  .employment-modal-logo-box {
    width: 50px;
    height: 50px;
    padding: 12px;
  }

  .employment-modal-flow-diagram {
    min-height: 250px;
  }

  .employment-modal-flow-diagram-small {
    min-height: 200px;
  }

  .employment-modal-company-diamond,
  .employment-modal-candidate-diamond {
    width: 70px;
    height: 70px;
  }

  .employment-modal-diamond-icon {
    font-size: var(--font-size-headline);
  }

  .employment-modal-employment-square {
    width: 90px;
    height: 90px;
  }

  .employment-modal-employment-icon {
    font-size: var(--font-size-headline);
  }

  .employment-modal-heading {
    font-size: var(--font-size-headline);
  }
}

/* EXECUTIVE SEARCH PAGE STYLES */
.executive-search-section {
  padding: 80px 0;
  background-color: #ffffff;
}

.executive-search-section-alt {
  background-color: #fafafa;
}

.executive-search-heading {
  font-size: var(--font-size-title);
  font-weight: 700;
  color: #1a1a1a;
  margin: 0 0 16px 0;
  margin-top: 2.5rem;
  font-family: 'Poppins', sans-serif;
}

.executive-search-heading:first-child {
  margin-top: 0;
}

/* Strategic Executive & Key Role Search – timeline section */
.executive-strategic-section {
  position: relative;
  overflow: hidden;
  background: #ffffff;
  padding-top: 50px;
  padding-bottom: 50px;
}
.executive-strategic-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url("/images/es-bg-1.png");
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat;
  pointer-events: none;
}
.executive-strategic-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-section-title);
  color: #1a1a1a;
  line-height: 1.2;
  margin: 0 0 0;
}
.executive-strategic-accent-line {
  width: 48px;
  height: 3px;
  background: #DDC17C;
   margin-top: 6px; 
  margin-bottom: 0;
}
.executive-strategic-intro {
  font-family: 'Inter', sans-serif;
  font-size: var(--font-size-headline-text) !important;
  line-height: 1.7;
  color: #1a1a1a;
  margin: 0 0 3rem 0;
  max-width: 45%;
}
.executive-timeline-wrap {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding-top: 80px;
}
.executive-timeline {
  position: relative;
  padding: 0 0 0.5rem 0;
}
.executive-timeline-track {
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 2px;
  background: #6b6b6b;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  padding: 0;
  pointer-events: none;
}
.executive-timeline-x {
  width: 20px;
  height: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  z-index: 1;
}
.executive-timeline-x-icon {
  width: 30px;
  height: 30px;
  object-fit: contain;
  display: block;
}
/* Three dots between the four rows – minimal gap so cards run dot-to-dot */
.executive-timeline-dot-between {
  position: relative;
  height: 0.5rem;
  width: 100%;
  flex-shrink: 0;
  pointer-events: none;
}
.executive-timeline-dot-between .executive-timeline-dot {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
.executive-timeline-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #1a1a1a;
  flex-shrink: 0;
  display: block;
}
.executive-timeline-row {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 0;
  margin-bottom: 0;
  position: relative;
  z-index: 1;
}
.executive-timeline-block {
  width: calc(50% - 1px);
  max-width: none;
}

/* Light grey transparent background for text cards only (not stats cards); connected to timeline line */
.executive-timeline-block:not(.executive-timeline-stat) {
  background-color: rgba(242, 242, 242, 0.35);
  padding: 1.25rem 1.5rem;
  border-radius: 6px;
  display: flex;
  flex-direction: column;
}

.executive-timeline-left {
  text-align: left;
  padding-right: 1.5rem;
}
.executive-timeline-left:not(.executive-timeline-stat) {
  padding-right: 1.5rem;
}
.executive-timeline-right {
  text-align: left;
  padding-left: 1.5rem;
  margin-left: 0;
}
.executive-timeline-right:not(.executive-timeline-stat) {
  padding-left: 1.5rem;
}
.executive-timeline-heading {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 1.125rem;
  color: #1a1a1a;
  margin: 0 0 0;
  line-height: 1.3;
}
.executive-timeline-accent-line {
  width: 48px;
  height: 3px;
  background: #DDC17C;
   margin-top: 6px; 
  margin-bottom: 0;
}
.executive-timeline-sub {
  font-family: 'Inter', sans-serif;
  font-size: var(--font-size-body);
  color: #1a1a1a;
  margin: 0 0 0.5rem 0;
  font-weight: 600 !important;
}
.executive-timeline-list {
  list-style: none;
  padding: 0;
  margin: 0;
  font-family: 'Inter', sans-serif;
  font-size: var(--font-size-body);
  color: #1a1a1a;
  line-height: 1.6;
}
.executive-timeline-list li {
  position: relative;
  padding-left: 1.25rem;
  margin-bottom: 0.35rem;
}
.executive-timeline-list li::before {
  content: '•';
  position: absolute;
  left: 0;
  color: #1a1a1a;
}
.executive-timeline-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0.5rem 0;
}
.executive-timeline-left.executive-timeline-stat,
.executive-timeline-right.executive-timeline-stat {
  align-items: center;
  text-align: center;
}
.executive-timeline-number {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-style: italic;
  font-size: clamp(6rem, 6vw, 4.2rem);
  color: #DDC17C;
  line-height: 1.1;
  display: block;
}
.executive-timeline-stat-label {
  font-family: 'Inter', sans-serif;
  font-size: 2.125rem;
  line-height: 1.35;
  color: #1a1a1a;
  margin-top: 0.25rem;
}
.executive-strategic-cta {
  text-align: center;
  padding-top: 2.5rem;
  padding-bottom: 1rem;
}
.executive-strategic-btn {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  color: #fff;
  border: none;
  padding: 0.75rem 2rem;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: 1rem;
  border-radius: 0;
  text-decoration: none;
  display: inline-block;
  transition: opacity 0.2s ease;
}
.executive-strategic-btn:hover {
  color: #fff;
  opacity: 0.9;
}
@media (max-width: 991.98px) {
  .executive-timeline-track {
    left: 1.5rem;
    transform: none;
  }
  .executive-timeline-dot-between {
    height: 0.5rem;
  }
  .executive-timeline-dot-between .executive-timeline-dot {
    left: 1.5rem;
    transform: translate(-50%, -50%);
  }
  .executive-timeline-row {
    flex-direction: column;
    gap: 1rem;
    padding-left: 2.5rem;
    margin-bottom: 2rem;
  }
  .executive-timeline-block {
    width: 100%;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
  }
  .executive-timeline-left,
  .executive-timeline-right {
    text-align: left;
    padding: 0;
  }
  .executive-timeline-right.executive-timeline-stat {
    align-items: center;
    text-align: center;
  }

  /* Strategic intro: desktop keeps a narrow column beside the map; full width on tablet/phone */
  .executive-strategic-intro {
    max-width: 100%;
  }

  /*
   * Portrait PNG with 100% auto can frame differently on narrow viewports.
   * Cover + right anchor keeps the Europe / network art aligned with the desktop treatment.
   */
  .executive-strategic-bg {
    background-size: cover;
    background-position: right top;
  }
}
@media (max-width: 767.98px) {
  .executive-timeline-number {
    font-size: 3.4rem;
  }
}

/* Executive search / project recruiting / employment models content: left-aligned, tab from left for body/listings */
.executive-search-intro-section .executive-search-content,
.project-recruiting-intro-section .executive-search-content,
.employment-models-intro-section .executive-search-content {
  text-align: left;
  padding-left: 2rem;
}

.executive-search-content .placement-intro-text {
  text-align: left;
  padding-left: 1.25rem;
}

.executive-search-content .placement-rocket-list {
  text-align: left;
  margin-bottom: 1rem;
  padding-left: 2rem;
}

.employment-model-diagram {
  max-width: 100%;
  border-radius: 8px;
  overflow: hidden;
}

.employment-model-diagram img {
  display: block;
  width: 100%;
  height: auto;
}

@media (max-width: 767.98px) {
  .executive-search-intro-section .executive-search-content,
  .project-recruiting-intro-section .executive-search-content,
  .employment-models-intro-section .executive-search-content {
    padding-left: 0;
  }
  .executive-search-content .placement-intro-text,
  .executive-search-content .placement-rocket-list {
    padding-left: 1rem;
  }
}

.executive-search-text {
  font-size: var(--font-size-body);
  color: #666;
  line-height: 1.8;
  margin-bottom: 20px;
  font-family: 'Inter', sans-serif;
}

.executive-search-text:last-child {
  margin-bottom: 0;
}

.executive-search-subheading {
  font-size: var(--font-size-headline);
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 15px 0;
  font-family: 'Poppins', sans-serif;
}

.executive-search-content-block {
  margin: 40px 0;
}

.executive-search-blockquote {
  font-size: var(--font-size-headline);
  color: #d0af32;
  line-height: 1.8;
  font-style: italic;
  margin: 30px 0;
  padding-left: 30px;
  border-left: 4px solid #d0af32;
  font-family: 'Inter', sans-serif;
}

.executive-search-contact-image {
  width: 100%;
  height: 400px;
  background-color: #e5e5e5;
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.executive-search-contact-image i {
  font-size: 120px;
  color: #999;
}

.executive-search-contact-info {
  margin-bottom: 30px;
}

.executive-search-contact-item {
  font-size: var(--font-size-body);
  color: #666;
  margin: 5px 0;
  font-family: 'Inter', sans-serif;
}

.executive-search-contact-item i {
  color: #d0af32;
  margin-right: 10px;
}

.executive-search-contact-item a {
  color: #666;
  text-decoration: none;
  transition: color 0.3s ease;
}

.executive-search-contact-item a:hover {
  color: #d0af32;
}

.executive-search-testimonial-label {
  font-size: var(--font-size-body);
  color: #d0af32;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin: 0 0 20px 0;
  font-weight: 600;
  font-family: 'Poppins', sans-serif;
}

.executive-search-testimonial-quote {
  font-size: var(--font-size-headline);
  color: #1a1a1a;
  line-height: 1.8;
  font-style: italic;
  margin: 0 0 20px 0;
  font-family: 'Inter', sans-serif;
}

.executive-search-testimonial-author {
  font-size: var(--font-size-body);
  color: #666;
  margin: 0;
  font-family: 'Inter', sans-serif;
}

.executive-search-partnership-box {
  position: relative;
  background-color: #2B2B2B;
  padding: 60px 40px;
  border-radius: 0;
  text-align: center;
  margin-top: 40px;
}

.executive-search-partnership-icons {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  margin-bottom: 20px;
}

.executive-search-partnership-icon-box {
  width: 150px;
  height: 150px;
  background: linear-gradient(135deg, #d0af32 0%, #DDC17C 100%);
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.executive-search-partnership-icon-box-alt {
  background: linear-gradient(135deg, #DDC17C 0%, #d0af32 100%);
}

.executive-search-partnership-icon-box i {
  font-size: var(--font-size-title);
  color: #1a1a1a;
}

.executive-search-partnership-title {
  font-size: var(--font-size-headline);
  font-weight: 600;
  color: #ffffff;
  margin: 0 0 10px 0;
  font-family: 'Poppins', sans-serif;
}

.executive-search-partnership-subtitle {
  font-size: var(--font-size-body);
  color: #d0af32;
  margin: 0 0 30px 0;
  font-family: 'Inter', sans-serif;
}

/* Responsive Styles for Executive Search */
@media (max-width: 991.98px) {
  .executive-search-section {
    padding: 60px 0;
  }

  .executive-search-heading {
    font-size: var(--font-size-headline);
  }

  .executive-search-text {
    font-size: var(--font-size-body);
  }

  .executive-search-contact-image {
    height: 300px;
  }

  .executive-search-contact-image i {
    font-size: 80px;
  }

  .executive-search-partnership-box {
    padding: 40px 30px;
  }

  .executive-search-partnership-icon-box {
    width: 120px;
    height: 120px;
  }

  .executive-search-partnership-icon-box i {
    font-size: 50px;
  }
}

@media (max-width: 767.98px) {
  .executive-search-section {
    padding: 40px 0;
  }

  .executive-search-heading {
    font-size: var(--font-size-headline);
    margin-bottom: 20px;
  }

  .executive-search-subheading {
    font-size: var(--font-size-headline);
  }

  .executive-search-text {
    font-size: var(--font-size-body);
  }

  .executive-search-blockquote {
    font-size: var(--font-size-headline);
    padding-left: 20px;
  }

  .executive-search-contact-image {
    height: 250px;
    margin-bottom: 30px;
  }

  .executive-search-contact-image i {
    font-size: var(--font-size-title);
  }

  .executive-search-partnership-box {
    padding: 30px 20px;
  }

  .executive-search-partnership-icons {
    flex-direction: column;
    gap: 15px;
  }

  .executive-search-partnership-icon-box {
    width: 100px;
    height: 100px;
  }

  .executive-search-partnership-icon-box i {
    font-size: var(--font-size-title);
  }

  .executive-search-partnership-title {
    font-size: var(--font-size-headline);
  }
}

@media (max-width: 575.98px) {
  .executive-search-section {
    padding: 30px 0;
  }

  .executive-search-heading {
    font-size: var(--font-size-headline);
  }

  .executive-search-text {
    font-size: var(--font-size-body);
  }

  .executive-search-blockquote {
    font-size: var(--font-size-body);
  }

  .executive-search-contact-image {
    height: 200px;
  }

  .executive-search-contact-image i {
    font-size: 50px;
  }

  .executive-search-partnership-icon-box {
    width: 80px;
    height: 80px;
  }

  .executive-search-partnership-icon-box i {
    font-size: var(--font-size-title);
  }
}

/* PAYROLLING PAGE STYLES */
.payrolling-section {
  padding: 80px 0;
  background-color: #ffffff;
}

.payrolling-section-gold {
  background-color: #d0af32;
  padding: 80px 0;
}

.payrolling-section-alt {
  background-color: #fafafa;
}

.payrolling-text {
  font-size: var(--font-size-headline);
  color: #666;
  line-height: 1.8;
  margin-bottom: 20px;
  font-family: 'Inter', sans-serif;
}

.payrolling-text:last-child {
  margin-bottom: 0;
}

.payrolling-text-bold {
  font-size: var(--font-size-headline);
  color: #1a1a1a;
  line-height: 1.8;
  font-weight: 600;
  margin: 0 0 30px 0;
  font-family: 'Inter', sans-serif;
}

.payrolling-text-gold {
  font-size: var(--font-size-body);
  color: #d0af32;
  line-height: 1.8;
  margin: 0;
  font-family: 'Inter', sans-serif;
}

.payrolling-text-gold a {
  color: #d0af32;
  text-decoration: underline;
}

.payrolling-benefits-heading {
  font-size: var(--font-size-headline);
  font-weight: 700;
  color: #1a1a1a;
  margin: 0 0 50px 0;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-family: 'Poppins', sans-serif;
}

.payrolling-benefit-item {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}

.payrolling-benefit-icon {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.payrolling-benefit-icon span {
  font-size: var(--font-size-headline);
  color: #1a1a1a;
  font-weight: bold;
}

.payrolling-benefit-content h3 {
  font-size: var(--font-size-headline);
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 10px 0;
  font-family: 'Poppins', sans-serif;
}

.payrolling-benefit-content p {
  font-size: var(--font-size-body);
  color: #1a1a1a;
  line-height: 1.8;
  margin: 0;
  font-family: 'Inter', sans-serif;
}

.payrolling-contact-image {
  width: 100%;
  height: 400px;
  background-color: #e5e5e5;
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.payrolling-contact-image i {
  font-size: 120px;
  color: #999;
}

.payrolling-contact-heading {
  font-size: var(--font-size-title);
  font-weight: 700;
  color: #1a1a1a;
  margin: 0 0 20px 0;
  font-family: 'Poppins', sans-serif;
}

.payrolling-contact-info {
  margin-bottom: 30px;
}

.payrolling-contact-item {
  font-size: var(--font-size-body);
  color: #666;
  margin: 5px 0;
  font-family: 'Inter', sans-serif;
}

.payrolling-contact-item i {
  color: #d0af32;
  margin-right: 10px;
}

.payrolling-contact-item a {
  color: #666;
  text-decoration: none;
  transition: color 0.3s ease;
}

.payrolling-contact-item a:hover {
  color: #d0af32;
}

.payrolling-testimonial-quote {
  font-size: var(--font-size-headline);
  color: #1a1a1a;
  line-height: 1.8;
  font-style: italic;
  margin: 0 0 20px 0;
  font-family: 'Inter', sans-serif;
}

.payrolling-testimonial-author {
  font-size: var(--font-size-body);
  color: #666;
  margin: 0;
  font-family: 'Inter', sans-serif;
}

/* Responsive Styles for Payrolling */
@media (max-width: 991.98px) {
  .payrolling-section {
    padding: 60px 0;
  }

  .payrolling-section-gold {
    padding: 60px 0;
  }

  .payrolling-benefits-heading {
    font-size: var(--font-size-headline);
    margin-bottom: 40px;
  }

  .payrolling-contact-image {
    height: 300px;
  }

  .payrolling-contact-image i {
    font-size: 80px;
  }

  .payrolling-contact-heading {
    font-size: var(--font-size-title);
  }
}

@media (max-width: 767.98px) {
  .payrolling-section {
    padding: 40px 0;
  }

  .payrolling-section-gold {
    padding: 40px 0;
  }

  .payrolling-text {
    font-size: var(--font-size-body);
  }

  .payrolling-benefits-heading {
    font-size: var(--font-size-headline);
    margin-bottom: 30px;
  }

  .payrolling-benefit-content h3 {
    font-size: var(--font-size-headline);
  }

  .payrolling-benefit-content p {
    font-size: var(--font-size-body);
  }

  .payrolling-contact-image {
    height: 250px;
    margin-bottom: 30px;
  }

  .payrolling-contact-image i {
    font-size: var(--font-size-title);
  }

  .payrolling-contact-heading {
    font-size: var(--font-size-headline);
  }
}

@media (max-width: 575.98px) {
  .payrolling-section {
    padding: 30px 0;
  }

  .payrolling-section-gold {
    padding: 30px 0;
  }

  .payrolling-text {
    font-size: var(--font-size-body);
  }

  .payrolling-benefits-heading {
    font-size: var(--font-size-body);
  }

  .payrolling-benefit-content h3 {
    font-size: var(--font-size-body);
  }

  .payrolling-benefit-content p {
    font-size: var(--font-size-body);
  }

  .payrolling-contact-image {
    height: 200px;
  }

  .payrolling-contact-image i {
    font-size: 50px;
  }

  .payrolling-contact-heading {
    font-size: var(--font-size-headline);
  }
}

/* Payrolling editorial: intro → 2×2 skewed grid → CTA (ref. diagonal layout) */
.payrolling-editorial {
  background: #ffffff;
  overflow-x: hidden;
  overflow-x: clip;
}

.payrolling-editorial-intro {
  max-width: 44rem;
  margin-bottom: clamp(2.75rem, 6vw, 4.75rem);
}

.payrolling-editorial-heading {
  font-family: 'Poppins', 'Manrope', sans-serif;
  margin: 0;
  letter-spacing: -0.02em;
}

.payrolling-editorial-heading-strong {
  display: block;
  font-weight: 700;
  font-size: clamp(2rem, 4.2vw, var(--font-size-title));
  color: #111111;
  line-height: 1.12;
}

.payrolling-editorial-accent-line--heading {
  display: block;
  width: 48px;
  height: 3px;
  background: #ddc17c;
  margin: 12px 0 16px;
}

.payrolling-editorial-heading-light {
  display: block;
  font-weight: 300;
  font-size: clamp(1.65rem, 3.2vw, 2.5rem);
  color: #111111;
  line-height: 1.2;
}

.payrolling-editorial-lead {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-body);
  line-height: 1.75;
  color: #222222;
  margin: 0 0 1.5rem;
  max-width: 40rem;
}

.payrolling-editorial-checklist {
  list-style: none;
  padding: 0;
  margin: 0;
}

.payrolling-editorial-checklist li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 14px;
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-body);
  line-height: 1.55;
  color: #222222;
}

.payrolling-editorial-checklist li:last-child {
  margin-bottom: 0;
}

.payrolling-editorial-check-icon {
  flex-shrink: 0;
  margin-top: 3px;
  width: 20px;
  height: 20px;
  object-fit: contain;
}

/* Mosaic: gold A = trapezoid top 10/10 cols, bottom 8/10 (clip-path); gold B = mirror; photo diagonals */
.payrolling-editorial-mosaic {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
  grid-template-rows: auto auto;
  row-gap: clamp(1.5rem, 4.5vw, 3rem);
  /* No column gap — overlap tiles with negative margins to close diagonal seam */
  column-gap: 0;
  margin-bottom: clamp(2.75rem, 6vw, 5.25rem);
  align-items: start;
}

/* Row 1: gold sets row height; photo-a bottom sits on vertical midline of gold */
.payrolling-editorial-tile--gold-a,
.payrolling-editorial-tile--photo-a {
  grid-row: 1;
}

.payrolling-editorial-tile--gold-a {
  grid-column: 1;
  align-self: start;
  margin-right: clamp(-2.75rem, -6.5vw, -1.35rem);
}

.payrolling-editorial-tile--photo-a {
  grid-column: 2;
  align-self: stretch;
  position: relative;
  min-height: 0;
}

.payrolling-editorial-tile--photo-b {
  grid-column: 1;
  grid-row: 2;
  margin-right: clamp(-2.75rem, -6.5vw, -1.35rem);
}

/* Row 2 right column: gold-b + CTA stacked so CTA sits under the card, not below full row height */
.payrolling-editorial-mosaic-r2-right {
  grid-column: 2;
  grid-row: 2;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  align-self: start;
  gap: clamp(0, 0.65vw, 0.4rem);
  min-width: 0;
}

@media (min-width: 768px) {
  .payrolling-editorial-mosaic-r2-right {
    margin-top: clamp(1.35rem, 3vw, 2.35rem);
  }
}

.payrolling-editorial-tile--gold-b {
  align-self: stretch;
  /* Row tops align with photo-b; shift up by half own height → center on photo top = 50% of gold above image top */
  transform: translateY(-50%);
  position: relative;
  z-index: 1;
  /* Strong overlap toward photo-b — closes diagonal gap (photo tile unchanged) */
  margin-left: clamp(-10rem, -42.5vw, -8rem);
  margin-right:22px;
}

.payrolling-editorial-gold-shear {
  background: linear-gradient(
    152deg,
    #b39642 0%,
    #d4b96a 35%,
    #e2c97f 72%,
    #d4ae58 100%
  );
  border-radius: 0;
  transform-origin: 50% 50%;
  box-shadow:
    0 22px 50px rgba(130, 98, 38, 0.32),
    0 6px 16px rgba(0, 0, 0, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.22);
  overflow: hidden;
  transition: box-shadow 0.35s ease, filter 0.35s ease, transform 0.35s ease;
}

/*
 * Panel 1 — 13-col grid: top cols 1–13 (100%), bottom cols 1–10 → width 10/13.
 * Right edge: (100%, 0) → (10/13, 100%).
 */
.payrolling-editorial-gold-shear--trap-a {
  border-radius: 0;
  box-shadow: none;
  transform: none;
  clip-path: polygon(0 0, 97% 0, calc(100% * 10 / 13) 100%, 0 100%);
  filter: drop-shadow(0 20px 42px rgba(130, 98, 38, 0.34)) drop-shadow(0 6px 14px rgba(0, 0, 0, 0.07));
}

/* Panel 2 — top cols 3–10 (20%–100%), bottom cols 1–10 (0–100%); slant along left edge */
.payrolling-editorial-gold-shear--trap-b {
  border-radius: 0;
  box-shadow: none;
  transform: none;
  clip-path: polygon(19% 0, 100% 0, 100% 100%, 0 100%);
  filter: drop-shadow(0 20px 42px rgba(130, 98, 38, 0.34)) drop-shadow(0 6px 14px rgba(0, 0, 0, 0.07));
}

.payrolling-editorial-gold-shear-inner {
  padding: clamp(1.75rem, 4.2vw, 2.9rem) clamp(1.35rem, 3.2vw, 2.1rem);
  display: flex;
  flex-direction: column;
  justify-content: center;
  /* ~20% taller than prior clamp(248px, 33vw, 312px) — applies to gold-a & gold-b */
  min-height: clamp(298px, 39.6vw, 374px);
  box-sizing: border-box;
}

.payrolling-editorial-gold-shear--trap-a .payrolling-editorial-gold-shear-inner,
.payrolling-editorial-gold-shear--trap-b .payrolling-editorial-gold-shear-inner {
  transform: none;
}



@media (hover: hover) and (min-width: 992px) {
  .payrolling-editorial-tile--gold:hover .payrolling-editorial-gold-shear--trap-a,
  .payrolling-editorial-tile--gold:hover .payrolling-editorial-gold-shear--trap-b {
    filter: drop-shadow(0 26px 52px rgba(130, 98, 38, 0.4)) drop-shadow(0 10px 22px rgba(0, 0, 0, 0.09));
  }

  .payrolling-editorial-tile--photo-a:hover .payrolling-editorial-img--mosaic,
  .payrolling-editorial-tile--photo-b:hover .payrolling-editorial-img--mosaic {
    filter: drop-shadow(0 22px 48px rgba(0, 0, 0, 0.16));
  }
}

.payrolling-editorial-photo {
  position: relative;
  border-radius: 0;
  overflow: hidden;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.11);
  min-height: clamp(228px, 31vw, 328px);
  transition: box-shadow 0.35s ease;
}

/* Photo A: no solid frame — clipped shape floats on page bg; shadow on image only */
.payrolling-editorial-tile--photo-a .payrolling-editorial-photo {
  position: absolute;
  left: 0;
  right: 0;
  /* Below 50% — nudges the image down in the tile */
  bottom: calc(50% - 2.75rem);
  width: 100%;
  background: transparent;
  box-shadow: none;
  /* Extra pull — clip-path leaves empty wedge on left; nudge frame toward gold */
  margin-left: clamp(-1.35rem, -3vw, -0.5rem);
}

.payrolling-editorial-tile--photo-a .payrolling-editorial-img--mosaic {
  filter: drop-shadow(0 18px 40px rgba(0, 0, 0, 0.12));
}

/* Photo B: same — transparent frame; shadow follows clipped image */
.payrolling-editorial-tile--photo-b .payrolling-editorial-photo {
  background: transparent;
  box-shadow: none;
}

.payrolling-editorial-tile--photo-b .payrolling-editorial-img--mosaic {
  filter: drop-shadow(0 18px 40px rgba(0, 0, 0, 0.12));
}

.payrolling-editorial-img--mosaic {
  width: 100%;
  height: 100%;
  min-height: clamp(228px, 31vw, 328px);
  object-fit: cover;
  object-position: center center;
  display: block;
  transform: none;
  transition: filter 0.35s ease;
}

/* Top-right photo: bottom rises toward the right */
.payrolling-editorial-photo--slant-bottom .payrolling-editorial-img--mosaic {
  clip-path: polygon(0 0, 100% 0, 100% 70%, 0 100%);
}

/* Top-right photo: top cols 3–10 (20%–100%), bottom cols 1–10 (0–100%) */
.payrolling-editorial-photo--slant-bottom-inv .payrolling-editorial-img--mosaic {
  clip-path: polygon(35% 0, 100% 0, 100% 100%, 0 108%);
}

/* Bottom-left photo: top 70% width, bottom 40% width; slant along right edge */
.payrolling-editorial-photo--slant-bottom-down .payrolling-editorial-img--mosaic {
  clip-path: polygon(0 0, 75% 0, 45% 100%, 0 100%);
}

@media (prefers-reduced-motion: reduce) {
  .payrolling-editorial-gold-shear,
  .payrolling-editorial-photo,
  .payrolling-editorial-img--mosaic {
    transition: none;
  }
}

.payrolling-editorial-panel-head {
  display: flex;
  align-items: center;
  gap: 0;
  margin-bottom: 1rem;
}

/* Number + underline stacked; heading beside (payrolling gold panels) */
.payrolling-editorial-panel-head--title-side {
  align-items: center;
  gap: clamp(0.75rem, 2vw, 1.35rem);
}

.payrolling-editorial-num-column {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.45rem;
  width: fit-content;
  flex-shrink: 0;
}

/* Under the digit: explicit width — % width in a fit-content column can compute to 0 */
.payrolling-editorial-num-line.payrolling-editorial-num-line--under-num {
  display: block;
  flex: 0 0 auto;
  align-self: flex-start;
  width: 2.5rem;
  min-width: 2.5rem;
  max-width: 6rem;
  height: 3px;
  margin: 0;
  border: 0;
  background: #2d2d2d;
}

.payrolling-editorial-num {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: clamp(2.75rem, 5vw, 3.5rem);
  line-height: 1;
  color: #2d2d2d;
  text-align: center;
}

.payrolling-editorial-num-line {
  display: block;
  flex: 1;
  height: 3px;
  max-width: 120px;
  margin-left: 14px;
  background: #2d2d2d;
}

.payrolling-editorial-panel-title {
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-body-title);
  line-height: 1.28;
  letter-spacing: -0.015em;
  color: #ffffff;
  margin: 0 0 1.05rem;
}

.payrolling-editorial-panel-title--in-head {
  margin: 0;
  flex: 1;
  min-width: 0;
}

.payrolling-editorial-panel-list {
  margin: 0;
  padding: 0 0 0 1.15rem;
  color: rgba(255, 255, 255, 0.96);
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-body);
  line-height: 1.62;
}

.payrolling-editorial-panel-list li {
  margin-bottom: 0.65rem;
  padding-left: 0.15rem;
}

.payrolling-editorial-panel-list li:last-child {
  margin-bottom: 0;
}

.payrolling-editorial-panel-list li::marker {
  color: #ffffff;
}

.payrolling-editorial-cta-block {
  max-width: 36rem;
}

@media (min-width: 768px) {
  .payrolling-editorial-cta-block {
    margin-top: -2.25rem;
  }
}

@media (min-width: 992px) {
  .payrolling-editorial-cta-block {
    margin-left: 0;
    margin-right: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
  }

  .payrolling-editorial-cta-title,
  .payrolling-editorial-cta-text {
    width: 100%;
    max-width: 28rem;
  }
}

.payrolling-editorial-cta-title {
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-weight: 400;
  font-size: clamp(1.75rem, 3.2vw, var(--font-size-section-title));
  line-height: 1.25;
  color: #111111;
  margin: 0 0 0.75rem;
  letter-spacing: -0.02em;
}

.payrolling-editorial-cta-title strong {
  font-weight: 700;
}

.payrolling-editorial-cta-word {
  display: inline-block;
  margin: 0 0.2em;
  vertical-align: baseline;
}

.payrolling-editorial-accent-line--word {
  display: block;
  width: 100%;
  height: 3px;
  background: #ddc17c;
  margin-top: 8px;
}

.payrolling-editorial-cta-text {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-body);
  line-height: 1.7;
  color: #333333;
  margin: 0 0 1.5rem;
  max-width: 28rem;
}

.payrolling-editorial-cta-btn {
  min-width: 180px;
}

@media (max-width: 991.98px) {
  .payrolling-editorial-mosaic {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
  }

  /*
   * Mobile / tablet stack: DOM is gold-a → photo-a → photo-b → (gold-b + CTA).
   * Flatten the right column wrapper so flex `order` can place photo-b after gold-b.
   * Desktop (≥992px): unchanged — this block does not apply.
   */
  .payrolling-editorial-mosaic-r2-right {
    display: contents;
  }

  .payrolling-editorial-mosaic-r2-right,
  .payrolling-editorial-tile--gold-a,
  .payrolling-editorial-tile--photo-a,
  .payrolling-editorial-tile--photo-b,
  .payrolling-editorial-tile--gold-b {
    grid-column: auto;
    grid-row: auto;
    margin-top: 0;
  }

  .payrolling-editorial-tile--gold-a {
    order: 1;
  }

  .payrolling-editorial-tile--photo-a {
    order: 2;
  }

  .payrolling-editorial-tile--gold-b {
    order: 3;
  }

  .payrolling-editorial-tile--photo-b {
    order: 4;
    align-self: stretch;
    width: 100%;
    max-width: none;
    margin-right: 0;
  }

  .payrolling-editorial-tile--photo-b .payrolling-editorial-photo {
    width: 100%;
    max-width: none;
  }

  .payrolling-editorial-tile--photo-b .payrolling-editorial-img--mosaic {
    width: 100%;
    height: auto;
    min-height: 220px;
    display: block;
    object-fit: cover;
  }

  .payrolling-editorial-cta-block {
    order: 5;
    margin-left: 0;
    margin-top: 0;
    display: block;
    text-align: left;
    align-items: stretch;
  }

  .payrolling-editorial-tile--gold-a,
  .payrolling-editorial-tile--photo-a {
    align-self: stretch;
  }

  .payrolling-editorial-tile--gold-a {
    margin-right: 0;
  }

  .payrolling-editorial-tile--photo-a {
    margin-left: 0;
  }

  .payrolling-editorial-tile--photo-a .payrolling-editorial-photo {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    width: auto;
    margin-left: 0;
  }

  .payrolling-editorial-tile--gold-b {
    margin-left: 0;
    margin-right: 0;
    transform: none;
    z-index: auto;
  }

  .payrolling-editorial-gold-shear,
  .payrolling-editorial-gold-shear-inner {
    transform: none;
  }

  .payrolling-editorial-gold-shear--trap-a,
  .payrolling-editorial-gold-shear--trap-b {
    clip-path: none;
    filter: none;
    border-radius: 0;
    box-shadow:
      0 22px 50px rgba(130, 98, 38, 0.32),
      0 6px 16px rgba(0, 0, 0, 0.06),
      inset 0 1px 0 rgba(255, 255, 255, 0.22);
  }

  .payrolling-editorial-gold-shear-inner {
    min-height: 0;
    padding: 1.5rem 1.2rem;
  }

  /* Inline padding-left on gold-b inner (blade) — reset for readable mobile/tablet */
  .payrolling-editorial-gold-shear--trap-b .payrolling-editorial-gold-shear-inner {
    padding-left: 1.2rem !important;
    padding-right: 1.2rem !important;
  }

  .payrolling-editorial-gold-body {
    max-width: none;
  }

  .payrolling-editorial-photo--slant-bottom .payrolling-editorial-img--mosaic,
  .payrolling-editorial-photo--slant-bottom-inv .payrolling-editorial-img--mosaic,
  .payrolling-editorial-photo--slant-bottom-down .payrolling-editorial-img--mosaic {
    clip-path: none;
    transform: none;
  }

  .payrolling-editorial-photo {
    min-height: 200px;
  }

  .payrolling-editorial-img--mosaic {
    min-height: 220px;
    height: 240px;
  }

  .payrolling-editorial-cta-title,
  .payrolling-editorial-cta-text {
    width: auto;
    max-width: none;
  }
}

@media (max-width: 767.98px) {
  .placement-hero.payrolling-hero-section .placement-hero-content .d-flex.flex-wrap.gap-3 {
    flex-direction: column;
    align-items: stretch;
    gap: 0.75rem;
  }

  .placement-hero.payrolling-hero-section .placement-btn-gold,
  .placement-hero.payrolling-hero-section .placement-btn-outline {
    width: 100%;
    justify-content: center;
    text-align: center;
  }
}

/* PLACEMENT PAGE STYLES (Redesign) */
.placement-hero {
  background-image: url('/images/landscape/10.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  min-height: 520px;
  padding: 200px 0 100px 0;
  position: relative;
  display: flex;
  align-items: center;
}

.placement-hero.about-hero-section {
  background-image: url('/images/about-cover1.png');
  min-height: 100vh;
  min-height: 100dvh;
  padding: 120px 0 80px;
  align-items: center;
}

.about-hero-section .placement-hero-container.about-hero-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.about-hero-section .placement-hero-content.about-hero-content-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  flex-wrap: wrap;
  gap: 1.5rem;
}

.about-hero-section .about-hero-left {
  flex: 0 1 auto;
}

.about-hero-section .about-hero-right-title {
  flex: 0 0 auto;
}

.about-hero-button-row {
  width: 100%;
  margin-top: 0.5rem;
}

.about-hero-right-title {
  margin: 0;
  font-family: 'Inter', 'Poppins', sans-serif;
  font-weight: 700;
  font-size: clamp(2.5rem, 6vw, 4.5rem);
  line-height: 1.1;
  color: #ffffff;
  letter-spacing: -0.02em;
  text-transform: none;
  white-space: nowrap;
  text-align: right;
}

@media (max-width: 991.98px) {
  .about-hero-right-title {
    font-size: clamp(2rem, 5vw, 3rem);
  }
}

@media (max-width: 991.98px) {
  .about-hero-section .placement-hero-content.about-hero-content-flex {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 575.98px) {
  .about-hero-button-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }

  .about-hero-right-title {
    font-size: 1.75rem;
    white-space: normal;
  }
}

.placement-hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 1;
}

.placement-hero-container {
  position: relative;
  z-index: 2;
}

.placement-hero-content {
  /* max-width: 720px; */
  margin-top: 20px;
}

/* Employment models hero: heading on right, content on left */
.employment-models-hero-section .placement-hero-content-split,
.executive-search-hero-section .placement-hero-content-executive {
  width: 100%;
}
.executive-search-hero-section .placement-hero-title-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2rem;
  width: 100%;
  margin-bottom: 1rem;
}
.executive-search-hero-section .placement-hero-title-row .placement-hero-title-left {
  flex: 0 1 auto;
  min-width: 0;
  text-align: left;
}
.executive-search-hero-section .placement-hero-title-row .placement-hero-title-right {
  flex: 0 0 auto;
  text-align: right;
  margin-left: auto;
  white-space: nowrap;
}

.employment-models-hero-section .placement-hero-left,
.executive-search-hero-section .placement-hero-left {
  flex: 1 1 320px;
  max-width: 800px;
}

.employment-models-hero-section .placement-hero-right,
.executive-search-hero-section .placement-hero-right {
  flex: 0 0 auto;
  text-align: right;
}

.employment-models-hero-section .placement-hero-title-right,
.executive-search-hero-section .placement-hero-title-right {
  text-align: right;
  font-size: clamp(2rem, 5vw, 3.5rem);
  line-height: 1.15;
  margin: 0;
}

.placement-hero-subheading {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-headline);
  line-height: 1.3;
  color: #ffffff;
  margin: 0;
}

.placement-hero-badge {
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  color: rgba(255, 255, 255, 0.95);
  padding: 6px 14px;
  background: rgba(255, 255, 255, 0.12);
  border-radius: 0;
}

.placement-hero-title {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-title);
  line-height: 1.2;
  color: #ffffff;
  margin: 0;
}

.placement-hero-highlight {
  color: #C7A33C;
}

.placement-hero-subtext {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-body-title);
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.9);
  margin: 0;
}

.placement-btn-gold {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border: none;
  border-radius: 0;
  padding: 14px 32px;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  color: #ffffff;
  transition: opacity 0.2s ease;
}

.placement-btn-gold:hover {
  color: #ffffff;
  opacity: 0.95;
}

.placement-btn-outline {
  background: transparent;
  border: 2px solid #ffffff;
  border-radius: 0;
  color: #ffffff;
  padding: 12px 30px;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  transition: background 0.2s ease, color 0.2s ease;
}

.placement-btn-outline:hover {
  background: #ffffff;
  color: #111111;
  border-color: #ffffff;
}

/* Employment models hero — avoid clipping tall hero + CTAs on small viewports */
@media (max-width: 991.98px) {
  .placement-hero.employment-models-hero-section {
    min-height: 0;
    padding-top: 4rem;
    padding-bottom: 3rem;
    align-items: flex-start;
  }
}

@media (max-width: 575.98px) {
  .placement-hero.employment-models-hero-section .placement-hero-left .d-flex.flex-wrap.gap-3 {
    flex-direction: column;
    align-items: stretch;
  }

  .placement-hero.employment-models-hero-section .placement-btn-gold,
  .placement-hero.employment-models-hero-section .placement-btn-outline {
    width: 100%;
    text-align: center;
  }
}

.placement-trust {
  background: #F5F5F5;
  padding: 100px 0;
}

.placement-stat-card {
  background: #ffffff;
  padding: 32px 24px;
  border-radius: 0;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08);
  text-align: center;
  transition: box-shadow 0.2s ease;
  height: 100%;
}

.placement-stat-card:hover {
  box-shadow: 0px 14px 40px rgba(0, 0, 0, 0.12);
}

.placement-stat-number {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  color: #C7A33C;
  margin-bottom: 8px;
}

.placement-stat-label {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-body);
  color: #222222;
}

.placement-intro {
  background: #ffffff;
  padding: 60px 0;
}

/* Career options with structure (employment models page) */
.career-options-section {
  background: #ffffff;
}

/* Full-width variant (employment page – like screenshot) */
.career-options-section-full .career-options-full-inner {
  padding-left: 2rem;
  padding-right: 2rem;
  max-width: 100%;
}

.career-options-section-full .career-options-intro-block {
  padding-left: 5rem;
  padding-right: 5rem;
}

.career-options-accent-line {
  width: 48px;
  height: 3px;
  background: linear-gradient(90deg, #DDC17C, #d0af32);
   margin-top: 6px; 
  margin-bottom: 0;
}

.career-options-title {
  font-family: 'Inter', 'Poppins', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-section-title);
  color: #1a1a1a;
  margin: 0;
  line-height: 1.25;
}

.career-options-intro {
  font-family: 'Inter', sans-serif;
  font-size: var(--font-size-headline-text) !important;
  line-height: 1.6;
  color: #1a1a1a;
  margin: 0 0 3rem 0;
  max-width: 100%;
}

@media (min-width: 992px) {
  .career-options-intro {
    padding-right: 30%;
  }
}

.career-options-timeline {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.5rem;
}

.career-options-timeline-image {
  display: block;
  text-align: center;
}

.career-options-timeline-img {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
  vertical-align: middle;
  padding: 0 3rem;
  min-height: 100px;
}

.career-options-timeline-line {
  position: absolute;
  left: 5%;
  right: 5%;
  top: 50%;
  height: 2px;
  background: #d1d5db;
  margin-top: -1px;
}

.career-options-line-node {
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #d1d5db;
  top: 50%;
  transform: translate(-50%, -50%);
}

.career-options-line-node-left {
  left: 0;
}

.career-options-line-node-center {
  left: 50%;
}

.career-options-line-node-right {
  left: 100%;
}

/* Upper bridge: horizontal line between two upper nodes, vertical down to main line */
.career-options-upper-bridge {
  position: absolute;
  left: 22%;
  right: 28%;
  top: 0;
  height: 50%;
  pointer-events: none;
  z-index: 0;
}

.career-options-upper-line {
  position: absolute;
  left: 0;
  right: 0;
  top: 24px;
  height: 2px;
  background: #d1d5db;
}

.career-options-upper-vertical {
  position: absolute;
  left: 50%;
  top: 24px;
  width: 2px;
  bottom: 0;
  background: #d1d5db;
  transform: translateX(-50%);
}

.career-options-upper-node {
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #d1d5db;
  top: 21px;
  transform: translateX(-50%);
}

.career-options-upper-node-left {
  left: 0;
}

.career-options-upper-node-right {
  left: 100%;
}

.career-options-timeline-node {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
}

.career-options-timeline-node-start {
  margin-right: 15%;
}

.career-options-timeline-node-top {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0;
}

/* Dark rounded box wrapping icon(s) and number (screenshot style) */
.career-options-node-box {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
  background: #1a1a1a;
  border-radius: 8px;
  padding: 10px 14px;
  flex-shrink: 0;
}

.career-options-timeline-number {
  font-family: 'Inter', 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 1.25rem;
  color: #c9a227;
  line-height: 1;
}

.career-options-timeline-node-mid {
  margin-right: 0;
}

.career-options-timeline-connector {
  width: 2px;
  height: 24px;
  background: #d1d5db;
  margin-top: 4px;
}

.career-options-connector-vertical {
  width: 2px;
  height: 28px;
  background: #d1d5db;
  margin-top: 4px;
}

.career-options-connector-horizontal {
  background: #d1d5db;
  height: 2px;
  flex-shrink: 0;
}

.career-options-connector-building-top {
  width: 28px;
  align-self: center;
}

.career-options-connector-people {
  width: 36px;
  align-self: center;
}

.career-options-timeline-node-start .career-options-timeline-connector {
  margin-top: 4px;
}

.career-options-timeline-icon {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  color: #c9a227;
  border-radius: 0;
  font-size: 1.15rem;
}

.career-options-node-box .career-options-timeline-icon {
  background: transparent;
}

.career-options-icon-building {
  position: relative;
}

.career-options-icon-building .career-options-x-icon {
  position: absolute;
  width: 14px;
  height: 14px;
  top: 6px;
  right: 6px;
}

.career-options-icon-building .fa-building {
  font-size: 1.1rem;
  opacity: 0.9;
}

.career-options-icon-people {
  color: #c9a227;
}

.career-options-timeline-drops {
  position: absolute;
  left: 25%;
  right: 25%;
  bottom: -2rem;
  display: flex;
  justify-content: space-between;
  z-index: 0;
  pointer-events: none;
}

.career-options-drop {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #c9a227;
  display: block;
  flex-shrink: 0;
}

.career-options-cards {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  padding-top: 1rem;
  padding-left: 2rem;
  padding-right: 2rem;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1.5rem 2rem;
  align-items: start;
}

.career-option-card {
  text-align: center;
  padding: 2rem 5rem;
  background: transparent;
  border: none;
  border-radius: 0;
  height: 100%;
  box-shadow: none;
}

.career-option-card:hover {
  box-shadow: none;
}

.career-option-icon {
  margin: 0 auto 1rem auto;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #DDC17C;
  font-size: 3.5rem;
}

.career-option-title {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-body-title);
  color: #1a1a1a;
  margin: 0 0 0.75rem 0;
  line-height: 1.3;
  text-align: center;
}

.career-option-desc {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body);
  line-height: 1.6;
  color: #4a4a4a;
  margin: 0;
  text-align: center;
}

@media (max-width: 991.98px) {
  .career-options-timeline-node-start {
    margin-right: 8%;
  }

  .career-options-timeline-drops {
    left: 15%;
    right: 15%;
  }

  .career-options-section-full .career-options-full-inner {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

@media (max-width: 575.98px) {
  .career-options-timeline {
    flex-wrap: wrap;
    margin-bottom: 2rem;
  }

  .career-options-timeline-line {
    left: 5%;
    right: 5%;
  }

  .career-options-timeline-drops {
    display: none;
  }

  .career-options-cards {
    grid-template-columns: 1fr;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .career-option-card {
    padding: 1.5rem 1rem;
  }
}

/* Now Hiring section (employment models page) */
.now-hiring-section {
  background: linear-gradient(to bottom, #f3f3f3 0%, #ffffff 100%);
}

.now-hiring-buttons {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  max-width: 250px;
  margin: 0 auto;
}

.now-hiring-buttons .now-hiring-btn {
  /* width: 100%; */
  min-width: 110px;
  box-sizing: border-box;
  width: 100%;
  display: block;
}

.now-hiring-btn {
  font-family: 'Inter', 'Poppins', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-button);
  padding: 14px 28px;
  border-radius: 0;
  border: none;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  transition: opacity 0.2s ease;
}

.now-hiring-btn:hover {
  opacity: 0.9;
  color: inherit;
}

.now-hiring-btn.btn-sm {
  /* Double size for the "now hiring" CTA buttons */
  font-size: calc(var(--font-size-button-sm) * 2);
  padding: 14px 40px;
  line-height: 1.2;
}

.now-hiring-btn-gold {
  background: linear-gradient(90deg, #DDC17C, #d0af32);
  color: #ffffff;
}

.now-hiring-btn-dark {
  background: #2d2d2d;
  color: #ffffff;
}

/* Keep dark fill on hover/focus — Bootstrap .btn overrides background otherwise */
.now-hiring-btn.now-hiring-btn-dark:hover,
.now-hiring-btn.now-hiring-btn-dark:focus,
.now-hiring-btn.now-hiring-btn-dark:focus-visible,
.now-hiring-btn.now-hiring-btn-dark:active {
  background-color: #2d2d2d !important;
  background-image: none !important;
  color: #ffffff !important;
  border-color: transparent !important;
  box-shadow: none !important;
  opacity: 1;
}

.now-hiring-graphic {
  text-align: right;
}

.now-hiring-img {
  max-width: 100%;
  height: auto;
  display: block;
  margin-left: auto;
}

@media (max-width: 767.98px) {
  .now-hiring-buttons {
    max-width: 100%;
  }

  .now-hiring-graphic {
    text-align: center;
  }

  .now-hiring-img {
    margin-left: auto;
    margin-right: auto;
  }
}

.candidate-register-content-section {
  background: #ffffff;
  padding-top: 2.5rem;
  padding-bottom: 3rem;
}
.candidate-register-content-section .signup-form-container {
  max-width: 70%;
  margin: 0 auto;
}
.candidate-register-content-section .signup-form-wrapper {
  /* box-shadow: 0 1px 8px rgba(0, 0, 0, 0.06); */
  /* padding: 2rem 2.25rem 2.5rem; */
  /* border: 1px solid #e5e5e7; */
}
@media (max-width: 575.98px) {
  .candidate-register-content-section .signup-form-wrapper {
    padding: 1.5rem 1.25rem 2rem;
  }
}

/* Candidate register: 5-step process – staggered cascade, number left, card right */
.candidate-register-content-section .cv-upload-process-section {
  position: relative;
  margin-bottom: 2.75rem;
  padding-bottom: 2.25rem;
}
.candidate-register-content-section .cv-upload-process-hand {
  position: absolute;
  width: auto;
  object-fit: contain;
  pointer-events: none;
  z-index: 10; 
}
.candidate-register-content-section .cv-upload-process-hand-left {
  top: 89%;
  transform: translateY(-50%);
  max-height: 88%;
  left: 0;
}
.candidate-register-content-section .cv-upload-process-hand-right {
  top: 38%;
  transform: translateY(-50%);
  max-height: 90%;
  right: 0;
}
.candidate-register-content-section .cv-upload-process-list {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.candidate-register-content-section .cv-upload-process-step {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 0.875rem;
  direction: ltr;
  transition: padding-left 0.2s ease;
}
.candidate-register-content-section .cv-upload-process-step:nth-child(1) { padding-left: 0; }
.candidate-register-content-section .cv-upload-process-step:nth-child(2) { padding-left: 100px; }
.candidate-register-content-section .cv-upload-process-step:nth-child(3) { padding-left: 200px; }
.candidate-register-content-section .cv-upload-process-step:nth-child(4) { padding-left: 300px; }
.candidate-register-content-section .cv-upload-process-step:nth-child(5) { padding-left: 400px; }
.candidate-register-content-section .cv-upload-process-num {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: clamp(8rem, 7vw, 7rem);
  color: #2d2d2d;
  line-height: 1;
  flex-shrink: 0;
  min-width: 3.5rem;
  letter-spacing: -0.02em;
  display: flex;
  align-items: center;
  /* height: 96px; */
  box-sizing: border-box;
}
.candidate-register-content-section .cv-upload-process-card {
  width: 550px;
  max-width: 100%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 1.25rem;
  background: #2d2d2d;
  border-radius: 0;
  padding: 1.25rem 1.5rem;
  height: 110px;
  min-height: 110px;
  box-sizing: border-box;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}
.candidate-register-content-section .cv-upload-process-card:hover {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
  transform: translateY(-1px);
}
.candidate-register-content-section .cv-upload-process-card .cv-upload-process-icon {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  min-width: 48px;
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #DDC17C;
  border-radius: 0;
  color: rgba(255, 255, 255, 0.9);
  font-size: 1.25rem;
}
.candidate-register-content-section .cv-upload-process-card:hover .cv-upload-process-icon {
  color: #fff;
}
.candidate-register-content-section .cv-upload-process-card-body {
  flex: 1;
  min-width: 0;
}
.candidate-register-content-section .cv-upload-process-card .cv-upload-process-title {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 1.0625rem;
  color: #fff;
  margin: 0 0 0.4rem 0;
  line-height: 1.3;
}
.candidate-register-content-section .cv-upload-process-card .cv-upload-process-desc {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: var(--font-size-body-sm) !important;
  color: rgba(255, 255, 255, 0.92);
  margin: 0;
  line-height: 1.5;
  
}
 .cv-upload-process-desc {
  font-size: var(--font-size-body-sm) !important;
  
}
/* Candidate register: CV upload – dark heading, gold underline, dotted gold border */
.candidate-register-content-section .cv-upload-section {
  width: 900px;
  margin: 0.5rem auto;
}
.candidate-register-content-section .cv-upload-title {
  color: #1a1a1a;
  font-weight: 700;
}
.candidate-register-content-section .cv-upload-accent-line,
.candidate-register-content-section .specialized-line.cv-upload-accent-line {
  background: #DDC17C;
  width: 56px;
  height: 4px;
  border-radius: 2px;
  margin-top: 0.5rem;
}
.candidate-register-content-section .cv-upload-subtitle {
  color: #4b5563;
}
.candidate-register-content-section .cv-upload-area {
  background-color: #DDC17C2b;
  border: 2px dashed #DDC17C;
  border-radius: 0px;
  padding: 6rem 2rem;
  transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.candidate-register-content-section .cv-upload-area:hover {
  background-color: #f5f0e8;
  border-color: #9a7b10;
  box-shadow: 0 0 0 1px rgba(182, 147, 21, 0.08);
}
.candidate-register-content-section .cv-upload-icon {
  color: #DDC17C;
}
.candidate-register-content-section .cv-upload-text {
  color: #1a1a1a;
  font-weight: 700;
}
.candidate-register-content-section .cv-upload-hint {
  color: #1a1a1a;
}
.candidate-register-content-section .cv-upload-format {
  color: #6b7280;
}
.candidate-register-content-section .cv-upload-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.candidate-register-content-section .cv-upload-icon {
  color: #DDC17C;
  font-size: 2.5rem;
  margin-bottom: 1rem;
}
.candidate-register-content-section .cv-upload-text {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 1.125rem;
  color: #1a1a1a;
  margin: 0 0 0.35rem 0;
}
.candidate-register-content-section .cv-upload-hint {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 1rem;
  color: #1a1a1a;
  margin: 0 0 0.5rem 0;
}
.candidate-register-content-section .cv-upload-format {
  font-family: 'Inter', sans-serif;
  font-size: 0.875rem;
  color: #6b7280;
  margin: 0;
}

/* CV scan success — polished card after upload */
.candidate-register-content-section .cv-upload-success {
  margin-top: 1.5rem;
}
.candidate-register-content-section .cv-scan-success-card {
  border-radius: 0;
}
.candidate-register-content-section .cv-scan-action-row .signup-submit-btn {
  margin-bottom: 0;
}
.candidate-register-content-section .cv-upload-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 1.5rem;
  color: #1a1a1a;
}
.candidate-register-content-section .cv-upload-subtitle {
  font-family: 'Inter', sans-serif;
  color: #4b5563;
  margin-top: 0.5rem;
}
@media (max-width: 991.98px) {
  .candidate-register-content-section .cv-upload-process-hand,
  .candidate-register-content-section .cv-upload-process-hand-left,
  .candidate-register-content-section .cv-upload-process-hand-right {
    display: none !important;
  }
  .candidate-register-content-section .signup-form-container {
    max-width: 100%;
    width: 100%;
    padding-left: 1rem;
    padding-right: 1rem;
    box-sizing: border-box;
  }
  .candidate-register-content-section .cv-upload-section {
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
    box-sizing: border-box;
  }
  .candidate-register-content-section .cv-upload-process-section {
    margin-bottom: 1.5rem;
    padding-bottom: 1.25rem;
  }
  .candidate-register-content-section .cv-upload-process-list {
    gap: 0.65rem;
  }
  .candidate-register-content-section .cv-upload-process-step,
  .candidate-register-content-section .cv-upload-process-step:nth-child(n) {
    padding-left: 0 !important;
  }
  .candidate-register-content-section .cv-upload-process-step {
    flex-direction: row;
    align-items: stretch;
    gap: 0.65rem;
    margin-left: 0 !important;
  }
  .candidate-register-content-section .cv-upload-process-num {
    font-size: 0.9375rem;
    font-weight: 700;
    line-height: 1;
    min-width: 2.5rem;
    width: 2.5rem;
    height: 2.5rem;
    flex-shrink: 0;
    align-self: center;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(145deg, #e8cf6e 0%, #DDC17C 42%, #c4a030 100%);
    color: #1a1a1a;
    border-radius: 50%;
    box-shadow:
      0 2px 6px rgba(182, 147, 21, 0.28),
      inset 0 1px 0 rgba(255, 255, 255, 0.35);
    letter-spacing: 0;
  }
  .candidate-register-content-section .cv-upload-process-card {
    flex: 1;
    min-width: 0;
    width: auto;
    max-width: none;
    padding: 0.875rem 1rem;
    min-height: 0;
    height: auto;
    align-items: center;
    border-radius: 0px;
    border-left: 3px solid #DDC17C;
    box-shadow:
      0 6px 20px rgba(0, 0, 0, 0.14),
      0 0 0 1px rgba(255, 255, 255, 0.04) inset;
  }
  .candidate-register-content-section .cv-upload-process-card:hover {
    transform: none;
    box-shadow:
      0 8px 26px rgba(0, 0, 0, 0.16),
      0 0 0 1px rgba(255, 255, 255, 0.06) inset;
  }
  .candidate-register-content-section .cv-upload-process-card .cv-upload-process-icon {
    width: 42px;
    height: 42px;
    min-width: 42px;
    min-height: 42px;
    font-size: 1.05rem;
    border-radius: 0px;
    align-self: center;
  }
  .candidate-register-content-section .cv-upload-process-card .cv-upload-process-title {
    font-size: 1rem;
  }
  .candidate-register-content-section .cv-upload-process-card .cv-upload-process-desc {
    font-size: 0.8125rem !important;
    line-height: 1.45;
  }
  .candidate-register-content-section .cv-upload-area {
    padding: 2rem 1.25rem;
    min-height: 11rem;
    box-sizing: border-box;
  }

  /* Post–CV scan form: country + number on one row; footer like reference */
  .candidate-register-content-section .phone-input-wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 0.625rem;
    width: 100%;
  }
  .candidate-register-content-section .country-code-select {
    flex: 0 0 auto;
    min-width: 4.75rem;
    max-width: 7.5rem;
    width: auto;
    height: 48px;
    padding: 0 8px 0 10px;
    box-sizing: border-box;
  }
  .candidate-register-content-section .country-code-select .flag-icon {
    flex-shrink: 0;
  }
  .candidate-register-content-section .country-code-select .country-select,
  .candidate-register-content-section .country-code-select select.form-control {
    width: 100%;
    min-width: 0;
  }
  .candidate-register-content-section .phone-input-wrapper .input-wrapper.phone-input,
  .candidate-register-content-section .phone-input-wrapper > .input-wrapper {
    flex: 1 1 0;
    min-width: 0;
    width: auto;
  }
  .candidate-register-content-section .phone-input-wrapper .phone-input .form-control,
  .candidate-register-content-section .phone-input-wrapper .input-wrapper .form-control {
    width: 100%;
    min-height: 48px;
    box-sizing: border-box;
  }
  .candidate-register-content-section .signup-form-footer-section {
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    gap: 1rem;
    align-items: stretch;
    border-top-color: #e8e8ec;
  }
  .candidate-register-content-section .signup-form-footer-section > div:first-child {
    width: 100%;
    text-align: center;
  }
  .candidate-register-content-section .signup-form .already-have-account {
    margin-bottom: 0.25rem !important;
    padding: 0 0.75rem;
    line-height: 1.5;
    font-size: 0.9375rem;
    max-width: 22rem;
    margin-left: auto;
    margin-right: auto;
  }
  .candidate-register-content-section .signup-form-footer-section .checkbox-group {
    margin-top: 0;
    margin-bottom: 0;
    justify-content: center;
    padding: 0 0.25rem;
  }
  .candidate-register-content-section .signup-form-footer-section .custom-checkbox {
    align-items: flex-start;
    justify-content: flex-start;
    max-width: 24rem;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
  }
  .candidate-register-content-section .signup-form-footer-section .checkbox-custom {
    margin-top: 0.15rem;
  }
  .candidate-register-content-section .signup-form-footer-section .checkbox-text {
    line-height: 1.45;
    font-size: 0.875rem;
  }
  .candidate-register-content-section .signup-form > .d-flex.flex-column.flex-md-row.gap-3.mt-3 {
    gap: 0.75rem !important;
    margin-top: 1.25rem !important;
  }
  .candidate-register-content-section .signup-form .signup-submit-btn {
    margin-top: 0 !important;
    border-radius: 10px !important;
    padding: 15px 20px !important;
    min-height: 50px;
  }
}
@media (max-width: 575.98px) {
  .candidate-register-content-section .cv-upload-process-num {
    min-width: 2.25rem;
    width: 2.25rem;
    height: 2.25rem;
    font-size: 0.8125rem;
  }
  .candidate-register-content-section .cv-upload-process-card {
    padding: 0.75rem 0.875rem;
    border-radius: 0px;
  }
  .candidate-register-content-section .cv-upload-process-card .cv-upload-process-icon {
    width: 38px;
    height: 38px;
    min-width: 38px;
    min-height: 38px;
    font-size: 0.95rem;
    border-radius: 0px;
    align-self: center;
  }
}

/* Project Recruiting: Growth section (text left, image right with diagonal clip) */
.project-recruiting-growth-section {
  background: #f5f5f5;
}
.project-recruiting-growth-container {
  max-width: 100%;
  width: 100%;
  padding-left: 8rem;
  padding-right: 0;
}
.project-recruiting-growth-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}
.project-recruiting-growth-content {
  flex: 0 0 50%;
  max-width: 50%;
  padding: 3rem 0;
  position: relative;
  z-index: 2;
  background: transparent;
}
.project-recruiting-growth-image-wrap {
  flex: 0 0 65%;
  max-width: 65%;
  margin-left: -15%;
  position: relative;
  z-index: 1;
}
.project-recruiting-growth-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: 2rem;
  color: #1a1a1a;
  margin: 0 0 0 0;
  line-height: 1.25;
}
.project-recruiting-growth-title .opportunities-title-bottom {
  font-weight: 600;
}
.project-recruiting-growth-section .opportunities-line {
  margin-bottom: 1rem;
}
.project-recruiting-growth-title strong {
  font-weight: 700;
}
.project-recruiting-growth-text {
  font-family: 'Inter', sans-serif;
  font-size: 1rem;
  line-height: 1.6;
  color: #1a1a1a;
  margin: 0 0 1.5rem 0;
  padding-top: 6px;
}
.project-recruiting-growth-btn {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  color: #fff;
  border: none;
  padding: 0.75rem 1.5rem;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: 0.9375rem;
  border-radius: 0;
  text-decoration: none;
  display: inline-block;
  transition: opacity 0.2s ease;
}
.project-recruiting-growth-btn:hover {
  color: #fff;
  opacity: 0.9;
}
.project-recruiting-growth-image-wrap {
  overflow: hidden;
  min-height: 320px;
}
.project-recruiting-growth-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center left;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 12% 100%);
}
@media (max-width: 991.98px) {
  .project-recruiting-growth-row {
    flex-wrap: wrap;
  }
  .project-recruiting-growth-content {
    flex: 0 0 100%;
    max-width: 100%;
    padding: 2rem 0;
  }
  .project-recruiting-growth-image-wrap {
    flex: 0 0 100%;
    max-width: 100%;
    margin-left: 0;
    min-height: 280px;
  }
  .project-recruiting-growth-image {
    clip-path: none;
  }
}

/* Project Recruiting: 2x2 feature cards */
.project-recruiting-cards-section {
  background: #ffffff;
}
.project-recruiting-cards-row {
  --project-card-gap: 1px;
}
.project-recruiting-cards-row .col-lg-6 {
  padding: 0;
}
.project-recruiting-card {
  padding: 2rem 2.25rem 2.5rem;
  height: 100%;
  min-height: 320px;
  display: flex;
  flex-direction: column;
}
.project-recruiting-card-white {
  background: #fff;
}
.project-recruiting-card-grey {
  background: #fafafa;
}
.project-recruiting-card-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-section-title);
  color: #1a1a1a;
  margin: 0 0 0.75rem 0;
  line-height: 1.35;
}
.project-recruiting-card-line {
  width: 100%;
  height: 1px;
  background: #e5e5e7;
  margin-bottom: 1rem;
}
.project-recruiting-card-text {
  font-family: 'Inter', sans-serif;
  font-size: var(--font-size-body);
  line-height: 1.55;
  color: #555;
  margin: 0 0 1.25rem 0;
}
.project-recruiting-card-list {
  list-style: none;
  padding: 0;
  margin: 0 0 auto 0;
}
.project-recruiting-card-list li {
  font-family: 'Inter', sans-serif;
  font-size: var(--font-size-body);
  color: #1a1a1a;
  margin-bottom: 0.5rem;
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
}
.project-recruiting-card-check {
  color: #DDC17C;
  font-size: 0.875rem;
  margin-top: 0.2rem;
  flex-shrink: 0;
}
.project-recruiting-card-more {
  font-family: 'Inter', sans-serif;
  font-size: 1.2rem;
  color: #000;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin-top: 1rem;
  transition: color 0.2s ease;
}
.project-recruiting-card-more:hover {
  color: #1a1a1a;
}

.project-recruiting-card-more-grey {
  font-family: 'Inter', sans-serif;
  font-size: 1.2rem;
  color: #888;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin-top: 1rem;
  transition: color 0.2s ease;
}
.project-recruiting-card-more-grey:hover,
.project-recruiting-card-more-grey:focus-visible {
  color: #DDC17C;
}

.project-recruiting-card-x {
  width: 26px;
  height: 26px;
}

.project-recruiting-card-x-grey {
  width: 26px;
  height: 26px;
  opacity: 0.5;
  transition: opacity 0.2s ease;
}
.project-recruiting-card-more-grey:hover .project-recruiting-card-x-grey,
.project-recruiting-card-more-grey:focus-visible .project-recruiting-card-x-grey {
  opacity: 1;
}
@media (max-width: 991.98px) {
  .project-recruiting-cards-row .col-lg-6 {
    padding: 0;
  }
  .project-recruiting-card {
    min-height: auto;
    padding: 1.75rem 1.5rem;
    border-bottom: 1px solid #e5e5e7;
  }
}

/* Project Recruiting: Experienced in section (title → full-width image → sectors grid) */
.experienced-in-section {
  position: relative;
  padding: 4rem 0;
  background: #fff;
}
.experienced-in-section .container:first-of-type {
  margin-bottom: 0;
}
.experienced-in-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: 1.75rem;
  color: #1a1a1a;
  margin: 0 0 0.5rem 0;
}
.experienced-in-line {
  margin-bottom: 0;
}

/* Consistent spacing: headings directly above the small accent/divider line */
.specialized-title,
.future-title,
.future-title-light,
.future-title-bold,
.process-title,
.process-title-bold,
.process-title-light,
.opportunities-title,
.executive-strategic-title,
.executive-timeline-heading,
.who-we-are-title,
.our-values-title,
.career-options-title,
.placement-rocket-title,
.project-recruiting-growth-title,
.experienced-in-title {
  margin-bottom: 0 !important;
}
.experienced-in-image-wrap {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
}
.experienced-in-bg {
  width: 100%;
  min-height: 700px;
  background-size: cover;
  /* background-position: center right; */
  background-repeat: no-repeat;
}
.experienced-in-grid-overlay {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 50%;
  max-width: 680px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 2rem 2rem 2rem 12rem;
  box-sizing: border-box;
  background: linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0.92) 58%, rgba(255, 255, 255, 0.5) 88%, transparent 100%);
}
.experienced-in-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem 2rem;
  max-width: 100%;
  width: 100%;
}
.experienced-in-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
  text-decoration: none;
  color: inherit;
  transition: opacity 0.2s ease;
}
.experienced-in-item:hover {
  opacity: 0.85;
}
.experienced-in-icon {
  width: 64px;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0;
}
.experienced-in-icon-mask {
  display: block;
  width: 100px;
  height: 100px;
  flex-shrink: 0;
  background-color: #DDC17C;
  -webkit-mask-image: var(--icon-url);
  mask-image: var(--icon-url);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}
.experienced-in-label {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  color: #1a1a1a;
  text-align: center;
}
@media (max-width: 991.98px) {
  /* Grid over the photo (same layering as desktop); bottom band + vertical fade for legibility */
  .experienced-in-grid-overlay {
    position: absolute;
    top: 36%;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    max-width: none;
    padding: 1.5rem 1.25rem 2rem;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    box-sizing: border-box;
    background: linear-gradient(
      180deg,
      rgba(255, 255, 255, 0) 0%,
      rgba(255, 255, 255, 0.55) 22%,
      rgba(255, 255, 255, 0.92) 100%
    );
  }
  .experienced-in-bg {
    min-height: 440px;
    flex-shrink: 0;
    background-position: center center;
  }
  .experienced-in-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem 0.75rem;
    width: 100%;
    max-width: 100%;
    margin: 0;
  }
}
@media (max-width: 767.98px) {
  .experienced-in-section {
    min-height: auto;
    padding: 3rem 0;
  }
  .experienced-in-bg {
    min-height: 400px;
    background-position: center 22%;
  }
  .experienced-in-grid-overlay {
    top: 32%;
    padding: 1.25rem 0.75rem 1.75rem;
  }
  .experienced-in-grid {
    gap: 1.1rem 0.5rem;
  }
  .experienced-in-icon {
    width: 56px;
    height: 56px;
  }
  .experienced-in-icon-mask {
    width: 52px;
    height: 52px;
  }
  .experienced-in-label {
    font-size: clamp(0.7rem, 2.85vw, 0.9375rem);
    line-height: 1.25;
    overflow-wrap: break-word;
  }
}

.placement-intro-text {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-headline);
  line-height: 1.8;
  color: #222222;
  margin: 0;
  text-align: center;
}

.placement-rocket {
  background: #F5F5F5;
  padding: 100px 0;
}

.placement-rocket-image-wrap {
  border-radius: 0;
  overflow: hidden;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08);
}

.placement-rocket-image {
  width: 100%;
  height: auto;
  display: block;
}

.placement-rocket-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  color: #111111;
  margin: 0 0 16px 0;
}

.placement-rocket-line {
  width: 48px;
  height: 3px;
  background: #DDC17C;
   margin-top: 6px; 
  margin-bottom: 0;
}

.placement-rocket-text {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-body);
  line-height: 1.7;
  color: #222222;
  margin: 0 0 16px 0;
}

.placement-rocket-list {
  list-style: none;
  padding: 0;
  margin: 0 0 20px 0;
}

.placement-rocket-list li {
  position: relative;
  padding-left: 24px;
  margin-bottom: 12px;
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-body);
  line-height: 1.6;
  color: #222222;
}

.placement-rocket-list li::before {
  content: '✓';
  position: absolute;
  left: 0;
  color: #C7A33C;
  font-weight: bold;
}

.placement-rocket-list a {
  color: #C7A33C;
  text-decoration: none;
}

.placement-rocket-list a:hover {
  text-decoration: underline;
}

.placement-rocket-note {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-body);
  font-style: italic;
  color: #555;
  margin: 20px 0 0 0;
}

.placement-rocket-note a {
  color: #C7A33C;
  text-decoration: none;
}

.placement-rocket-note a:hover {
  text-decoration: underline;
}

.placement-mission-banner {
  position: relative;
  padding: 100px 0;
  overflow: hidden;
}

.placement-mission-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #1C1C1C;
  z-index: 0;
}

.placement-mission-banner .container {
  position: relative;
  z-index: 1;
}

.placement-mission-text {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-headline);
  line-height: 1.6;
  color: #C7A33C;
  text-align: center;
  margin: 0;
}

.placement-mission-text strong {
  color: #ffffff;
}

.placement-benefits {
  background: #F5F5F5;
  padding: 100px 0;
}

.placement-benefits-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  color: #111111;
  margin: 0;
  text-align: center;
}

.placement-benefit-card {
  background: #ffffff;
  padding: 32px;
  border-radius: 0;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08);
  height: 100%;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.placement-benefit-card:hover {
  transform: translateY(-4px);
  box-shadow: 0px 14px 40px rgba(0, 0, 0, 0.12);
}

.placement-benefit-card-icon {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(199, 163, 60, 0.15);
  color: #C7A33C;
  font-size: 1.25rem;
  border-radius: 0;
  margin-bottom: 20px;
}

.placement-benefit-card-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-section-title);
  color: #111111;
  margin: 0 0 12px 0;
}

.placement-benefit-card-desc {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-body);
  line-height: 1.6;
  color: #222222;
  margin: 0;
}

.placement-benefit-card-desc a {
  color: #C7A33C;
  text-decoration: none;
}

.placement-benefit-card-desc a:hover {
  text-decoration: underline;
}

.placement-jobs-section {
  background: #1C1C1C;
  padding: 100px 0;
}

.placement-jobs-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  color: #ffffff;
  margin: 0;
}

.placement-job-card {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0;
  padding: 28px;
  height: 100%;
  transition: border-color 0.2s ease, background 0.2s ease;
}

.placement-job-card:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(199, 163, 60, 0.5);
}

.placement-job-card-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-section-title);
  margin: 0 0 8px 0;
}

.placement-job-card-title a {
  color: #ffffff;
  text-decoration: none;
}

.placement-job-card-title a:hover {
  color: #C7A33C;
}

.placement-job-card-location {
  font-size: var(--font-size-body);
  color: #C7A33C;
  margin: 0 0 8px 0;
  font-family: 'Manrope', sans-serif;
}

.placement-job-card-badge {
  display: inline-block;
  background: rgba(199, 163, 60, 0.2);
  color: #C7A33C;
  padding: 4px 12px;
  border-radius: 0;
  font-size: 12px;
  font-weight: 500;
  margin-bottom: 12px;
  font-family: 'Manrope', sans-serif;
}

.placement-job-card-salary {
  font-size: var(--font-size-body);
  color: rgba(255, 255, 255, 0.8);
  margin: 0 0 16px 0;
  font-family: 'Manrope', sans-serif;
}

.placement-job-card-btn {
  display: inline-block;
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border: none;
  border-radius: 0;
  padding: 10px 24px;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  color: #ffffff;
  text-decoration: none;
  transition: opacity 0.2s ease;
}

.placement-job-card-btn:hover {
  color: #ffffff;
  opacity: 0.95;
}

.placement-no-jobs {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-headline);
  color: rgba(255, 255, 255, 0.8);
  text-align: center;
  margin: 0;
}

.placement-contact {
  background: #ffffff;
  padding: 100px 0;
}

.placement-contact-image-wrap {
  border-radius: 0;
  overflow: hidden;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08);
}

.placement-contact-image {
  width: 100%;
  height: auto;
  display: block;
}

.placement-contact-card {
  border: 2px solid #C7A33C;
  border-radius: 0;
  padding: 40px;
  background: #ffffff;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08);
}

.placement-contact-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-title);
  color: #111111;
  margin: 0 0 16px 0;
}

.placement-contact-text {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-body);
  line-height: 1.6;
  color: #222222;
  margin: 0 0 12px 0;
}

.placement-contact-subtitle {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-headline);
  color: #111111;
  margin: 24px 0 12px 0;
}

.placement-contact-item {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-body);
  color: #222222;
  margin: 0 0 8px 0;
}

.placement-contact-item a {
  color: #C7A33C;
  text-decoration: none;
}

.placement-contact-item a:hover {
  text-decoration: underline;
}

.placement-contact-item i {
  margin-right: 10px;
  color: #C7A33C;
  width: 20px;
}

.placement-testimonial {
  background: #F5F5F5;
  padding: 100px 0;
}

.placement-testimonial-card {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  position: relative;
  padding: 48px 32px;
}

.placement-quote-icon {
  position: absolute;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0.15;
  width: 80px;
  height: auto;
}

.placement-testimonial-quote {
  font-family: 'Manrope', sans-serif;
  font-size: var(--font-size-headline);
  line-height: 1.7;
  color: #222222;
  font-style: italic;
  margin: 0 0 20px 0;
}

.placement-testimonial-author {
  font-family: 'Poppins', sans-serif;
  font-size: var(--font-size-body);
  color: #555;
  margin: 0;
}

@media (max-width: 991.98px) {
  .placement-hero {
    min-height: 420px;
    padding: 60px 0;
  }
  .placement-hero-title {
    font-size: var(--font-size-headline);
  }
  .placement-trust,
  .placement-rocket,
  .placement-mission-banner,
  .placement-benefits,
  .placement-jobs-section,
  .placement-contact {
    padding: 60px 0;
  }
}

@media (max-width: 575.98px) {
  .placement-hero {
    min-height: 380px;
    padding: 48px 0;
  }
  .placement-hero-title {
    font-size: var(--font-size-headline);
  }
  .placement-contact-card {
    padding: 24px;
  }
}

/* ========== TEMPORARY PAGE STYLES ========== */
.temp-hero {
  background-image: url('/images/aboutherobg.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  min-height: 680px;
  padding: 100px 0;
  position: relative;
  display: flex;
  align-items: center;
}

.temp-hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.7) 100%);
  z-index: 1;
}

.temp-hero-shape {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 280px;
  height: 180px;
  background: linear-gradient(135deg, transparent 50%, rgba(199, 163, 60, 0.15) 50%);
  clip-path: polygon(100% 0, 100% 100%, 0 100%);
  z-index: 2;
  pointer-events: none;
}

.temp-hero-container {
  position: relative;
  z-index: 3;
}

.temp-hero-content {
  max-width: 720px;
}

.temp-hero-badge {
  display: inline-block;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  color: #C7A33C;
  margin-bottom: 16px;
  letter-spacing: 0.02em;
}

.temp-hero-title {
  font-family: 'PP Neue Montreal', 'Neue Montreal', sans-serif;
  font-weight: 600;
  font-size: 48px;
  line-height: 1.2;
  color: #ffffff;
  margin: 0;
}

.temp-hero-highlight {
  color: #C7A33C;
}

.temp-hero-subtext {
  font-family: 'Manrope', sans-serif;
  font-size: 18px;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.9);
  margin: 0;
  max-width: 560px;
}

.temp-btn-gold {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border: none;
  border-radius: 0;
  padding: 14px 32px;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  color: #ffffff;
  transition: opacity 0.2s ease;
}

.temp-btn-gold:hover {
  color: #ffffff;
  opacity: 0.95;
}

.temp-btn-outline {
  background: transparent;
  border: 2px solid #ffffff;
  border-radius: 0;
  color: #ffffff;
  padding: 12px 30px;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  transition: background 0.2s ease, color 0.2s ease;
}

.temp-btn-outline:hover {
  background: #ffffff;
  color: #111111;
  border-color: #ffffff;
}

/* Intro split */
.temp-intro {
  background: #F5F5F5;
  padding: 100px 0;
}

.temp-intro-image-wrap {
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08);
}

.temp-intro-image {
  width: 100%;
  height: auto;
  display: block;
}

.temp-intro-headline {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 48px;
  color: #111111;
  margin: 0 0 16px 0;
}

.temp-intro-line {
  width: 48px;
  height: 3px;
  background: #C7A33C;
  margin-bottom: 24px;
}

.temp-intro-text {
  font-family: 'Manrope', sans-serif;
  font-size: 17px;
  line-height: 1.7;
  color: #222222;
  margin: 0 0 16px 0;
  max-width: 700px;
}

.temp-intro-gold {
  color: #C7A33C;
  font-weight: 500;
}

/* Why section */
.temp-why {
  background: #ffffff;
  padding: 100px 0;
}

.temp-why-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 48px;
  color: #111111;
  margin: 0 0 16px 0;
  text-align: center;
}

.temp-why-line {
  width: 48px;
  height: 3px;
  background: #C7A33C;
  margin: 0 auto 40px auto;
}

.temp-why-card {
  background: #F5F5F5;
  padding: 32px;
  border-radius: 16px;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08);
  height: 100%;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.temp-why-card:hover {
  transform: translateY(-4px);
  box-shadow: 0px 14px 40px rgba(0, 0, 0, 0.12);
}

.temp-why-card-icon {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(199, 163, 60, 0.15);
  color: #C7A33C;
  font-size: 1.25rem;
  border-radius: 16px;
  margin-bottom: 20px;
}

.temp-why-card-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-section-title);
  color: #111111;
  margin: 0 0 12px 0;
}

.temp-why-card-desc {
  font-family: 'Manrope', sans-serif;
  font-size: 16px;
  line-height: 1.7;
  color: #222222;
  margin: 0;
}

.temp-why-footer {
  max-width: 700px;
  margin: 0 auto;
}

.temp-why-footer-text {
  font-family: 'Manrope', sans-serif;
  font-size: 17px;
  line-height: 1.7;
  color: #222222;
  margin: 0;
  text-align: center;
}

/* Mission strip */
.temp-mission-strip {
  position: relative;
  padding: 100px 0;
  overflow: hidden;
}

.temp-mission-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #1C1C1C;
  z-index: 0;
}

.temp-mission-strip .container {
  position: relative;
  z-index: 1;
}

.temp-mission-text {
  font-family: 'Manrope', sans-serif;
    font-size: 22px;
  line-height: 1.6;
  color: #C7A33C;
  text-align: center;
  margin: 0;
}

.temp-mission-text strong {
  color: #ffffff;
}

.temp-mission-line {
  width: 80px;
  height: 3px;
  background: #C7A33C;
  margin: 20px auto 0 auto;
}

/* Benefits */
.temp-benefits {
  background: #F5F5F5;
  padding: 100px 0;
}

.temp-benefits-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 48px;
  color: #111111;
  margin: 0;
  text-align: center;
}

.temp-benefit-card {
  background: #ffffff;
  padding: 32px;
  border-radius: 16px;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08);
  height: 100%;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.temp-benefit-card:hover {
  transform: translateY(-4px);
  box-shadow: 0px 14px 40px rgba(0, 0, 0, 0.12);
}

.temp-benefit-card-icon {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(199, 163, 60, 0.15);
  color: #C7A33C;
  font-size: 1.25rem;
  border-radius: 16px;
  margin-bottom: 20px;
}

.temp-benefit-card-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-section-title);
  color: #111111;
  margin: 0 0 12px 0;
}

.temp-benefit-card-desc {
  font-family: 'Manrope', sans-serif;
  font-size: 16px;
  line-height: 1.7;
  color: #222222;
  margin: 0;
}

.temp-benefit-card-desc a {
  color: #C7A33C;
  text-decoration: none;
}

.temp-benefit-card-desc a:hover {
  text-decoration: underline;
}

/* Jobs section */
.temp-jobs-section {
  background: #1C1C1C;
  padding: 100px 0;
}

.temp-jobs-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 48px;
  color: #ffffff;
  margin: 0;
}

.temp-job-card {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 16px;
  padding: 28px;
  height: 100%;
  transition: border-color 0.2s ease, background 0.2s ease, transform 0.2s ease;
}

.temp-job-card:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(199, 163, 60, 0.5);
  transform: translateY(-2px);
}

.temp-job-card-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-section-title);
  margin: 0 0 8px 0;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.temp-job-card-title a {
  color: #ffffff;
  text-decoration: none;
  flex: 1;
}

.temp-job-card-title a:hover {
  color: #C7A33C;
}

.temp-job-card-arrow {
  color: #C7A33C;
  font-size: 0.9rem;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.temp-job-card:hover .temp-job-card-arrow {
  transform: translateX(4px);
}

.temp-job-card-location {
  font-size: 16px;
  color: #C7A33C;
  margin: 0 0 8px 0;
  font-family: 'Manrope', sans-serif;
}

.temp-job-card-badge {
  display: inline-block;
  background: rgba(199, 163, 60, 0.2);
  color: #C7A33C;
  padding: 4px 12px;
  border-radius: 0;
  font-size: 12px;
  font-weight: 500;
  margin-bottom: 12px;
  font-family: 'Manrope', sans-serif;
}

.temp-job-card-salary {
  font-size: 16px;
  color: rgba(255, 255, 255, 0.8);
  margin: 0 0 16px 0;
  font-family: 'Manrope', sans-serif;
}

.temp-job-card-btn {
  display: inline-block;
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border: none;
  border-radius: 0;
  padding: 10px 24px;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  color: #ffffff;
  text-decoration: none;
  transition: opacity 0.2s ease;
}

.temp-job-card-btn:hover {
  color: #ffffff;
  opacity: 0.95;
}

.temp-no-jobs {
  font-family: 'Manrope', sans-serif;
  font-size: 18px;
  color: rgba(255, 255, 255, 0.8);
  text-align: center;
  margin: 0;
}

/* Contact */
.temp-contact {
  background: #ffffff;
  padding: 100px 0;
}

.temp-contact-image-wrap {
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08);
}

.temp-contact-image {
  width: 100%;
  height: auto;
  display: block;
}

.temp-contact-card {
  border: 2px solid #C7A33C;
  border-radius: 16px;
  padding: 40px;
  background: #ffffff;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08);
}

.temp-contact-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 2rem;
  color: #111111;
  margin: 0 0 16px 0;
}

.temp-contact-text {
  font-family: 'Manrope', sans-serif;
  font-size: 16px;
  line-height: 1.7;
  color: #222222;
  margin: 0 0 12px 0;
}

.temp-contact-subtitle {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: 1.25rem;
  color: #111111;
  margin: 24px 0 12px 0;
}

.temp-contact-item {
  font-family: 'Manrope', sans-serif;
  font-size: 16px;
  color: #222222;
  margin: 0 0 8px 0;
}

.temp-contact-item a {
  color: #C7A33C;
  text-decoration: none;
}

.temp-contact-item a:hover {
  text-decoration: underline;
}

.temp-contact-item i {
  margin-right: 10px;
  color: #C7A33C;
  width: 20px;
}

/* Testimonial fallback */
.temp-testimonial {
  background: #F5F5F5;
  padding: 100px 0;
}

.temp-testimonial-card {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  position: relative;
  padding: 48px 32px;
}

.temp-quote-icon {
  position: absolute;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0.15;
  width: 80px;
  height: auto;
}

.temp-testimonial-quote {
  font-family: 'Manrope', sans-serif;
  font-size: 20px;
  line-height: 1.7;
  color: #222222;
  font-style: italic;
  margin: 0 0 20px 0;
}

.temp-testimonial-author {
  font-family: 'Poppins', sans-serif;
  font-size: 16px;
  color: #555;
  margin: 0;
}

@media (max-width: 991.98px) {
  .temp-hero {
    min-height: 480px;
    padding: 60px 0;
  }
  .temp-hero-title {
    font-size: 36px;
  }
  .temp-intro-headline,
  .temp-why-title,
  .temp-benefits-title,
  .temp-jobs-title {
    font-size: 36px;
  }
  .temp-intro,
  .temp-why,
  .temp-mission-strip,
  .temp-benefits,
  .temp-jobs-section,
  .temp-contact,
  .temp-testimonial {
    padding: 60px 0;
  }
}

@media (max-width: 575.98px) {
  .temp-hero {
    min-height: 420px;
    padding: 48px 0;
  }
  .temp-hero-title {
    font-size: 28px;
  }
  .temp-contact-card {
    padding: 24px;
  }
}

/* Legacy placement sections (kept for compatibility) */
.placement-section {
  padding: 80px 0;
  background-color: #ffffff;
}

.placement-section-alt {
  background-color: #fafafa;
  padding: 80px 0;
}

.placement-section-gold {
  background-color: #d0af32;
  padding: 80px 0;
}

.placement-section-dark {
  background-color: #2B2B2B;
  padding: 80px 0;
}

.placement-text {
  font-size: var(--font-size-headline);
  color: #666;
  line-height: 1.8;
  margin: 0;
  font-family: 'Inter', sans-serif;
}

.placement-text:not(:last-child) {
  margin-bottom: 20px;
}

.placement-heading {
  font-size: var(--font-size-title);
  font-weight: 700;
  color: #1a1a1a;
  margin: 0 0 30px 0;
  font-family: 'Poppins', sans-serif;
}

.placement-highlight {
  font-size: var(--font-size-headline);
  color: #d0af32;
  line-height: 1.8;
  font-style: italic;
  margin: 0;
  font-weight: 500;
  font-family: 'Inter', sans-serif;
}

.placement-benefits-heading {
  font-size: var(--font-size-headline);
  font-weight: 700;
  color: #1a1a1a;
  margin: 0 0 50px 0;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-family: 'Poppins', sans-serif;
}

.placement-benefits-heading-dark {
  color: #ffffff;
}

.placement-benefit-item {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}

.placement-benefit-icon {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.placement-benefit-icon span {
  font-size: var(--font-size-headline);
  color: #1a1a1a;
  font-weight: bold;
}

.placement-benefit-content h3 {
  font-size: var(--font-size-headline);
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 10px 0;
  font-family: 'Poppins', sans-serif;
}

.placement-benefit-content p {
  font-size: var(--font-size-body);
  color: #1a1a1a;
  line-height: 1.8;
  margin: 0;
  font-family: 'Inter', sans-serif;
}

.placement-open-positions-heading {
  font-size: var(--font-size-headline);
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 50px 0;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-family: 'Poppins', sans-serif;
}

.placement-job-link {
  text-decoration: none;
  color: inherit;
}

.placement-job-title {
  font-size: var(--font-size-headline);
  color: #ffffff;
  margin: 0;
  font-family: 'Inter', sans-serif;
  transition: color 0.3s;
}

.placement-job-title:hover {
  color: #d0af32;
}

.placement-job-location {
  color: #d0af32;
}

.placement-no-jobs {
  font-size: var(--font-size-headline);
  color: #ffffff;
  text-align: center;
  margin: 0;
  font-family: 'Inter', sans-serif;
}

.placement-btn-outline {
  background: transparent;
  border: 2px solid #d0af32;
  border-radius: 0;
  color: #d0af32;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-button);
  padding: 10px 30px;
  text-decoration: none;
  display: inline-block;
  transition: all 0.3s;
}

.placement-btn-outline:hover {
  background-color: #d0af32;
  color: #1a1a1a;
  border-color: #d0af32;
}

/* Responsive Styles for Placement */
@media (max-width: 991.98px) {
  .placement-section,
  .placement-section-alt {
    padding: 60px 0;
  }

  .placement-section-gold,
  .placement-section-dark {
    padding: 60px 0;
  }

  .placement-heading {
    font-size: var(--font-size-headline);
  }

  .placement-benefits-heading,
  .placement-open-positions-heading {
    font-size: var(--font-size-headline);
    margin-bottom: 40px;
  }
}

@media (max-width: 767.98px) {
  .placement-section,
  .placement-section-alt {
    padding: 40px 0;
  }

  .placement-section-gold,
  .placement-section-dark {
    padding: 40px 0;
  }

  .placement-heading {
    font-size: var(--font-size-headline);
    margin-bottom: 20px;
  }

  .placement-highlight {
    font-size: var(--font-size-headline);
  }

  .placement-text {
    font-size: var(--font-size-body);
  }

  .placement-benefits-heading,
  .placement-open-positions-heading {
    font-size: var(--font-size-headline);
    margin-bottom: 30px;
  }

  .placement-benefit-content h3 {
    font-size: var(--font-size-headline);
  }

  .placement-benefit-content p {
    font-size: var(--font-size-body);
  }

  .placement-job-title {
    font-size: var(--font-size-body);
  }
}

@media (max-width: 575.98px) {
  .placement-section,
  .placement-section-alt {
    padding: 30px 0;
  }

  .placement-section-gold,
  .placement-section-dark {
    padding: 30px 0;
  }

  .placement-heading {
    font-size: var(--font-size-headline);
  }

  .placement-highlight {
    font-size: var(--font-size-body);
  }

  .placement-text {
    font-size: var(--font-size-body);
  }

  .placement-benefits-heading,
  .placement-open-positions-heading {
    font-size: var(--font-size-body);
  }

  .placement-benefit-content h3 {
    font-size: var(--font-size-body);
  }

  .placement-benefit-content p {
    font-size: var(--font-size-body);
  }

  .placement-job-title {
    font-size: var(--font-size-body);
  }
}

/* ========== CAREER PAGE (high-end recruitment) ========== */
.career-hero {
  background-image: url('/images/landscape/10.png');
  background-size: cover;
  background-position: center;
  min-height: 520px;
  padding: 100px 0;
  display: flex;
  align-items: center;
  position: relative;
}

.career-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0.5) 100%);
  z-index: 1;
}

.career-hero-title {
  font-family: 'Poppins', 'Inter', sans-serif;
  font-weight: 700;
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  color: #fff;
  margin: 0 0 1rem 0;
  line-height: 1.2;
}

.career-hero-sub {
  font-family: 'Inter', 'Manrope', sans-serif;
  font-size: 1.125rem;
  line-height: 1.6;
  color: rgba(255,255,255,0.95);
  margin: 0 0 1.75rem 0;
  max-width: 560px;
}

.career-hero-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.career-btn-primary {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  color: #fff;
  border: none;
  border-radius: 0;
  padding: 14px 28px;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 1rem;
  transition: opacity 0.2s, box-shadow 0.2s;
}

.career-btn-primary:hover {
  color: #fff;
  opacity: 0.95;
  box-shadow: 0 4px 14px rgba(208, 175, 50, 0.4);
}

.career-btn-secondary {
  background: transparent;
  color: #fff;
  border: 2px solid rgba(255,255,255,0.9);
  border-radius: 0;
  padding: 12px 26px;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 1rem;
  transition: background 0.2s, color 0.2s;
}

.career-btn-secondary:hover {
  background: #fff;
  color: #1a1a1a;
  border-color: #fff;
}

.career-section {
  background: #fff;
}

.career-section-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 1.75rem;
  color: #1a1a1a;
  margin: 0;
}

/* Why Join cards */
.career-why {
  background: #fafafa;
}

.career-why-card {
  background: #fff;
  border-radius: 0;
  padding: 28px 24px;
  height: 100%;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.career-why-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.1);
}

.career-why-icon {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(208, 175, 50, 0.15);
  color: #DDC17C;
  font-size: 1.25rem;
  border-radius: 0;
  margin-bottom: 1rem;
}

.career-why-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: 1.125rem;
  color: #1a1a1a;
  margin: 0 0 0.5rem 0;
}

.career-why-text {
  font-family: 'Inter', sans-serif;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #555;
  margin: 0;
}

/* Departments */
.career-departments {
  background: #fff;
}

.career-dept-card {
  background: #fff;
  border-radius: 0;
  padding: 28px 24px;
  height: 100%;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
  border: 1px solid #eee;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.career-dept-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.08);
}

.career-dept-icon {
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(208, 175, 50, 0.12);
  color: #DDC17C;
  font-size: 1.35rem;
  border-radius: 0;
  margin-bottom: 1rem;
}

.career-dept-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: 1.25rem;
  color: #1a1a1a;
  margin: 0 0 0.5rem 0;
}

.career-dept-desc {
  font-family: 'Inter', sans-serif;
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: #555;
  margin: 0 0 1.25rem 0;
}

.career-dept-btn {
  background: transparent;
  color: #DDC17C;
  border: 2px solid #DDC17C;
  border-radius: 0;
  padding: 10px 20px;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  transition: background 0.2s, color 0.2s;
}

.career-dept-btn:hover {
  background: #DDC17C;
  color: #fff;
  border-color: #DDC17C;
}

/* Life at Xowa */
.career-culture {
  background: #fafafa;
}

.career-culture-tagline {
  font-family: 'Inter', sans-serif;
  font-size: 1.0625rem;
  color: #555;
  margin: 0;
}

.career-culture-tile {
  aspect-ratio: 1;
  border-radius: 0;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: flex-end;
  padding: 16px;
  position: relative;
  overflow: hidden;
}

.career-culture-tile::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.6), transparent 50%);
  pointer-events: none;
}

.career-culture-tile span {
  position: relative;
  z-index: 1;
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: 1rem;
  color: #fff;
}

/* Benefits */
.career-benefits {
  background: #f5f5f5;
}

.career-benefit-card {
  background: #fff;
  border-radius: 0;
  padding: 28px 24px;
  height: 100%;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
  transition: box-shadow 0.25s ease;
}

.career-benefit-card:hover {
  box-shadow: 0 6px 20px rgba(0,0,0,0.08);
}

.career-benefit-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.career-benefit-list li {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: 'Inter', sans-serif;
  font-size: 1rem;
  color: #333;
  margin-bottom: 12px;
}

.career-benefit-list li:last-child {
  margin-bottom: 0;
}

.career-benefit-list li i {
  color: #DDC17C;
  width: 20px;
  text-align: center;
}

.career-benefit-quote {
  font-family: 'Inter', sans-serif;
  font-size: 1.125rem;
  font-style: italic;
  color: #333;
  line-height: 1.6;
  margin: 0 0 0.5rem 0;
}

.career-benefit-author {
  font-family: 'Inter', sans-serif;
  font-size: 0.875rem;
  color: #666;
  margin: 0;
}

/* Open positions */
.career-jobs {
  background: #fff;
}

.career-jobs-filters .form-control,
.career-jobs-filters .form-select {
  border-radius: 0;
  border: 1px solid #e0e0e0;
}

.career-job-card {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 0;
  padding: 24px;
  height: 100%;
  transition: box-shadow 0.25s ease, border-color 0.25s;
}

.career-job-card:hover {
  box-shadow: 0 6px 20px rgba(0,0,0,0.08);
  border-color: #e5e5e5;
}

.career-job-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: 1.125rem;
  color: #1a1a1a;
  margin: 0 0 0.75rem 0;
  line-height: 1.3;
}

.career-job-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 16px;
  margin-bottom: 1rem;
  font-family: 'Inter', sans-serif;
  font-size: 0.8125rem;
  color: #666;
}

.career-job-meta span {
  display: flex;
  align-items: center;
  gap: 6px;
}

.career-job-meta i {
  color: #DDC17C;
  width: 14px;
}

.career-no-jobs {
  font-family: 'Inter', sans-serif;
  color: #555;
}

/* Hiring process */
.career-process {
  background: #fafafa;
}

.career-process-steps {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.5rem 1rem;
  max-width: 900px;
  margin: 0 auto;
}

.career-process-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 16px 20px;
  background: #fff;
  border-radius: 0;
  box-shadow: 0 2px 10px rgba(0,0,0,0.06);
  min-width: 120px;
}

.career-process-step-last .career-process-num {
  background: linear-gradient(90deg, #d0af32, #DDC17C);
  color: #fff;
}

.career-process-num {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f0f0f0;
  color: #1a1a1a;
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 1rem;
  border-radius: 0;
}

.career-process-step span:last-child {
  font-family: 'Inter', sans-serif;
  font-size: 0.8125rem;
  font-weight: 500;
  color: #333;
  text-align: center;
}

.career-process-arrow {
  color: #DDC17C;
  font-size: 0.875rem;
}

@media (max-width: 767.98px) {
  .career-process-arrow {
    display: none;
  }
}

/* Contact */
.career-contact {
  background: #fff;
}

.career-contact-intro {
  font-family: 'Inter', sans-serif;
  font-size: 1.0625rem;
  color: #555;
  margin: 0;
}

.career-contact-form .form-control {
  border-radius: 0;
  border: 1px solid #e0e0e0;
}

.career-contact-form .form-control:focus {
  border-color: #DDC17C;
  box-shadow: 0 0 0 3px rgba(182, 147, 21, 0.15);
}

@media (max-width: 767.98px) {
  .career-hero {
    min-height: 420px;
    padding: 60px 0;
  }
  .career-hero-buttons {
    flex-direction: column;
  }
  .career-hero-buttons .btn {
    width: 100%;
  }
}

/* JOB SEARCH PAGE STYLES */
.job-search-filters-sidebar {
  background-color: #ffffff;
  border-radius: 0;
  position: sticky;
  top: 20px;
  padding: 1.25rem 1rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
  max-height: calc(100vh - 40px);
  max-height: calc(100dvh - 40px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  text-align: left;
}

.job-search-filters-title {
  font-size: var(--font-size-headline);
  font-weight: 600;
  font-family: 'Poppins', sans-serif;
  color: #1a1a1a;
  margin: 0 0 24px 0;
  padding: 0 0 16px 0;
  border-bottom: 1px solid #e5e5e5;
  text-align: left;
  width: 100%;
  box-sizing: border-box;
  flex-shrink: 0;
}

.job-search-filter-form {
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0;
  width: 100%;
  box-sizing: border-box;
}

.job-search-filters-sidebar .job-search-filter-form-v2 {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
}

.job-search-filter-form-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  padding-right: 4px;
  /* Prevent scroll position jumping when pill selection changes layout */
  overflow-anchor: none;
}

.job-search-filter-form-scroll::-webkit-scrollbar {
  width: 6px;
}

.job-search-filter-form-scroll::-webkit-scrollbar-track {
  background: transparent;
}

.job-search-filter-form-scroll::-webkit-scrollbar-thumb {
  background: #c5c5c5;
  border-radius: 3px;
}

.job-search-filter-form-scroll::-webkit-scrollbar-thumb:hover {
  background: #a8a8a8;
}

.job-search-filter-form-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
  padding-top: 16px;
  margin-top: 4px;
  border-top: 1px solid #e5e5e5;
  background: #ffffff;
}

.job-search-filter-form-actions .job-search-filter-reset--toolbar {
  margin-left: auto;
}

.job-search-filter-range-row {
  display: flex;
  gap: 8px;
  align-items: stretch;
}

.job-search-filter-range-row .job-search-filter-input {
  flex: 1 1 0;
  min-width: 0;
}

.candidate-search-advanced-toggle {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 10px 14px;
  margin: 0;
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-body);
  color: #1a1a1a;
  background: #fff;
  border: 1px solid #ddd;
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease;
  text-align: left;
  box-sizing: border-box;
}

.candidate-search-advanced-toggle:hover {
  border-color: #c8a96a;
  background: rgba(200, 169, 106, 0.06);
}

.candidate-search-advanced-panel {
  margin-top: 12px;
}

/* Full-width filter fields and controls (same width as Apply Filters button) */
.job-search-filters-sidebar .job-search-filter-field {
  width: 100%;
  max-width: none;
  min-width: 0;
}

.job-search-filters-sidebar .job-search-filter-input-wrapper,
.job-search-filters-sidebar .job-search-filter-input,
.job-search-filters-sidebar .job-search-filter-select {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.job-search-filter-label {
  display: block;
  margin: 0 0 8px 0;
  padding: 0;
  font-size: var(--font-size-body);
  font-weight: 500;
  color: #4E4E4E;
  font-family: 'Poppins', sans-serif;
  text-align: left;
  width: 100%;
  box-sizing: border-box;
}

.job-search-filters-sidebar .job-search-filter-label {
  padding-left: 0;
  margin-left: 0;
}

.job-search-filter-input-wrapper {
  position: relative;
  width: 100%;
}

.job-search-filter-icon {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  pointer-events: none;
  z-index: 1;
}

.job-search-filter-input {
  width: 100%;
  padding: 10px 10px 10px 40px;
  border: 1px solid #ddd;
  border-radius: 0;
  font-size: var(--font-size-body);
  font-family: 'Inter', sans-serif;
  box-sizing: border-box;
}

.job-search-filter-select {
  width: 100%;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 0;
  font-size: var(--font-size-body);
  background-color: white;
  font-family: 'Inter', sans-serif;
  box-sizing: border-box;
  cursor: pointer;
}

.job-search-filter-checkbox-wrapper {
  width: 100%;
}

.job-search-filter-checkbox-label {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: var(--font-size-body);
  font-weight: 500;
  color: #4E4E4E;
  cursor: pointer;
  font-family: 'Poppins', sans-serif;
  margin: 0;
}

.job-search-filter-checkbox {
  width: 18px;
  height: 18px;
  cursor: pointer;
  margin: 0;
  flex-shrink: 0;
}

.job-search-filter-checkbox-text {
  line-height: 1.4;
}

.job-search-filter-button {
  width: 100%;
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border-radius: 0;
  border: none;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 100%;
  letter-spacing: 0%;
  color: white;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  transition: background 0.3s;
  margin-top: 8px;
}

.job-search-filter-clear {
  display: block;
  text-align: center;
  padding: 10px;
  color: #d0af32;
  text-decoration: none;
  font-size: var(--font-size-body);
  font-weight: 500;
  transition: color 0.3s;
  font-family: 'Manrope', sans-serif;
  margin-top: 8px;
}

.job-search-filter-clear:hover {
  color: #DDC17C;
}

.job-search-filters-sidebar .job-search-filter-clear {
  text-align: left;
}

.job-search-filter-reset {
  display: block;
  width: 100%;
  text-align: center;
  padding: 12px 10px;
  margin-top: 12px;
  color: #8a6d35;
  background: linear-gradient(135deg, rgba(221, 193, 124, 0.22) 0%, rgba(200, 169, 106, 0.14) 100%);
  border: 1px solid #e5d5b0;
  font-size: var(--font-size-button-sm);
  font-weight: 600;
  font-family: 'Montserrat', sans-serif;
  text-decoration: none;
  transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.job-search-filter-reset:hover {
  border-color: #c8a96a;
  color: #1a1a1a;
  background: linear-gradient(135deg, rgba(221, 193, 124, 0.34) 0%, rgba(200, 169, 106, 0.24) 100%);
  box-shadow: 0 2px 8px rgba(168, 134, 74, 0.12);
}

.job-search-filters-sidebar .job-search-filter-reset {
  text-align: center;
}

.job-search-chip-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  width: 100%;
}

.job-search-chip-toolbar-main {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

@media (min-width: 992px) {
  .job-search-chip-toolbar {
    flex-wrap: nowrap;
  }

  .job-search-chip-toolbar-main {
    flex: 1 1 0;
    flex-wrap: nowrap;
    min-width: 0;
    overflow: visible;
  }

  .job-search-chip-toolbar-main .job-search-chip-row--filters {
    flex-wrap: nowrap;
    flex-shrink: 0;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #d8d8d8 transparent;
    padding-bottom: 2px;
  }

  .job-search-chip-toolbar-main .job-search-chip-row--filters::-webkit-scrollbar {
    height: 4px;
  }

  .job-search-chip-toolbar-main .job-search-chip-row--filters::-webkit-scrollbar-thumb {
    background: #d0d0d0;
    border-radius: 4px;
  }
}

.job-search-filter-reset--toolbar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  margin-top: 0;
  margin-left: auto;
  padding: 8px 16px;
  min-height: 40px;
  white-space: nowrap;
  flex: 0 0 auto;
  flex-shrink: 0;
  border-radius: 999px !important;
  font-size: var(--font-size-button-sm);
  font-weight: 600;
  font-family: 'Montserrat', sans-serif;
  color: #8a6d35;
  background: linear-gradient(135deg, rgba(221, 193, 124, 0.22) 0%, rgba(200, 169, 106, 0.14) 100%);
  border: 1px solid #e5d5b0;
}

.job-search-filter-reset--toolbar:hover {
  color: #1a1a1a;
  border-color: #c8a96a;
  background: linear-gradient(135deg, rgba(221, 193, 124, 0.34) 0%, rgba(200, 169, 106, 0.24) 100%);
  box-shadow: 0 2px 8px rgba(168, 134, 74, 0.12);
}

.job-search-filter-reset--toolbar.is-hidden,
.job-search-filter-reset--toolbar[hidden] {
  display: none !important;
}

.job-search-mobile-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 10px;
  width: 100%;
}

.job-search-mobile-toolbar .job-search-mobile-filter-btn {
  flex: 1 1 140px;
  width: auto;
  min-width: 0;
}

.job-search-mobile-toolbar .job-search-filter-reset--toolbar {
  flex: 0 0 auto;
  align-self: stretch;
}

/* Job search sidebar — reference layout (work pills + checkbox groups + counts) */
.job-search-filter-form-v2 {
  margin: 0;
  padding: 0;
}

.job-search-filter-form-v2 .job-search-filter-field {
  margin-bottom: 0.75rem;
}

.job-search-filter-divider {
  border: none;
  border-top: 1px solid #e5e5e7;
  margin: 1.25rem 0;
}

.job-search-filter-section {
  margin-bottom: 0;
  text-align: left;
  width: 100%;
}

.job-search-filter-section-title {
  font-weight: 600;
  font-size: var(--font-size-body);
  color: #1a1a1a;
  margin: 0 0 12px 0;
  padding: 0;
  font-family: 'Poppins', sans-serif;
  text-align: left;
  width: 100%;
  display: block;
  line-height: 1.35;
  box-sizing: border-box;
}

.job-filter-pill-group {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.job-filter-pill {
  display: block;
  margin: 0;
  cursor: pointer;
  /* Contain absolutely positioned radio so focus/scroll-into-view stays on the pill */
  position: relative;
}

.job-filter-pill input {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  width: 0;
  height: 0;
  margin: 0;
  /* Avoid the scroll container jumping when focus moves to the hidden input */
  scroll-margin: 0;
}

.job-filter-pill-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  padding: 10px 14px;
  border: 1px solid #C7A33C;
  border-radius: 999px;
  color: #1a1a1a;
  background: #fff;
  font-size: var(--font-size-body);
  font-weight: 500;
  font-family: 'Inter', sans-serif;
  box-sizing: border-box;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.job-filter-pill-left {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.job-filter-pill-left i {
  font-size: 0.95rem;
  opacity: 0.95;
}

.job-filter-pill input:checked + .job-filter-pill-inner {
  background: linear-gradient(180deg, rgba(221, 193, 124, 0.22) 0%, rgba(208, 175, 50, 0.12) 100%);
  border-color: #d0af32;
  color: #1a1a1a;
}

.job-filter-pill input:focus-visible + .job-filter-pill-inner {
  outline: 2px solid #DDC17C;
  outline-offset: 2px;
}

.job-filter-row {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 10px;
  width: 100%;
  margin: 0 0 10px 0;
  cursor: pointer;
  font-size: var(--font-size-footer-links);
  color: #4E4E4E;
  font-family: 'Inter', sans-serif;
  box-sizing: border-box;
}

.job-filter-row-label {
  min-width: 0;
  line-height: 1.35;
  text-align: left;
  color: #4E4E4E;
}

/* Sort by: no count column */
.job-filter-sort-row {
  grid-template-columns: 18px minmax(0, 1fr);
}

.job-filter-row-label-with-icon {
  display: flex;
  align-items: center;
  gap: 8px;
  justify-content: flex-start;
}

.job-filter-row-icon {
  width: 1.15em;
  text-align: center;
  color: #d0af32;
  flex-shrink: 0;
  font-size: 0.95em;
}

.job-search-filter-empty-hint {
  font-size: var(--font-size-caption);
  color: #4E4E4E;
  font-family: 'Inter', sans-serif;
}

.job-filter-checkbox {
  width: 18px;
  height: 18px;
  max-width: 18px;
  flex-shrink: 0;
  margin: 0;
  cursor: pointer;
  accent-color: #d0af32;
  justify-self: start;
  align-self: center;
}

.job-filter-radio {
  width: 18px;
  height: 18px;
  max-width: 18px;
  flex-shrink: 0;
  margin: 0;
  cursor: pointer;
  accent-color: #d0af32;
  justify-self: start;
  align-self: center;
}

.job-filter-sort-group .job-filter-row-label {
  font-weight: 500;
}

.job-filter-count {
  min-width: 30px;
  justify-self: end;
  align-self: center;
  text-align: center;
  padding: 2px 8px;
  font-size: var(--font-size-caption);
  font-weight: 600;
  font-family: 'Inter', sans-serif;
  color: #1a1a1a;
  background: #f5f2eb;
  border: 1px solid #e8e0d0;
  border-radius: 4px;
  box-sizing: border-box;
}

.job-filter-show-more {
  display: block;
  width: 100%;
  background: none;
  border: none;
  padding: 0;
  margin: 8px 0 0 0;
  color: #d0af32;
  font-size: var(--font-size-body);
  font-weight: 500;
  font-family: 'Manrope', sans-serif;
  cursor: pointer;
  text-decoration: underline;
  text-decoration-color: rgba(208, 175, 50, 0.65);
  text-underline-offset: 3px;
  text-align: left;
  box-sizing: border-box;
}

.job-filter-show-more:hover {
  color: #DDC17C;
  text-decoration-color: #DDC17C;
}

/* JOB LISTINGS STYLES */
.job-listings-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 16px;
  background-color: #f9f9f9;
  border-radius: 0;
}

.job-listings-header-title {
  font-size: var(--font-size-headline-text);
  font-weight: 600;
  color: #1a1a1a;
  margin: 0;
}

.job-listings-header-count {
  font-size: var(--font-size-body);
  color: #666;
}

.job-item-card {
  background-color: #ffffff;
  border-radius: 0;
  padding: 24px;
  margin-bottom: 24px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.3s ease;
}

.job-item-card:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}

.job-card-title-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}

.job-card-title-row .job-card-title {
  flex: 1;
  margin: 0;
  min-width: 0;
}

.job-card-title-link {
  color: inherit;
  text-decoration: none;
}

.job-card-title-link:hover {
  color: var(--gold, #DDC17C);
}

.job-card-wishlist-btn {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px;
  border: none;
  background: none;
  cursor: pointer;
  transition: filter 0.2s ease, opacity 0.2s ease;
}

.job-card-wishlist-btn:hover {
  filter: none;
  opacity: 1;
}

.job-card-wishlist-icon {
  width: 20px;
  height: 20px;
  display: block;
  filter: grayscale(100%);
  opacity: 0.7;
  transition: filter 0.2s ease, opacity 0.2s ease;
}

.job-card-wishlist-btn:hover .job-card-wishlist-icon,
.job-card-wishlist-saved .job-card-wishlist-icon {
  filter: none;
  opacity: 1;
}

.job-card-title {
  font-size: var(--font-size-section-title);
  font-weight: 700;
  color: #1a1a1a;
  margin: 0 0 16px 0;
  line-height: 1.3;
  font-family: 'Poppins', sans-serif;
}

.job-card-attributes {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
}

.job-card-attribute {
  display: flex;
  align-items: center;
  gap: 6px;
}

.job-card-attribute-icon {
  font-size: var(--font-size-body);
  color: #d0af32;
}

.job-card-attribute-text {
  font-size: var(--font-size-body);
  color: #4E4E4E;
  font-family: 'Inter', sans-serif;
}

.job-card-remote-tag {
  background-color: #d0af32;
  color: #1a1a1a;
  padding: 4px 12px;
  border-radius: 4px;
  font-size: var(--font-size-body);
  font-weight: 500;
  font-family: 'Inter', sans-serif;
}

.job-card-description {
  font-size: var(--font-size-body);
  color: #4E4E4E;
  line-height: 1.6;
  margin: 0 0 5px 0;
  font-family: 'Inter', sans-serif;
}

.job-card-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 16px;
  border-top: 1px solid #e5e5e5;
}

.job-card-salary {
  font-size: var(--font-size-body);
  color: #d0af32;
  font-weight: 500;
  margin: 0;
  font-family: 'Inter', sans-serif;
}

.job-card-footer-right {
  display: flex;
  align-items: center;
  gap: 16px;
}

.job-card-time {
  font-size: var(--font-size-body);
  color: #666;
  font-family: 'Inter', sans-serif;
}

.job-card-view-details {
  background: linear-gradient(90deg, #d0af32 25.48%, #DDC17C 100%);
  border-radius: 0;
  border: none;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  font-size: var(--font-size-body);
  line-height: 100%;
  letter-spacing: 0%;
  color: white;
  height: 38px;
  padding: 0 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-decoration: none;
  transition: background 0.3s;
}

.job-card-view-details:hover {
  background-color: #b89a2a !important;
}

.job-card-empty {
  text-align: center;
}

.job-card-empty-title {
  font-size: var(--font-size-section-title);
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 12px 0;
  font-family: 'Poppins', sans-serif;
}

.job-card-empty-text {
  font-size: var(--font-size-body);
  color: #666;
  margin: 0;
  font-family: 'Inter', sans-serif;
}

/* Responsive Styles for Job Search */
@media (max-width: 991.98px) {
  .job-search-filters-sidebar {
    position: static;
    margin-bottom: 30px;
  }

  .job-listings-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
}

@media (max-width: 767.98px) {
  .job-card-title {
    font-size: var(--font-size-section-title);
  }

  .job-card-attributes {
    gap: 12px;
  }

  .job-card-footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .job-card-footer-right {
    width: 100%;
    justify-content: space-between;
  }
}

@media (max-width: 575.98px) {
  .job-item-card {
    padding: 16px;
  }

  .job-card-title {
    font-size: var(--font-size-section-title);
  }

  .job-card-attribute-text {
    font-size: var(--font-size-body);
  }

  .job-card-description {
    font-size: var(--font-size-body);
  }
}

/* Job search — premium listing layout (sharp corners, gold accent) */
.job-search-page-container {
  max-width: 1280px;
}

.job-search-layout-row {
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: stretch;
}

.job-search-col-listings {
  order: 1;
  width: 100%;
  min-width: 0;
  overflow: visible;
}

.job-search-col-filters {
  order: 2;
  width: 100%;
  flex: 0 0 auto;
}

.job-search-mobile-toolbar {
  margin-bottom: 16px;
}

.job-search-mobile-filter-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 12px 16px;
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: var(--font-size-body);
  color: #1a1a1a;
  background: #fff;
  border: 1px solid #ddd;
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease;
}

.job-search-mobile-filter-btn:hover {
  border-color: #c8a96a;
  background: rgba(200, 169, 106, 0.06);
}

.job-search-mobile-backdrop[hidden] {
  display: none !important;
}

.job-search-filters-panel {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}

.job-search-filter-card {
  padding: 16px 0;
  margin: 0;
}

.job-search-filter-card--salary {
  padding-top: 0;
}

.job-search-filter-hint {
  font-size: var(--font-size-caption);
  color: #6b6b6b;
  margin: 0 0 12px 0;
  line-height: 1.45;
  font-family: 'Inter', sans-serif;
}

.job-search-salary-sliders {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.job-search-salary-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.job-search-salary-mini-label {
  font-size: var(--font-size-caption);
  font-weight: 600;
  color: #4e4e4e;
  font-family: 'Poppins', sans-serif;
}

.job-search-salary-range-input {
  width: 100%;
  height: 6px;
  accent-color: #c8a96a;
  cursor: pointer;
}

.job-search-salary-readout {
  font-size: var(--font-size-caption);
  font-weight: 600;
  color: #1a1a1a;
  font-family: 'Inter', sans-serif;
}

.job-search-filter-section-title--inline {
  margin: 0;
  display: inline;
}

.job-search-remote-toggle-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.job-search-remote-switch {
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
}

.job-search-remote-switch input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.job-search-remote-switch-ui {
  width: 44px;
  height: 24px;
  background: #e5e5e5;
  border: 1px solid #ccc;
  transition: background 0.2s ease, border-color 0.2s ease;
  position: relative;
}

.job-search-remote-switch-ui::after {
  content: '';
  position: absolute;
  top: 2px;
  left: 2px;
  width: 18px;
  height: 18px;
  background: #fff;
  border: 1px solid #bbb;
  transition: transform 0.2s ease;
}

.job-search-remote-switch input:checked + .job-search-remote-switch-ui {
  background: rgba(200, 169, 106, 0.35);
  border-color: #c8a96a;
}

.job-search-remote-switch input:checked + .job-search-remote-switch-ui::after {
  transform: translateX(20px);
  border-color: #c8a96a;
}

.job-search-remote-switch input:focus-visible + .job-search-remote-switch-ui {
  outline: 2px solid #ddc17c;
  outline-offset: 2px;
}

.job-listings-premium {
  margin: 0;
}

.job-listings-header-premium {
  background: #f5f5f5;
  border: 1px solid #e8e8e8;
  padding: 10px 16px;
}

/* Job search: summary + pagination on one row at bottom */
.job-listings-footer--bottom .job-listings-bottom-summary.job-listings-header-premium {
  background: transparent;
  border: none;
  padding: 0;
  box-shadow: none;
}

.job-listings-footer--bottom .job-listings-bottom-summary-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px 24px;
}

.job-listings-footer--bottom .job-listings-summary-text {
  min-width: 0;
  flex: 1 1 auto;
}

.job-listings-footer--bottom .job-listings-summary-text .job-listings-header-title {
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.35;
  margin-bottom: 2px;
  color: #1a1a1a;
}

.job-listings-footer--bottom .job-listings-summary-text .job-listings-header-count {
  font-size: 0.8125rem;
  font-weight: 400;
  line-height: 1.4;
  color: #666;
}

.job-listings-footer--bottom .job-listings-pagination-wrap {
  flex: 0 0 auto;
  margin-left: auto;
}

@media (max-width: 575.98px) {
  .job-listings-footer--bottom .job-listings-bottom-summary-inner {
    flex-direction: column;
    align-items: stretch;
    text-align: center;
  }

  .job-listings-footer--bottom .job-listings-pagination-wrap {
    margin-left: 0;
    display: flex;
    justify-content: center;
  }
}

/* Job search page — mobile / tablet */
.job-search-mobile-toolbar-fs {
  border: 0;
  padding: 0;
  margin: 0 0 16px;
  min-width: 0;
}

.job-search-combined-bar--mobile {
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

@media (max-width: 991.98px) {
  .job-search-page-container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .job-search-mobile-toolbar {
    margin-bottom: 12px;
  }

  .placement-hero.job-search-hero-section {
    min-height: 0;
    padding: 64px 0 48px !important;
  }

  .placement-hero.job-search-hero-section .placement-hero-title {
    font-size: clamp(1.5rem, 4.5vw, 2.25rem);
    line-height: 1.2;
  }

  #job-search-listings-container .job-listings {
    padding-left: 0;
    padding-right: 0;
  }

  #candidate-search-listings-container .candidate-listings {
    padding-left: 0;
    padding-right: 0;
  }

  .job-content.job-content--opportunities {
    gap: 10px;
  }

  .job-listings-footer--bottom .job-listings-pagination-wrap .pagination {
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px;
    margin-bottom: 0;
  }

  .job-listings-footer--bottom .job-listings-pagination-wrap nav {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
  }
}

@media (max-width: 575.98px) {
  .placement-hero.job-search-hero-section {
    padding: 48px 0 36px !important;
  }

  .placement-hero.job-search-hero-section .placement-hero-title {
    font-size: 1.5rem;
  }

  .placement-hero.job-search-hero-section .placement-hero-content .d-flex.flex-wrap.gap-3 {
    flex-direction: column;
    align-items: stretch;
  }

  .placement-hero.job-search-hero-section .placement-btn-gold,
  .placement-hero.job-search-hero-section .placement-btn-outline {
    width: 100%;
    text-align: center;
    justify-content: center;
  }

  .job-search-page-container {
    padding-left: 12px;
    padding-right: 12px;
  }

  .job-search-mobile-toolbar-fs {
    margin-bottom: 12px;
  }

  .job-content.job-content--opportunities {
    flex-direction: row;
    align-items: stretch;
    gap: 10px;
  }

  .job-meta.job-meta--opportunities {
    flex-direction: column;
    align-items: flex-end;
    justify-content: space-between;
    gap: 0;
    width: auto;
    flex-shrink: 0;
    align-self: stretch;
    padding-top: 4px;
  }

  .job-title--opportunities .job-title-link-opportunities {
    font-size: 1rem !important;
    line-height: 1.35 !important;
  }

  .job-listings-footer--bottom .job-listings-summary-text .job-listings-header-title {
    font-size: 0.875rem;
  }

  .job-listings-footer--bottom .job-listings-summary-text .job-listings-header-count {
    font-size: 0.75rem;
  }
}

.job-card-premium {
  border: 1px solid #e8e8e8;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
  margin-bottom: 16px;
}

.job-card-premium:hover {
  transform: translateY(-2px);
  border-color: #c8a96a;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
}

.job-card-premium-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.job-card-title-premium {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.35;
  margin: 0;
  padding: 0;
  font-family: 'Poppins', sans-serif;
}

.job-card-premium-actions {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

.job-card-premium-actions .job-card-wishlist-btn {
  padding: 6px;
  border: 1px solid transparent;
  border-radius: 0;
  text-decoration: none;
  transition: border-color 0.2s ease, background 0.2s ease;
}

.job-card-premium-actions .job-card-wishlist-btn:hover {
  border-color: #e8e0d0;
  background: rgba(200, 169, 106, 0.06);
}

.job-card-meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin-bottom: 12px;
}

.job-card-meta-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.job-card-meta-icon {
  font-size: 0.875rem;
  color: #c8a96a;
  opacity: 0.95;
}

.job-card-meta-text {
  font-size: 0.8125rem;
  line-height: 1.4;
  color: #6b6b6b;
  font-family: 'Inter', sans-serif;
}

.job-card-meta-sep {
  width: 1px;
  height: 12px;
  background: #e0e0e0;
  flex-shrink: 0;
}

.job-card-description-clamp {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 0.9375rem;
  line-height: 1.55;
  color: #4e4e4e;
  margin: 0 0 12px 0;
  font-family: 'Inter', sans-serif;
}

.job-card-salary-premium {
  font-size: 0.9375rem;
  font-weight: 600;
  color: #b8954a;
  margin: 0 0 16px 0;
  font-family: 'Inter', sans-serif;
}

.job-card-premium-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-top: 16px;
  border-top: 1px solid #ececec;
}

.job-card-premium-footer-left {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.job-card-time-premium {
  font-size: 0.8125rem;
  color: #777;
}

.job-card-tag-remote {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  color: #5c4a2a;
  padding: 4px 10px;
  border: 1px solid #c8a96a;
  background: transparent;
  font-family: 'Inter', sans-serif;
  box-sizing: border-box;
}

.job-card-view-details-premium {
  min-width: 0;
  white-space: nowrap;
}

.job-listings-skeleton-wrap {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.job-card-skeleton {
  border: 1px solid #ececec;
  background: #fff;
  padding: 24px;
  animation: job-card-skeleton-pulse 1.2s ease-in-out infinite;
}

@keyframes job-card-skeleton-pulse {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0.72;
  }
}

.job-card-skeleton-line {
  height: 12px;
  background: linear-gradient(90deg, #eee 0%, #f5f5f5 50%, #eee 100%);
  margin-bottom: 8px;
}

.job-card-skeleton-line--title {
  width: 70%;
  height: 18px;
  margin-bottom: 16px;
}

.job-card-skeleton-line--meta {
  width: 55%;
  height: 10px;
  margin-bottom: 16px;
}

.job-card-skeleton-line--body {
  width: 100%;
  height: 10px;
}

.job-card-skeleton-line--short {
  width: 85%;
  margin-top: 6px;
}

.job-card-skeleton-footer {
  display: flex;
  justify-content: flex-end;
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid #f0f0f0;
}

.job-card-skeleton-line--btn {
  width: 120px;
  height: 36px;
  margin-bottom: 0;
}

@media (min-width: 992px) {
  .job-search-layout-row {
    flex-direction: row;
    align-items: flex-start;
    gap: 32px;
  }

  .job-search-col-filters {
    order: 1;
    flex: 0 0 300px;
    width: 300px;
    max-width: 300px;
  }

  .job-search-col-listings {
    order: 2;
    flex: 1 1 0;
    min-width: 0;
  }

  .job-search-filters-sidebar {
    position: sticky;
    top: 88px;
  }
}

@media (max-width: 991.98px) {
  .job-search-filters-sidebar.job-search-filters-panel {
    position: fixed !important;
    top: 0;
    left: 0;
    width: min(100%, 400px);
    height: 100dvh;
    min-height: 100dvh;
    max-height: 100dvh;
    margin: 0 !important;
    z-index: 1060;
    transform: translateX(-100%);
    transition: transform 0.25s ease;
    box-shadow: 4px 0 24px rgba(0, 0, 0, 0.12);
    background: #fff;
  }

  /* Fill drawer: chips scroll in the middle; Apply / Reset pinned to bottom */
  .job-search-filters-panel .job-search-filters-title {
    flex-shrink: 0;
  }

  .job-search-filters-panel .job-search-filter-fieldset--mobile {
    flex: 1 1 auto;
    min-height: 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  .job-search-filters-panel .job-search-filter-form-scroll--mobile-chips {
    flex: 1 1 auto;
    min-height: 0;
  }

  .job-search-filters-panel .job-search-filter-form-actions {
    flex-shrink: 0;
    margin-top: auto;
    padding-bottom: max(16px, env(safe-area-inset-bottom, 0px));
  }

  /*
   * Chip menus use width: 100% of .dropdown, which is only as wide as the chip button.
   * Stack triggers full-width so dropdown panels match the drawer and actions fit in one row.
   */
  .job-search-filters-panel .job-search-chip-row--filters {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }

  .job-search-filters-panel .job-search-chip-dropdown {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .job-search-filters-panel .job-search-chip.dropdown-toggle {
    width: 100%;
    justify-content: space-between;
    text-align: left;
  }

  .job-search-filters-panel .job-search-chip-menu,
  .job-search-filters-panel .job-search-chip-menu.job-search-chip-menu--wide {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
    box-sizing: border-box;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .job-search-filters-panel .job-search-chip-menu-actions {
    justify-content: flex-start;
    gap: 8px;
  }

  .job-search-filters-panel .job-search-chip-menu-actions .job-search-chip-btn {
    flex: 1 1 0;
    min-width: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .job-search-filters-panel .job-search-chip-menu .job-filter-row-label,
  .job-search-filters-panel .job-search-chip-menu .job-filter-row-label-with-icon {
    word-break: normal;
    overflow-wrap: break-word;
  }

  .job-search-filters-sidebar.job-search-filters-panel.is-open {
    transform: translateX(0);
  }

  .job-search-mobile-backdrop:not([hidden]) {
    display: block !important;
    position: fixed;
    inset: 0;
    z-index: 1050;
    background: rgba(0, 0, 0, 0.45);
  }

  /* Flex fill for non–slide-out sidebars only; panel uses fixed rules above */
  .job-search-filters-sidebar:not(.job-search-filters-panel) {
    position: static;
    top: auto;
    max-height: none;
    flex: 1 1 auto;
    min-height: 0;
    height: 100%;
  }
}

@media (max-width: 767.98px) {
  .job-card-view-details-premium {
    width: 100%;
    justify-content: center;
  }

  .job-card-premium-footer {
    flex-direction: column;
    align-items: stretch;
  }

  .job-card-premium-footer-left {
    width: 100%;
  }
}

/* Pagination Styling */
.job-listings-footer nav[role="navigation"] {
  font-family: 'Inter', sans-serif;
}

/* Remove shadow from pagination */
.job-listings-footer nav[role="navigation"] .shadow-sm,
.job-listings-footer nav[role="navigation"] span[class*="shadow-sm"] {
  box-shadow: none !important;
}

/* Hide duplicate mobile pagination only when footer is NOT the primary bottom bar (job search lists pagination there) */
.job-listings-footer:not(.job-listings-footer--bottom) nav[role="navigation"] > div > div:first-of-type {
  display: none !important;
}

.job-listings-footer:not(.job-listings-footer--bottom) nav[role="navigation"] div.flex.gap-2.items-center.justify-between:not([class*="sm:flex-1"]) {
  display: none !important;
}

.job-listings-footer:not(.job-listings-footer--bottom) nav[role="navigation"] p.text-sm.text-gray-700,
.job-listings-footer:not(.job-listings-footer--bottom) nav[role="navigation"] p[class*="text-sm"][class*="text-gray"],
.job-listings-footer:not(.job-listings-footer--bottom) nav[role="navigation"] .hidden.sm\:flex-1 > div:first-child,
.job-listings-footer:not(.job-listings-footer--bottom) nav[role="navigation"] div[class*="sm:flex-1"] > div:first-child {
  display: none !important;
}

.job-listings-footer nav[role="navigation"] svg {
  width: 16px !important;
  height: 16px !important;
}

.job-listings-footer nav[role="navigation"] .inline-flex {
  padding: 8px 12px !important;
  font-size: var(--font-size-body) !important;
  border-radius: 0 !important;
}

.job-listings-footer nav[role="navigation"] a {
  color: #1a1a1a !important;
  background-color: #ffffff !important;
  border: 1px solid #e5e5e5 !important;
  transition: all 0.3s ease !important;
  text-decoration: none !important;
  border-radius: 0 !important;
}

.job-listings-footer nav[role="navigation"] a:hover {
  text-decoration: none !important;
  background-color: #f5f5f5 !important;
  color: #1a1a1a !important;
  border-color: #d0af32 !important;
}

.job-listings-footer nav[role="navigation"] span {
  border-radius: 0 !important;
}

.job-listings-footer nav[role="navigation"] span[aria-current="page"] span {
  background-color: #d0af32 !important;
  color: #1a1a1a !important;
  border-color: #d0af32 !important;
  font-weight: 600 !important;
}

.job-listings-footer nav[role="navigation"] span[aria-disabled="true"] span {
  color: #999 !important;
  background-color: #f5f5f5 !important;
  cursor: not-allowed !important;
}

.job-listings-footer nav[role="navigation"] .text-sm {
  font-size: var(--font-size-body) !important;
  color: #666 !important;
}

.job-listings-footer nav[role="navigation"] .font-medium {
  font-weight: 600 !important;
  color: #1a1a1a !important;
}

a {
	text-decoration: none !important;
}
.bg-brand-gold{
  color: white !important;
}

/* Candidate Search Page Styles */
.candidate-avatar-container {
  cursor: pointer;
}

.candidate-avatar-container:hover .candidate-avatar-logo {
  transform: translateY(-5px) scale(1.1);
}

.candidate-avatar-container:hover {
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
  border-color: #FFC107;
}

/* Zero border-radius theme overrides for candidate search */
#candidate-search-listings-container *,
.job-search-filters-sidebar * {
  border-radius: 0 !important;
}

/* Job search filter pills & count badges need rounded corners (override rule above) */
.job-search-filters-sidebar .job-filter-pill-inner {
  border-radius: 999px !important;
}
.job-search-filters-sidebar .job-filter-count {
  border-radius: 4px !important;
}

/* Keep circular avatars and icons */
.candidate-avatar-container,
.candidate-avatar-container * {
  border-radius: 50% !important;
}

/* Ensure candidate avatar container stays circular even with global overrides */
#candidate-search-listings-container .candidate-avatar-container,
.candidate-search-listings-partial .candidate-avatar-container {
  border-radius: 50% !important;
  overflow: hidden !important;
}

/* Avatar + UID: vertically centered beside taller content column */
#candidate-search-listings-container .candidate-card .candidate-avatar-col,
.candidate-search-listings-partial .candidate-card .candidate-avatar-col {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  align-self: stretch;
  min-height: 0;
}

#candidate-search-listings-container .candidate-card .candidate-avatar-uid,
.candidate-search-listings-partial .candidate-card .candidate-avatar-uid {
  display: flex;
  justify-content: center;
  width: 100%;
}

@media (min-width: 768px) {
  #candidate-search-listings-container .candidate-card .row,
  .candidate-search-listings-partial .candidate-card .row {
    align-items: stretch;
  }
}

/* Pagination styling for candidate search */
#candidate-search-listings-container .pagination .page-link,
#candidate-search-listings-container .pagination .page-item:first-child .page-link,
#candidate-search-listings-container .pagination .page-item:last-child .page-link {
  border-radius: 0 !important;
}

/* Override any rounded utility classes in candidate search */
#candidate-search-listings-container .rounded,
#candidate-search-listings-container .rounded-sm,
#candidate-search-listings-container .rounded-md,
#candidate-search-listings-container .rounded-lg,
#candidate-search-listings-container .rounded-xl,
#candidate-search-listings-container .rounded-full,
#candidate-search-listings-container .rounded-top,
#candidate-search-listings-container .rounded-bottom,
#candidate-search-listings-container .rounded-left,
#candidate-search-listings-container .rounded-right,
#candidate-search-listings-container .rounded-top-left,
#candidate-search-listings-container .rounded-top-right,
#candidate-search-listings-container .rounded-bottom-left,
#candidate-search-listings-container .rounded-bottom-right {
  border-radius: 0 !important;
}

/* Candidate Search Listings Partial Styles */
.candidate-search-listings-partial .rounded,
.candidate-search-listings-partial .rounded-sm,
.candidate-search-listings-partial .rounded-md,
.candidate-search-listings-partial .rounded-lg,
.candidate-search-listings-partial .rounded-xl,
.candidate-search-listings-partial .rounded-full,
.candidate-search-listings-partial .rounded-top,
.candidate-search-listings-partial .rounded-bottom,
.candidate-search-listings-partial .rounded-left,
.candidate-search-listings-partial .rounded-right,
.candidate-search-listings-partial .rounded-top-left,
.candidate-search-listings-partial .rounded-top-right,
.candidate-search-listings-partial .rounded-bottom-left,
.candidate-search-listings-partial .rounded-bottom-right,
.candidate-search-listings-partial .rounded-l-md,
.candidate-search-listings-partial .rounded-r-md {
  border-radius: 0 !important;
}

.candidate-search-listings-partial .pagination .page-link,
.candidate-search-listings-partial .pagination .page-item:first-child .page-link,
.candidate-search-listings-partial .pagination .page-item:last-child .page-link {
  border-radius: 0 !important;
}

/* Registration Form Styles */
.error-message {
  color: #dc3545;
  font-size: var(--font-size-body);
  margin-top: 8px;
  display: flex;
  align-items: center;
  gap: 4px;
}

.error-message:before {
  content: "⚠";
  margin-right: 4px;
}

.form-control.error {
  border-color: #dc3545;
}

.required {
  color: #d0af32;
  margin-left: 4px;
}

.signup-form-footer-section {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* Policy Pages Styles */
.left-triangle-img {
  max-width: 432px;
  width: 100%;
  margin-bottom: 30px;
}

/* Registration Form Additional Styles */
.signin-account-link {
  color: #B79417;
  text-decoration: none;
  font-size: var(--font-size-body);
  font-weight: 500;
  transition: color 0.3s ease;
}

.signin-account-link:hover {
  color: #D0AF32;
  text-decoration: underline;
}

.checkbox-group {
  margin-top: 8px;
}

/* Logo Upload Area Styling */
#logo-upload-area {
  border-radius: 8px;
  background-color: #fff;
  transition: all 0.3s ease;
  cursor: pointer;
}

#logo-upload-area:hover {
  background-color: #fffbf0;
}

#logo-upload-area.drag-over {
  border-color: #C4A866;
  background-color: #fffbf0;
  border-style: solid;
}

#logo-file-info {
  animation: fadeIn 0.3s ease-in;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Mobile Responsive Styles for Candidate Search Page */
@media (max-width: 991.98px) {
  /* Do not override job-search slide-out panel (uses .job-search-filters-panel + position: fixed) */
  .job-search-filters-sidebar:not(.job-search-filters-panel) {
    position: relative !important;
    top: 0 !important;
    margin-bottom: 20px;
  }

  /* Hero spacing matches job-search via .placement-hero.job-search-hero-section; only legacy hero-only blocks below */
  .candidate-search-hero-section:not(.placement-hero) {
    padding: 48px 0 32px !important;
  }

  .candidate-search-hero-title {
    font-size: var(--font-size-headline) !important;
  }

  .candidate-search-hero-paragraph {
    font-size: var(--font-size-body) !important;
  }
}

@media (max-width: 767.98px) {
  .job-search-section {
    padding: 20px 0 !important;
  }

  .job-search-filters-sidebar {
    padding: 12px 10px !important;
  }

  .job-search-filters-title {
    font-size: var(--font-size-body) !important;
  }

  .candidate-card {
    margin-bottom: 15px;
  }

  .candidate-search-hero-section:not(.placement-hero) {
    padding: 40px 0 24px !important;
  }

  .candidate-search-hero-title {
    font-size: var(--font-size-headline) !important;
  }

  .candidate-search-hero-paragraph {
    font-size: var(--font-size-body) !important;
  }

  #candidate-search-listings-container .candidate-card.job-card-premium .row {
    margin-left: 0;
    margin-right: 0;
  }
}

@media (max-width: 575.98px) {
  .job-search-filters-sidebar {
    padding: 10px 8px !important;
  }

  .job-search-filter-label {
    font-size: var(--font-size-body) !important;
  }

  .job-search-filter-input,
  .job-search-filter-select {
    height: 36px !important;
    font-size: var(--font-size-body) !important;
    padding: 0 6px 0 28px !important;
  }

  .candidate-card {
    padding: 12px !important;
  }

  .candidate-avatar-container {
    width: 50px !important;
    height: 50px !important;
  }

  .candidate-search-hero-section:not(.placement-hero) {
    padding: 32px 0 16px !important;
  }

  .candidate-search-hero-title {
    font-size: var(--font-size-body) !important;
  }

  .candidate-search-hero-paragraph {
    font-size: var(--font-size-body) !important;
  }
}

/* Mobile Responsive for Company Dashboard */
@media (max-width: 991.98px) {
  .min-h-screen {
    padding: 24px 16px !important;
  }
  
  .max-w-screen-2xl {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
}

@media (max-width: 767.98px) {
  .min-h-screen {
    padding: 20px 12px !important;
  }
  
  .grid {
    grid-template-columns: 1fr !important;
  }
  
  .grid-cols-1.md\\:grid-cols-2 {
    grid-template-columns: 1fr !important;
  }
  
  .grid-cols-1.md\\:grid-cols-2.lg\\:grid-cols-4 {
    grid-template-columns: 1fr !important;
  }
}

/* Mobile Responsive for Candidate View Page */
@media (max-width: 991.98px) {
  .candidate-view-section {
    padding: 24px 16px !important;
  }
  
  .candidate-view-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767.98px) {
  .candidate-view-section {
    padding: 20px 12px !important;
  }
  
  .candidate-profile-card {
    padding: 16px !important;
  }
  
  .candidate-view-buttons {
    flex-direction: column;
    gap: 10px;
  }
  
  .candidate-view-buttons button,
  .candidate-view-buttons a {
    width: 100%;
  }
}

/* Mobile Responsive for Modals */
@media (max-width: 767.98px) {
  #candidateAccessModal .relative {
    width: 95% !important;
    margin: 10px auto !important;
    padding: 15px !important;
  }
  
  #cvScanModal .relative,
  #cvViewModal .relative {
    width: 95% !important;
    margin: 10px auto !important;
    padding: 15px !important;
  }
  
  #cvViewContent {
    height: 60vh !important;
  }
}

/* Mobile Responsive for Forms */
@media (max-width: 575.98px) {
  .form-group {
    margin-bottom: 16px;
  }
  
  .form-control,
  .form-select {
    font-size: var(--font-size-body);
    padding: 8px 12px;
  }
  
  .btn {
    padding: 10px 16px;
    font-size: var(--font-size-button);
  }
}

/* Mobile Responsive for Tables */
@media (max-width: 767.98px) {
  .table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  
  table {
    min-width: 600px;
  }
  
  .table th,
  .table td {
    padding: 8px 4px;
    font-size: var(--font-size-body);
  }
}

/* Mobile Responsive for Pagination */
@media (max-width: 575.98px) {
  .pagination {
    flex-wrap: wrap;
    justify-content: center;
  }
  
  .pagination .page-link {
    padding: 6px 10px;
    font-size: var(--font-size-body);
  }
}

/* Mobile Responsive for Candidate Search Header */
@media (max-width: 767.98px) {
  .about-hero-section {
    padding: 100px 0 48px !important;
  }
  
  .about-hero-title {
    font-size: var(--font-size-headline) !important;
  }
  
  .about-hero-paragraph {
    font-size: var(--font-size-body) !important;
  }
  
  .candidate-search-hero-section:not(.placement-hero) {
    padding: 28px 0 17px !important;
  }
}

@media (max-width: 575.98px) {
  .about-hero-section {
    padding: 88px 0 40px !important;
  }
  
  .about-hero-title {
    font-size: var(--font-size-headline) !important;
  }
  
  .about-hero-paragraph {
    font-size: var(--font-size-body) !important;
  }
  
  .candidate-search-hero-section:not(.placement-hero) {
    padding: 22px 0 11px !important;
  }
}

/* Mobile Responsive for Candidate View Header */
@media (max-width: 767.98px) {
  .candidate-view-header {
    flex-direction: column;
    align-items: flex-start !important;
    gap: 16px;
  }
  
  .candidate-view-header h1 {
    font-size: var(--font-size-headline) !important;
  }
  
  .candidate-view-header .flex {
    width: 100%;
    flex-direction: column;
    gap: 10px;
  }
  
  .candidate-view-header a {
    width: 100%;
    text-align: center;
  }
}

/* Mobile Responsive for Candidate Cards */
@media (max-width: 767.98px) {
  .candidate-card-content {
    flex-direction: column;
    gap: 12px;
  }
  
  .candidate-card-info {
    width: 100%;
  }
  
  .candidate-card-actions {
    width: 100%;
    justify-content: flex-start;
  }
}

/* Mobile Responsive for Filter Sidebar */
@media (max-width: 991.98px) {
  .job-search-filters-sidebar {
    margin-bottom: 20px;
  }
  
  .advanced-filters-toggle {
    width: 100%;
    margin-bottom: 15px;
  }
}

/* Mobile Responsive for Results Header */
@media (max-width: 575.98px) {
  .candidate-results-header {
    flex-direction: column;
    align-items: flex-start !important;
    gap: 10px;
  }
  
  .candidate-results-header h2 {
    font-size: var(--font-size-headline) !important;
  }
  
  .candidate-results-count {
    font-size: var(--font-size-body) !important;
  }
}

/* Job search — combined toolbar + chip dropdowns (desktop) */
.job-search-filter-fieldset {
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
}

.job-search-desktop-toolbar {
  margin-bottom: 20px;
  overflow: visible;
}

.job-search-filter-fieldset--desktop {
  overflow: visible;
}

/* Only the combined keyword/location bar straddles hero + white section; chips sit fully below hero */
@media (min-width: 992px) {
  .placement-hero.job-search-hero-section {
    padding-bottom: 120px;
  }

  section.job-search-section.job-search-page-layout {
    padding-top: 0;
  }

  .job-search-page-container {
    position: relative;
    z-index: 2;
  }

  .job-search-combined-bar.job-search-hero-overlap {
    /* ~half the bar height over the hero, rest in the white section */
    margin-top: -4.7rem;
    margin-bottom: 1.25rem;
    position: relative;
    z-index: 3;
  }
}

.job-search-combined-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0;
  background: #fff;
  border-radius: 999px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
  border: 2px solid #959494;
  overflow: hidden;
  min-height: 56px;
}

.job-search-combined-seg {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 18px;
  flex: 1 1 200px;
  min-width: 0;
}

.job-search-combined-seg--grow {
  flex: 2 1 260px;
}

.job-search-combined-seg--loc {
  flex: 1 1 180px;
}

.job-search-combined-icon {
  flex-shrink: 0;
  opacity: 0.55;
}

.job-search-combined-fa {
  color: #8a8a8a;
  font-size: 1rem;
  flex-shrink: 0;
}

.job-search-combined-input {
  border: 0;
  outline: none;
  background: transparent;
  width: 100%;
  min-width: 0;
  font-family: 'Inter', sans-serif;
  font-size: var(--font-size-body);
  color: #1a1a1a;
}

.job-search-combined-input::placeholder {
  color: #9a9a9a;
}

.job-search-combined-divider {
  width: 1px;
  align-self: stretch;
  background: #e4e4e4;
  flex-shrink: 0;
}

.job-search-combined-submit {
  align-self: stretch;
  border: 0;
  padding: 12px 28px;
  font-family: 'Manrope', sans-serif;
  font-weight: 700;
  font-size: var(--font-size-body);
  color: #fff;
  background: linear-gradient(135deg, #c8a96a 0%, #a8864a 100%);
  cursor: pointer;
  transition: filter 0.2s ease, transform 0.15s ease;
  white-space: nowrap;
}

.job-search-combined-submit:hover {
  filter: brightness(1.05);
}

.job-search-chip-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.job-search-chip-dropdown {
  position: relative;
}

.job-search-chip-dropdown > .dropdown-menu {
  position: absolute !important;
  top: calc(100% + 6px) !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  display: none !important;
  float: none !important;
  margin-top: 0 !important;
}

.job-search-chip-dropdown > .dropdown-menu.show {
  display: block !important;
}

.job-search-chip-dropdown > .dropdown-menu.is-floating {
  position: fixed !important;
  top: auto;
  left: auto;
  right: auto !important;
  bottom: auto !important;
  z-index: 1080 !important;
}

.job-search-chip.dropdown-toggle::after {
  display: inline-block !important;
  margin-left: 0.35em;
  vertical-align: 0.2em;
  content: "";
  border-top: 0.35em solid currentColor;
  border-right: 0.35em solid transparent;
  border-bottom: 0;
  border-left: 0.35em solid transparent;
}

.job-search-chip.dropdown-toggle.show::after {
  transform: rotate(180deg);
}

.job-search-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  font-family: 'Manrope', sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  color: #1a1a1a;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 999px;
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.job-search-chip:hover {
  border-color: #c8a96a;
  background: rgba(200, 169, 106, 0.06);
}

.job-search-chip.is-active {
  border-width: 2px;
  border-color: #1a1a1a;
  background: #f6f6f6;
  padding: 9px 15px;
}

.job-search-chip-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  font-size: 0.75rem;
  font-weight: 700;
  color: #fff;
  background: #1a1a1a;
  border-radius: 999px;
}

.job-search-chip-menu {
  width: max-content;
  min-width: 0;
  max-width: min(420px, 92vw);
  border-radius: 16px !important;
  border: 1px solid rgba(0, 0, 0, 0.06);
  z-index: 1070;
}

.job-search-chip-menu--wide {
  max-width: min(520px, 94vw);
}

.job-search-chip-menu-title {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: 0.8rem;
  color: #4e4e4e;
  margin-bottom: 10px;
}

.job-search-chip-menu-scroll {
  max-height: 240px;
  overflow-y: auto;
  padding-right: 4px;
}

.job-search-chip-menu-scroll--sectors {
  max-height: 280px;
}

.job-search-chip-menu-scroll--education {
  max-height: 420px;
}

.job-search-radius-custom .job-search-filter-input {
  width: 100%;
  max-width: 100%;
}

.job-search-radius-presets {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.job-search-radius-preset-btn {
  display: inline-flex;
  align-items: center;
  padding: 6px 12px;
  border: 1px solid #e0e0e0;
  background: #fff;
  color: #4e4e4e;
  font-size: 0.875rem;
  font-family: 'Manrope', sans-serif;
  font-weight: 500;
  cursor: pointer;
  transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}

.job-search-radius-preset-btn:hover {
  border-color: #c8a96a;
  color: #1a1a1a;
}

.job-search-radius-preset-btn.is-active {
  border-color: #c8a96a;
  background: rgba(200, 169, 106, 0.12);
  color: #1a1a1a;
}

/* Chip dropdowns: label + count share a row grid — prevent counts overlapping wrapped labels */
.job-search-chip-menu .job-filter-row:not(.job-filter-sort-row) {
  grid-template-columns: 18px minmax(0, 1fr) auto;
  column-gap: 12px;
  align-items: start;
}

.job-search-chip-menu .job-filter-row-label,
.job-search-chip-menu .job-filter-row-label-with-icon {
  min-width: 0;
  overflow-wrap: break-word;
  word-break: break-word;
}

.job-search-chip-menu .job-filter-row-label-with-icon {
  flex-wrap: wrap;
  align-items: flex-start;
}

.job-search-chip-menu .job-filter-count {
  flex-shrink: 0;
  white-space: nowrap;
  justify-self: end;
}

.job-search-chip-menu-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 16px;
  padding-top: 12px;
  border-top: 1px solid #f0f0f0;
}

.job-search-chip-btn {
  border-radius: 999px;
  padding: 8px 18px;
  font-family: 'Manrope', sans-serif;
  font-weight: 700;
  font-size: 0.8125rem;
  cursor: pointer;
  border: 1px solid transparent;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.job-search-chip-btn--secondary {
  background: #fff;
  border-color: #d8d8d8;
  color: #a8864a;
}

.job-search-chip-btn--secondary:hover {
  background: #f8f8f8;
  border-color: #c8a96a;
}

.job-search-chip-btn--primary {
  background: linear-gradient(135deg, #c8a96a 0%, #a8864a 100%);
  border-color: #a8864a;
  color: #fff;
}

.job-search-chip-btn--primary:hover {
  filter: brightness(1.06);
}

.job-search-chip-list .job-search-chip-radio-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  margin: 2px 0;
  border-radius: 10px;
  cursor: pointer;
  font-family: 'Inter', sans-serif;
  font-size: 0.9rem;
  color: #1a1a1a;
}

.job-search-chip-list .job-search-chip-radio-row:hover {
  background: #f5f5f5;
}

.job-search-chip-list input[type="radio"] {
  accent-color: #c8a96a;
}

.job-filter-pill-group--menu {
  flex-wrap: wrap;
}

.job-filter-pill--block {
  width: 100%;
}

.job-filter-pill-group--stacked {
  flex-direction: column;
  align-items: stretch;
}

.job-filter-pill-group--stacked .job-filter-pill {
  width: 100%;
}

@media (max-width: 991.98px) {
  .job-search-combined-bar {
    border-radius: 16px;
  }

  .job-search-combined-divider {
    display: none;
  }

  .job-search-combined-seg {
    flex: 1 1 100%;
    border-bottom: 1px solid #eee;
  }

  .job-search-combined-seg:last-of-type {
    border-bottom: 0;
  }

  .job-search-combined-submit {
    width: 100%;
    border-radius: 0 0 15px 15px;
  }
}
