/* SAMF careers (Figma 464:5532; story 126700): page header, search bar, job accordion panel, "how to apply" steps, job details page and the
   application form (no frame: designed in the same style, field look from the DS Input Field / File Upload). Exact values measured with the Figma MCP (wf-spec).
   Tokens only. Desktop 1728 / tablet 1024 / mobile 375. Logical properties, so Arabic RTL mirrors by itself. Family "29LT Bukra" is the Figma family (files delivered by SAMF). */
.samf-careers, .samf-job--page, .samf-career-apply {
  --_dark: var(--samf-palette-charcoal);
  --_display: var(--samf-font-display);
  --_body: var(--samf-font-body);
  --_glass: color-mix(in srgb, var(--samf-color-text) 8%, transparent);
  --_chevron: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3e%3cpath d='M4 1.5 8.5 6 4 10.5' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e");
}
.samf-careers { font-family: var(--_body); font-size: var(--samf-fs-body); line-height: var(--samf-lh-body); font-weight: var(--samf-fw-light); }
.samf-careers :is(h1, h2, h3), .samf-job--page :is(h1, h2, h3) { font-family: var(--_display); }
.samf-cr-wrap { inline-size: 100%; max-inline-size: 1500px; margin-inline: auto; padding-inline: 40px; box-sizing: border-box; }

/* Page header (Figma "Page Header" 735:13715): 370 high, 155 above, 80 below, title 64/68 Wide Medium. */
.samf-careers .samf-listing-hero,
.samf-job-hero {
  min-block-size: 370px; box-sizing: border-box; display: flex; align-items: flex-end; padding-block: 155px 80px !important; border: 0;
  background:
    linear-gradient(to bottom, color-mix(in srgb, var(--samf-figma-black) 80%, var(--samf-figma-page-background)), var(--samf-figma-page-background)),
    var(--samf-color-page);
}
.samf-careers .samf-listing-hero { block-size: 370px; }
.samf-careers .samf-listing-hero > .samf-cr-wrap,
.samf-job-hero > .container { inline-size: 100%; }
.samf-careers .samf-listing-title,
.samf-job--page .samf-job-hero h1 { font-size: var(--samf-fs-h2); line-height: var(--samf-lh-h2); font-weight: var(--samf-fw-medium); letter-spacing: -.02em; margin: 0; max-inline-size: 879px; overflow-wrap: anywhere; }
:lang(ar) .samf-careers .samf-listing-title, :lang(ar) .samf-job--page .samf-job-hero h1 { letter-spacing: 0; }

/* Section (Figma 464:5535): 80 below the header, gap 40 between heading / search / jobs, 80 above the white band. */
.samf-careers-main { display: flex; flex-direction: column; gap: 40px; padding-block: 80px; }
.samf-careers .samf-careers-headline {
  display: flex; flex-wrap: wrap; align-items: flex-end; gap: 4px 12px; margin: 0;
  font-size: var(--samf-fs-h3); line-height: var(--samf-lh-h3); font-weight: var(--samf-fw-light); color: var(--samf-color-text); text-transform: uppercase;
}
:lang(ar) .samf-careers .samf-careers-headline { text-transform: none; }
.samf-careers .samf-heading__accent { font-weight: var(--samf-fw-semibold); color: var(--samf-color-performance); }
.samf-careers .samf-heading__lead:empty { display: none; }

/* Search and filter (Figma 579:7645): glass card, radius 32, padding 32; white 48px input (radius 8, 18px icon) + 50px Search button, gap 12. */
.samf-careers-search { display: flex; align-items: center; gap: 12px; box-sizing: border-box; padding: 32px; border-radius: var(--samf-radius-xl); background: rgba(0, 0, 0, .5); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); }
.samf-careers-search__field { flex: 1 1 0; min-inline-size: 0; display: flex; align-items: center; gap: 10px; block-size: 48px; box-sizing: border-box; padding: 8px 12px; border-radius: var(--samf-radius-btn); background: var(--samf-color-text); color: var(--samf-palette-page); }
.samf-careers-search__icon { flex: none; }
.samf-careers-search input { flex: 1 1 0; min-inline-size: 0; border: 0; background: transparent; padding: 0; color: var(--samf-palette-page); font-family: var(--_body); font-size: var(--samf-fs-body); line-height: var(--samf-lh-body); font-weight: var(--samf-fw-light); }
.samf-careers-search input:focus-visible { outline: 0; }
.samf-careers-search input::placeholder { color: rgba(0, 0, 0, .5); opacity: 1; }
.samf-careers-search__field:focus-within { outline: 3px solid var(--samf-color-focus); outline-offset: 2px; }
.samf-careers-nomatch { margin: 0 0 16px; color: var(--samf-color-muted); }

/* Buttons (Figma Button light): 50 high = 15 + 20 + 15 (1px border inside), radius 8, 12px chevron, 12px gap. */
.samf-careers :is(.samf-btn-primary, .samf-btn-outline),
.samf-job-apply,
.samf-career-apply.samf-form .samf-btn-accent {
  display: inline-flex; align-items: center; justify-content: center; gap: 12px; box-sizing: border-box;
  padding: 14px 19px; border: 1px solid var(--samf-color-primary); border-radius: var(--samf-radius-btn);
  background: var(--samf-color-primary); color: var(--samf-color-ink);
  font-family: var(--_body); font-size: var(--samf-fs-body); line-height: var(--samf-lh-body); font-weight: var(--samf-fw-semibold); text-decoration: none; text-transform: uppercase; letter-spacing: 0; cursor: pointer;
}
:lang(ar) .samf-careers :is(.samf-btn-primary, .samf-btn-outline), :lang(ar) .samf-job-apply, :lang(ar) .samf-career-apply.samf-form .samf-btn-accent { text-transform: none; }
.samf-careers :is(.samf-btn-primary, .samf-btn-outline)::after,
.samf-job-apply::after,
.samf-career-apply.samf-form .samf-btn-accent::after {
  content: ""; inline-size: 12px; block-size: 12px; flex: none; background: currentColor;
  -webkit-mask: var(--_chevron) center / contain no-repeat; mask: var(--_chevron) center / contain no-repeat;
}
[dir="rtl"] .samf-careers :is(.samf-btn-primary, .samf-btn-outline)::after, [dir="rtl"] .samf-job-apply::after, [dir="rtl"] .samf-career-apply.samf-form .samf-btn-accent::after { transform: scaleX(-1); }
.samf-careers .samf-btn-primary:hover, .samf-careers .samf-btn-primary:focus,
.samf-job-apply:hover, .samf-job-apply:focus,
.samf-career-apply.samf-form .samf-btn-accent:hover, .samf-career-apply.samf-form .samf-btn-accent:focus { background: var(--samf-color-primary-hover); border-color: var(--samf-color-primary-hover); color: var(--samf-color-ink); }
.samf-careers .samf-btn-outline { background: transparent; color: var(--samf-color-primary); }
.samf-careers .samf-btn-outline:hover, .samf-careers .samf-btn-outline:focus { background: var(--samf-color-primary); color: var(--samf-color-ink); border-color: var(--samf-color-primary); }
.samf-careers-search .samf-btn-primary { flex: none; }
.samf-careers :is(.samf-btn-primary, .samf-btn-outline):focus-visible, .samf-job-apply:focus-visible { outline: 3px solid var(--samf-color-focus); outline-offset: 3px; }

/* Jobs panel (Figma 735:13650): hairline glass card, radius 32, padding 32; rows 52 high (16 + 20 + 16, hairline inside), 20px chevron before the title (16px gap). */
.samf-careers-panel { box-sizing: border-box; border: 1px solid var(--samf-color-border); border-radius: var(--samf-radius-xl); padding: 32px; background: rgba(0, 0, 0, .01); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); }
.samf-careers .samf-accordion { --bs-accordion-bg: transparent; --bs-accordion-btn-bg: transparent; --bs-accordion-active-bg: transparent; --bs-accordion-border-width: 0; gap: 0; border-radius: var(--samf-radius-xl); overflow: clip; }
.samf-careers .samf-accordion .accordion-item { background: transparent; border: 0; border-radius: 0; box-shadow: inset 0 -1px 0 var(--samf-color-border); }
.samf-careers .samf-accordion .accordion-header { margin: 0; }
.samf-careers .samf-accordion .accordion-button {
  background: transparent; border: 0; min-block-size: 0; box-sizing: border-box; padding: 16px 0; gap: 16px; align-items: flex-start; box-shadow: none; border-radius: 0;
  color: var(--samf-color-text); font-family: var(--_display); font-size: var(--samf-fs-h6); line-height: var(--samf-lh-h6); font-weight: var(--samf-fw-medium);
}
.samf-careers .samf-accordion .accordion-button:not(.collapsed) { color: var(--samf-color-primary); background: transparent; letter-spacing: -.02em; }
:lang(ar) .samf-careers .samf-accordion .accordion-button:not(.collapsed) { letter-spacing: 0; }
.samf-careers .samf-accordion .accordion-button::after,
.samf-careers .samf-accordion .accordion-button:not(.collapsed)::after {
  order: -1; margin: 0; filter: none; flex: none; inline-size: 20px; block-size: 20px;
  background: currentColor; background-image: none;
  -webkit-mask: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath d='m4 7.5 6 6 6-6' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath d='m4 7.5 6 6 6-6' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e") center / contain no-repeat;
}
.samf-careers .samf-accordion .accordion-button:not(.collapsed)::after { transform: rotate(-180deg); }
.samf-careers .samf-accordion .accordion-body { padding: 0 0 16px; padding-inline-start: 36px; display: flex; flex-direction: column; gap: 16px; }
.samf-job__title { overflow-wrap: anywhere; }
.samf-job__facts { display: flex; flex-wrap: wrap; gap: 4px 16px; margin: 0; }
.samf-job__facts > div { display: flex; gap: 4px; align-items: center; }
.samf-job__facts dt, .samf-job__facts dd { margin: 0; color: rgba(255, 255, 255, .5); font-size: var(--samf-fs-small); line-height: var(--samf-lh-small); font-weight: var(--samf-fw-medium); }
.samf-job__facts dt::after { content: ":"; }
.samf-job__closing { unicode-bidi: plaintext; text-align: start; }
.samf-careers .samf-job__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; padding-block-start: 8px; margin: 0; }

/* How to apply (Figma 858:40652): white band, 80 padding, gap 40; five charcoal cards (radius 12, padding 24, gap 16) with a 95px numbered circle. */
.samf-howto { background: var(--samf-color-text); color: var(--samf-color-ink); padding-block: 80px; }
.samf-howto > .samf-cr-wrap { display: flex; flex-direction: column; gap: 40px; }
.samf-careers .samf-howto__title { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 4px 12px; margin: 0; font-size: var(--samf-fs-h3); line-height: var(--samf-lh-h3); font-weight: var(--samf-fw-light); color: var(--samf-palette-charcoal); text-transform: uppercase; }
:lang(ar) .samf-careers .samf-howto__title { text-transform: none; }
.samf-howto__steps { list-style: none; padding: 0; margin: 0; display: grid; gap: 24px; grid-template-columns: repeat(5, minmax(0, 1fr)); }
.samf-howto__step { display: flex; flex-direction: column; align-items: center; gap: 16px; box-sizing: border-box; background: var(--samf-palette-charcoal); border-radius: var(--samf-radius); padding: 24px; color: var(--samf-color-text); }
.samf-howto__num { display: flex; align-items: center; justify-content: center; flex: none; inline-size: 95px; block-size: 95px; box-sizing: border-box; border: 2px solid var(--samf-color-text); border-radius: 100px; font-size: 48px; line-height: 64px; font-weight: var(--samf-fw-medium); letter-spacing: -.02em; }
.samf-careers .samf-howto__name { align-self: stretch; margin: 0 0 -8px; font-size: 15px; line-height: 20px; font-weight: var(--samf-fw-medium); letter-spacing: -.02em; color: var(--samf-color-performance); }
.samf-howto__text { align-self: stretch; margin: 0; font-size: var(--samf-fs-small); line-height: var(--samf-lh-small); font-weight: var(--samf-fw-medium); color: var(--samf-color-text); }
:lang(ar) .samf-howto__num, :lang(ar) .samf-careers .samf-howto__name { letter-spacing: 0; }
@media (max-width: 64rem) { .samf-howto__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575.98px) {
  .samf-cr-wrap { padding-inline: 20px; }
  .samf-careers .samf-listing-hero, .samf-job-hero { min-block-size: 230px; padding-block: 120px 0 !important; }
  .samf-careers .samf-listing-hero { block-size: 230px; }
  .samf-careers .samf-listing-title, .samf-job--page .samf-job-hero h1 { font-size: 32px; line-height: 36px; letter-spacing: 0; }
  .samf-careers-main { padding-block: 40px; gap: 24px; }
  .samf-careers .samf-careers-headline, .samf-careers .samf-howto__title { font-size: var(--samf-fs-h5); line-height: var(--samf-lh-h5); gap: 4px; }
  .samf-careers .samf-heading__accent { font-weight: var(--samf-fw-medium); }
  .samf-careers-search { padding: 16px; flex-wrap: wrap; }
  .samf-careers-search .samf-btn-primary { inline-size: 100%; }
  .samf-howto { padding-block: 40px; }
  .samf-howto__steps { grid-template-columns: minmax(0, 1fr); }
  .samf-careers-panel { padding: 16px; border-radius: var(--samf-radius-card); }
  .samf-careers .samf-accordion .accordion-body { padding-inline-start: 0; }
  .samf-careers :is(.samf-btn-primary, .samf-btn-outline), .samf-job-apply { min-block-size: 44px; }
}

/* Job details page. */
.samf-job--page .samf-job-meta { list-style: none; display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; padding: 0; margin: 1.25rem 0 0; }
.samf-job--page .samf-job-meta__item { color: var(--samf-color-muted); font-weight: 600; }
.samf-job-main { padding-block: clamp(2rem, 4vw, 4rem); max-inline-size: 60rem; }
.samf-job-body { font-size: 1rem; line-height: 1.7; margin-block-end: 2rem; }
.samf-job-body :is(h2, h3, h4) { font-family: var(--samf-font-display); color: var(--samf-color-primary); margin-block: 1.75rem .75rem; }
.samf-job-body a { color: var(--samf-color-primary); }

/* Application form: glass panels, DS Input Field (glass fill, 1px light border, radius 8, 48 high, accent asterisk) and File Upload (dashed zone). */
.samf-career-apply { max-inline-size: 90rem; }
.samf-career-apply .samf-contact-hero { margin-block-end: 2.5rem; }
.samf-career-apply .samf-contact-hero h1 { font-size: var(--samf-fs-h2); font-weight: 700; letter-spacing: -.02em; text-transform: uppercase; }
:lang(ar) .samf-career-apply .samf-contact-hero h1 { letter-spacing: 0; text-transform: none; }
.samf-career-apply .samf-contact-hero p { color: var(--samf-color-text); opacity: .85; }
.samf-career-apply :is(.samf-contact-details, .samf-contact-form, .samf-contact-success) { background: color-mix(in srgb, var(--samf-color-page) 55%, transparent); border: 1px solid var(--samf-color-border); border-radius: 2rem; padding: clamp(1.25rem, 2.5vw, 2rem); }
.samf-career-apply :is(.samf-contact-details, .samf-contact-form, .samf-contact-success) h2 { color: var(--samf-color-primary); font-weight: 700; }
.samf-career-job__name { font-family: var(--samf-font-display); font-size: var(--samf-fs-h5); margin: 0 0 .5rem; overflow-wrap: anywhere; }
.samf-career-apply .form-label { font-size: 1rem; font-weight: 600; margin-block-end: .5rem; }
.samf-career-apply .samf-required { color: var(--samf-color-accent); font-size: 1rem; }
.samf-career-apply .samf-required:not(:empty) { font-weight: 600; }
.samf-career-apply.samf-form .form-control {
  background-color: var(--_glass); border: 1px solid color-mix(in srgb, var(--samf-color-text) 80%, transparent); border-radius: var(--_btn-radius);
  min-block-size: 3rem; color: var(--samf-color-text);
}
.samf-career-apply.samf-form .form-control:focus { border-color: var(--samf-color-primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--samf-color-primary) 45%, transparent); background-color: var(--_glass); }
.samf-career-apply.samf-form [aria-invalid="true"] { border-color: var(--samf-color-danger); border-width: 1.5px; }
.samf-career-apply.samf-form .samf-field-error { font-size: 1rem; font-weight: 400; }
.samf-career-apply input[type="file"].form-control {
  padding: 1.75rem 1.5rem; min-block-size: 8rem; cursor: pointer; text-align: center; line-height: 1.5;
  border: 1.5px dashed color-mix(in srgb, var(--samf-color-text) 35%, transparent);
}
.samf-career-apply input[type="file"].form-control::file-selector-button {
  margin-inline: 0 1rem; padding: .625rem 1.25rem; min-block-size: 2.75rem; cursor: pointer;
  border: 1.5px solid var(--samf-color-primary); border-radius: var(--_btn-radius); background: transparent;
  color: var(--samf-color-primary); font-family: var(--samf-font-body); font-weight: 600;
}
.samf-career-apply input[type="file"].form-control:hover::file-selector-button { background: var(--samf-color-primary); color: var(--samf-color-on-primary); }
.samf-career-apply input[type="file"][aria-invalid="true"] { border-style: dashed; border-width: 2px; }
.samf-career-hint { margin-block-start: .5rem; }
.samf-career-apply [data-samf-cv-error][hidden] { display: none; }
.samf-career-apply .form-check { padding-inline-start: 0; display: flex; flex-wrap: wrap; gap: .625rem; align-items: flex-start; }
.samf-career-apply .form-check .form-check-input { float: none; margin: .1rem 0 0; flex: none; border-radius: .25rem; }
.samf-career-apply .form-check .samf-field-error { flex-basis: 100%; }
.samf-career-apply .form-check-label { flex: 1 1 0; min-inline-size: 0; }

@media (max-width: 375px) {
  .samf-careers-panel { padding: 1rem; border-radius: var(--samf-radius-card); }
  .samf-careers .samf-accordion .accordion-body { padding-inline-start: 0; }
  .samf-careers .samf-job__actions > a { inline-size: 100%; }
  .samf-job-apply { inline-size: 100%; }
  .samf-career-apply.samf-form .samf-btn-accent { inline-size: 100%; }
}

/* Round 2 (Figma 464:5532): shared M2 page frame instead of the photo header; jobs panel left + green "Let's connect" card right. */
.samf-careers__top { overflow: clip; }
.samf-careers__top .samf-careers-main { padding-block: 5rem; }
.samf-careers-grid { display: grid; grid-template-columns: minmax(0, 1fr) 25.8125rem; gap: 1.5rem; align-items: start; }
.samf-careers-list { min-inline-size: 0; }
.samf-careers-grid .samf-connect { padding: 0; border-radius: var(--samf-radius-xl); background: linear-gradient(135deg, var(--samf-color-accent), var(--samf-color-performance)); color: var(--samf-color-ink); }
.samf-careers-grid .samf-connect > .samf-cr-wrap { display: block; padding: 1.5rem; max-inline-size: none; }
.samf-careers-grid .samf-connect__title { color: var(--samf-color-ink); font-size: var(--samf-fs-h5); line-height: var(--samf-lh-h5); margin-block-end: .75rem; }
.samf-careers-grid .samf-connect__text { color: var(--samf-color-ink); font-size: var(--samf-fs-small); line-height: var(--samf-lh-small); max-inline-size: none; margin: 0 0 1rem; }
.samf-careers-grid .samf-connect__form { grid-template-columns: 1fr; gap: .75rem; }
.samf-careers-grid .samf-connect__field--wide { grid-column: auto; }
.samf-careers-grid .samf-connect .form-label { color: var(--samf-color-ink); font-weight: 600; margin-block-end: .25rem; }
.samf-careers-grid .samf-connect .form-control { background: #fff; color: var(--samf-color-ink); border: 1px solid transparent; border-radius: var(--samf-radius-btn); min-block-size: 3rem; }
.samf-careers-grid .samf-connect__upload { color: var(--samf-color-ink); border: 1px solid var(--samf-color-ink); border-style: solid; flex: 1 1 0; justify-content: center; }
.samf-careers-grid .samf-connect__submit { flex: 1 1 0; background: var(--samf-color-ink); border-color: var(--samf-color-ink); color: var(--samf-color-text); }
.samf-careers-grid .samf-connect__submit:hover, .samf-careers-grid .samf-connect__submit:focus-visible { background: var(--samf-palette-charcoal); border-color: var(--samf-palette-charcoal); }
.samf-careers-grid .samf-connect__pending { color: var(--samf-color-ink); border-color: var(--samf-color-ink); }
@media (max-width: 64rem) { .samf-careers-grid { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 575.98px) { .samf-careers__top .samf-careers-main { padding-block: 2.5rem; } }

/* 1105 Figma review: pagination sits inside the jobs panel (bottom, centred), form fields use placeholders instead of visible labels. */
.samf-careers-panel .samf-pager { margin-block: 24px 0; }
.samf-careers-grid .samf-connect .form-control::placeholder { color: color-mix(in srgb, var(--samf-color-ink) 55%, transparent); opacity: 1; }
/* 1105 Figma review (464:5532): every page circle is outlined; the current one is green-outlined with green text, not filled. */
.samf-careers-panel .samf-pager__page.is-current { background: transparent; border-color: var(--samf-color-primary); color: var(--samf-color-primary); }
/* The pager chevron uses logical borders (inline-end flips in RTL), so the shared RTL rotations point it down; correct them for the Arabic jobs pager. */
[dir="rtl"] .samf-careers-panel .samf-pager__next > span { transform: rotate(-45deg); }
[dir="rtl"] .samf-careers-panel .samf-pager__prev > span { transform: rotate(135deg); }

/* ui-web-pages-1105: Figma's 370 header = 76 nav + 294; the sticky site header is 125 at 1400+, so pull the page up 49 (as FAQs does). */
@media (min-width: 1400px) { .samf-careers__top { margin-block-start: -49px; } }

/* ui-web-pages-1105 Figma 890:52885 (375): page title sits on the same 20px gutter as the content; full-width Search button is label-left, arrow-right, sentence case. */
@media (max-width: 575.98px) {
  .samf-careers .samf-pagehead > .samf-m2-wrap { padding-inline: 20px; }
  .samf-careers-search .samf-btn-primary { justify-content: space-between; text-transform: none; }
}

/* W4: open-job description line under the facts (Figma 464:5532) */
.samf-job__summary { margin: 0 0 1rem; font-size: var(--samf-fs-small); line-height: var(--samf-lh-small); font-weight: 400; max-inline-size: 70ch; }

/* visual-fix-1108 G5 (Figma 464:5532 / 890:52885): measured against the frames at 1728 and 375. */
/* The Let's connect card is 457 wide (was 413), the jobs panel takes the rest. */
@media (min-width: 1025px) { .samf-careers-grid { grid-template-columns: minmax(0, 1fr) 28.5625rem; } }
.samf-careers-grid .samf-connect > .samf-cr-wrap { padding: 23px 24px; }
.samf-careers-grid .samf-connect__title { margin-block-end: 16px; }
.samf-careers-grid .samf-connect__text { font-size: 14px; line-height: 20px; margin: 0 0 16px; opacity: .8; color: #000; }
.samf-careers-grid .samf-connect__form { gap: 16px; }
.samf-careers-grid .samf-connect .form-control { font-size: 14px; line-height: 20px; padding: 8px 12px; min-block-size: 48px; border-radius: 8px; }
.samf-careers-grid .samf-connect__actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: stretch; }
.samf-careers .samf-careers-grid .samf-connect .samf-connect__upload,
.samf-careers .samf-careers-grid .samf-connect .samf-connect__submit {
  display: inline-flex; align-items: center; justify-content: center; gap: 12px; box-sizing: border-box; min-block-size: 50px; padding: 14px 20px;
  border: 1px solid var(--samf-color-ink); border-radius: 8px; font-family: var(--_body); font-size: 14px; line-height: 20px; font-weight: var(--samf-fw-semibold);
  letter-spacing: 0; text-decoration: none; text-transform: none; cursor: pointer; inline-size: auto;
}
.samf-careers .samf-careers-grid .samf-connect .samf-connect__upload { background: transparent; color: var(--samf-color-ink); }
.samf-careers .samf-careers-grid .samf-connect .samf-connect__submit { background: var(--samf-color-ink); color: #fff; text-transform: uppercase; }
:lang(ar) .samf-careers .samf-careers-grid .samf-connect .samf-connect__submit { text-transform: none; }
.samf-careers .samf-careers-grid .samf-connect .samf-connect__submit:hover, .samf-careers .samf-careers-grid .samf-connect .samf-connect__submit:focus-visible { background: var(--samf-palette-charcoal); border-color: var(--samf-palette-charcoal); color: #fff; }
.samf-careers .samf-careers-grid .samf-connect .samf-connect__submit::after,
.samf-careers .samf-careers-grid .samf-connect .samf-connect__upload::after {
  content: ""; inline-size: 12px; block-size: 12px; flex: none; background: currentColor;
  -webkit-mask: var(--_chevron) center / contain no-repeat; mask: var(--_chevron) center / contain no-repeat;
}
.samf-careers .samf-careers-grid .samf-connect .samf-connect__upload::after {
  -webkit-mask: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3e%3cpath d='M6 8V1.5M3.5 4 6 1.5 8.5 4M1.5 8.5v1.5h9V8.5' fill='none' stroke='black' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3e%3cpath d='M6 8V1.5M3.5 4 6 1.5 8.5 4M1.5 8.5v1.5h9V8.5' fill='none' stroke='black' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e") center / contain no-repeat;
}
[dir="rtl"] .samf-careers .samf-careers-grid .samf-connect .samf-connect__submit::after { transform: scaleX(-1); }
.samf-careers .samf-careers-grid .samf-connect .samf-connect__upload:focus-within { outline: 3px solid var(--samf-color-focus); outline-offset: 2px; }

/* Search button label is sentence case at every width (Figma 579:7645 "Search"). */
.samf-careers-search .samf-btn-primary { text-transform: none; }

/* Open job: description 14/20 Light (was 12/16), Share sits on the Apply row, 32px outlined green circles with 16px icons. */
.samf-careers .samf-job__summary { margin: 0; max-inline-size: none; font-size: 14px; line-height: 20px; font-weight: var(--samf-fw-light); color: var(--samf-color-text); }
.samf-careers .samf-accordion .accordion-body { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 16px 24px; align-items: center; }
.samf-careers .samf-accordion .accordion-body > :is(.samf-job__facts, .samf-job__summary) { grid-column: 1 / -1; }
.samf-careers .samf-accordion .accordion-body > .samf-job__actions { grid-column: 1; }
.samf-careers .samf-accordion .accordion-body > .samf-share { grid-column: 2; margin: 8px 0 0; gap: 8px; }
.samf-careers .samf-share__label { margin: 0; font-size: 12px; line-height: 16px; font-weight: var(--samf-fw-light); color: var(--samf-color-text); }
.samf-careers .samf-share__link { inline-size: 32px; block-size: 32px; border-color: var(--samf-color-primary); color: var(--samf-color-primary); }
.samf-careers .samf-share__link svg { inline-size: 16px; block-size: 16px; }

/* Pager (Figma 735:13650): 32px outlined circles, 8 apart; the inactive ones are dimmed. */
.samf-careers-panel .samf-pager, .samf-careers-panel .samf-pager__list { gap: 8px; }
.samf-careers-panel .samf-pager__page, .samf-careers-panel .samf-pager__nav { min-inline-size: 32px; min-block-size: 32px; block-size: 32px; font-size: 12px; line-height: 16px; border-color: color-mix(in srgb, var(--samf-color-text) 30%, transparent); }
.samf-careers-panel .samf-pager__nav { inline-size: 32px; }
.samf-careers-panel .samf-pager__page:not(.is-current) { color: color-mix(in srgb, var(--samf-color-text) 70%, transparent); }
.samf-careers-panel .samf-pager__page.is-current { border-color: var(--samf-color-primary); }
.samf-careers-panel .samf-pager__nav > span { inline-size: 8px; block-size: 8px; }

/* How to apply: step name and text are centred under the numbered circle. */
.samf-careers .samf-howto__name, .samf-careers .samf-howto__text { text-align: center; }

@media (max-width: 575.98px) {
  /* Figma 890:52885: 16 radius on the search and connect cards, 16 between step cards, compact Apply (8/12, radius 6, 12/16). */
  .samf-careers-search { border-radius: 16px; }
  .samf-careers-grid .samf-connect { border-radius: 16px; }
  .samf-howto__steps { gap: 16px; }
  .samf-careers .samf-accordion .accordion-body { grid-template-columns: minmax(0, 1fr); }
  .samf-careers .samf-accordion .accordion-body > :is(.samf-job__actions, .samf-share) { grid-column: 1; }
  .samf-careers .samf-accordion .accordion-body > .samf-share { margin: 0; }
  .samf-careers .samf-job__actions { gap: 12px; }
  .samf-careers .samf-job__actions > :is(.samf-btn-primary, .samf-btn-outline) { position: relative; inline-size: auto; min-block-size: 32px; padding: 7px 11px; border-radius: 6px; font-size: 12px; line-height: 16px; font-weight: var(--samf-fw-medium); }
  .samf-careers .samf-job__actions > :is(.samf-btn-primary, .samf-btn-outline)::before { content: ""; position: absolute; inset: -6px; }
}
@media (max-width: 375px) { .samf-careers .samf-job__actions > a { inline-size: auto; } }
@media (max-width: 575.98px) { .samf-careers .samf-careers-grid .samf-connect :is(.samf-connect__upload, .samf-connect__submit) { gap: 8px; padding-inline: 12px; white-space: nowrap; } }
.samf-careers-panel .samf-pager__nav:not(:hover) { color: color-mix(in srgb, var(--samf-color-text) 70%, transparent); }
/* Tablet: the page title shares the 40px gutter of the content below it (the shared header drops to 24 at 1024). */
@media (min-width: 576px) and (max-width: 1024px) { .samf-careers .samf-pagehead > .samf-m2-wrap { padding-inline: 40px; } }

/* visual-fix-1108 G5 job page (no Figma frame, derived from Careers 464:5532): same 1500 / 40 (20 on mobile) page grid as the list page, and the header pulled up 49 under the 125 sticky header. */
.samf-job--page .container { max-inline-size: 1500px; padding-inline: 40px; box-sizing: border-box; }
@media (min-width: 1400px) { .samf-job--page .samf-job-hero { margin-block-start: -49px; } }
@media (max-width: 575.98px) { .samf-job--page .container { padding-inline: 20px; } }
