/* FreeJobAlerts360 design system for Divi 5 (child theme).
   Navy "night shift" ground, marigold for actions, mint for open jobs.
   Every colour is a token; dark sections (.fja-dark) switch all text to light tokens. */
:root {
	--fja-ink: #0b1a33;          /* dark ground */
	--fja-ink-2: #142a52;        /* raised dark surface */
	--fja-ink-3: #1e3a6e;
	--fja-bg: #f4f6fb;           /* light ground */
	--fja-paper: #ffffff;
	--fja-line: #d9e1ee;
	--fja-text: #172133;
	--fja-muted: #4f5d75;
	--fja-brand: #1d4ed8;        /* links on light */
	--fja-brand-soft: #e7eeff;
	--fja-accent: #ffb627;       /* marigold actions */
	--fja-accent-2: #f59e0b;
	--fja-accent-ink: #1b1300;
	--fja-open: #0b7a55;
	--fja-open-bg: #ddf5ea;
	--fja-warn: #8a4b00;
	--fja-warn-bg: #fff3d6;
	--fja-err: #b42318;
	--fja-err-bg: #fde8e7;
	--fja-on-dark: #f3f6fc;
	--fja-on-dark-muted: #bcc8de;
	--fja-on-dark-link: #ffd477;
	--fja-radius: 14px;
	--fja-radius-sm: 9px;
	--fja-shadow: 0 1px 2px rgba(11, 26, 51, .06), 0 8px 24px -12px rgba(11, 26, 51, .18);
	--fja-shadow-lg: 0 24px 48px -24px rgba(11, 26, 51, .35);
	--fja-font-head: "Lexend", "Noto Sans", "Noto Sans Tamil", system-ui, sans-serif;
	--fja-font: "Noto Sans", "Noto Sans Tamil", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--fja-wrap: 1200px;
	--fja-gutter: clamp(16px, 4vw, 32px);
}

/* ------------------------------------------------------------------ base */
body.fja-site { font-family: var(--fja-font); font-size: 16px; line-height: 1.65; color: var(--fja-text); background: var(--fja-paper); -webkit-font-smoothing: antialiased; }
body.fja-site #page-container { padding-top: 0 !important; margin-top: 0 !important; overflow: clip; }
body.fja-site #main-header, body.fja-site #top-header, body.fja-site #main-footer, body.fja-site .et-l--header, body.fja-site .et-l--footer { display: none !important; }
body.fja-site #et-main-area, body.fja-site #main-content { background: transparent; }
body.fja-site #main-content .container { width: auto; max-width: none; padding-top: 0; }
body.fja-site #main-content .container::before { display: none; }
body.fja-site h1, body.fja-site h2, body.fja-site h3, body.fja-site h4, body.fja-site h5, body.fja-site h6 { font-family: var(--fja-font-head); color: var(--fja-text); line-height: 1.2; font-weight: 600; letter-spacing: -.01em; text-wrap: balance; padding-bottom: 0; }
body.fja-site h1 { font-size: clamp(2rem, 4.2vw, 3.1rem); font-weight: 700; }
body.fja-site h2 { font-size: clamp(1.45rem, 2.6vw, 2.05rem); margin: 0 0 .6em; }
body.fja-site h3 { font-size: 1.18rem; margin: 0 0 .45em; }
body.fja-site p { padding-bottom: 0; margin: 0 0 1em; }
body.fja-site a { color: var(--fja-brand); text-decoration-thickness: 1px; text-underline-offset: 3px; }
body.fja-site a:hover { color: var(--fja-ink-3); }
body.fja-site :focus-visible { outline: 3px solid var(--fja-accent); outline-offset: 2px; border-radius: 4px; }
.fja-ico { width: 1.15em; height: 1.15em; flex: none; vertical-align: -.2em; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
.fja-skip:focus { clip: auto; width: auto; height: auto; z-index: 1000; top: 8px; left: 8px; background: var(--fja-accent); color: var(--fja-accent-ink); padding: 10px 16px; border-radius: 8px; }
.fja-wrap { width: min(var(--fja-wrap), 100% - 2 * var(--fja-gutter)); margin-inline: auto; }
.fja-narrow { max-width: 860px; }
.fja-center { text-align: center; }
.fja-muted { color: var(--fja-muted); }
.fja-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* ------------------------------------------------------------------ Divi structure inside our sections */
body.fja-site .et_pb_section.fja-sec, .fja-sec { padding: clamp(48px, 7vw, 88px) 0; background: var(--fja-paper); position: relative; }
body.fja-site .et_pb_section.fja-sec.fja-alt, .fja-sec.fja-alt { background: var(--fja-bg); }
body.fja-site .fja-sec .et_pb_row { width: min(var(--fja-wrap), 100% - 2 * var(--fja-gutter)); max-width: none; padding: 0; margin-inline: auto; }
body.fja-site .fja-sec .et_pb_row + .et_pb_row { margin-top: clamp(20px, 3vw, 32px); }
body.fja-site .fja-sec .et_pb_column { margin-bottom: 0; }
body.fja-site .fja-sec .et_pb_module { margin-bottom: 18px; }
body.fja-site .fja-sec .et_pb_column > .et_pb_module:last-child { margin-bottom: 0; }
body.fja-site .fja-sec .et_pb_text_inner > *:last-child { margin-bottom: 0; }
body.fja-site .et_pb_row.fja-center .et_pb_column { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; }
@media (min-width: 981px) {
	body.fja-site .fja-sec .et_pb_row { display: flex; gap: clamp(24px, 3.5vw, 48px); }
	body.fja-site .fja-sec .et_pb_row::after { display: none; }
	body.fja-site .fja-sec .et_pb_column { margin-right: 0 !important; float: none; }
	body.fja-site .fja-sec .et_pb_column_4_4 { width: 100%; }
	body.fja-site .fja-sec .et_pb_column_1_2 { width: 50%; }
	body.fja-site .fja-sec .et_pb_column_1_3 { width: 33.333%; }
	body.fja-site .fja-sec .et_pb_column_2_3 { width: 66.666%; }
	body.fja-site .fja-sec .et_pb_column_1_4 { width: 25%; }
	body.fja-site .fja-sec .et_pb_column_3_5 { width: 60%; }
	body.fja-site .fja-sec .et_pb_column_2_5 { width: 40%; }
	body.fja-site .fja-sec .et_pb_column { flex: 1 1 0; min-width: 0; }
	body.fja-site .fja-sec .et_pb_column_2_3, body.fja-site .fja-sec .et_pb_column_3_5 { flex-grow: 1.6; }
}
@media (max-width: 980px) {
	body.fja-site .fja-sec .et_pb_column { width: 100% !important; margin-bottom: 24px !important; }
	body.fja-site .fja-sec .et_pb_column:last-child { margin-bottom: 0 !important; }
}

/* ------------------------------------------------------------------ dark sections: always light text (fixes dark-on-dark) */
.fja-dark, body.fja-site .et_pb_section.fja-dark { background: var(--fja-ink); color: var(--fja-on-dark); }
.fja-dark h1, .fja-dark h2, .fja-dark h3, .fja-dark h4, .fja-dark h5, .fja-dark h6,
body.fja-site .fja-dark h1, body.fja-site .fja-dark h2, body.fja-site .fja-dark h3, body.fja-site .fja-dark h4, body.fja-site .fja-dark .et_pb_module_header,
.fja-dark .et_pb_text, .fja-dark .et_pb_text p, .fja-dark .et_pb_text li, .fja-dark strong, .fja-dark label, .fja-dark legend, .fja-dark .et_pb_bg_layout_light { color: var(--fja-on-dark) !important; }
.fja-dark p, .fja-dark li, .fja-dark .fja-lead, .fja-dark .fja-help, .fja-dark .fja-crumbs, .fja-dark .fja-crumbs span { color: var(--fja-on-dark-muted); }
body.fja-site .fja-dark .et_pb_text p, body.fja-site .fja-dark .fja-lead { color: var(--fja-on-dark-muted) !important; }
.fja-dark a:not(.fja-btn):not(.fja-chip):not(.fja-pill), body.fja-site .fja-dark a:not(.fja-btn):not(.fja-chip):not(.fja-pill) { color: var(--fja-on-dark-link); }
.fja-dark a:not(.fja-btn):not(.fja-chip):hover { color: #fff; }
.fja-dark .fja-eyebrow, body.fja-site .fja-dark .fja-eyebrow { color: var(--fja-accent) !important; }
.fja-dark input, .fja-dark select, .fja-dark textarea { color: var(--fja-text) !important; background: var(--fja-paper) !important; }
.fja-dark .fja-field label, .fja-dark .fja-field--check label { color: var(--fja-on-dark) !important; }

/* ------------------------------------------------------------------ type helpers */
.fja-eyebrow { font: 600 .78rem/1.3 var(--fja-font-head); letter-spacing: .08em; text-transform: uppercase; color: var(--fja-brand); margin: 0 0 .7em !important; }
.fja-lead { font-size: clamp(1.05rem, 1.6vw, 1.2rem); color: var(--fja-muted); max-width: 64ch; }
.fja-head { max-width: 760px; }
.fja-head h2, .fja-head h1 { margin-bottom: .35em; }
.fja-center .fja-head, .fja-head.fja-center { margin-inline: auto; text-align: center; }
.fja-prose { max-width: 72ch; }
.fja-prose h2 { margin-top: 1.6em; }
.fja-prose h3 { margin-top: 1.3em; }
.fja-prose ul, .fja-prose ol { padding-left: 1.3em; margin: 0 0 1.1em; }
.fja-prose li { margin-bottom: .35em; }
.fja-prose table, .fja-table { width: 100%; border-collapse: collapse; margin: 0 0 1.4em; font-size: .95rem; }
.fja-prose th, .fja-prose td, .fja-table th, .fja-table td { border: 1px solid var(--fja-line); padding: 10px 12px; text-align: left; vertical-align: top; }
.fja-prose thead th, .fja-prose tr:first-child td { background: var(--fja-bg); font-weight: 600; }
.fja-tablewrap { overflow-x: auto; margin-bottom: 1.6em; -webkit-overflow-scrolling: touch; }
.fja-draft-note { background: var(--fja-warn-bg); color: var(--fja-warn); padding: 10px 14px; border-radius: var(--fja-radius-sm); font-weight: 600; }
.fja-checklist { list-style: none; padding: 0 !important; margin: 0 0 1em; display: grid; gap: 10px; }
.fja-checklist li { position: relative; padding-left: 30px; }
.fja-checklist li::before { content: ""; position: absolute; left: 0; top: .22em; width: 20px; height: 20px; border-radius: 50%; background: var(--fja-open-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b7a55' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 12px no-repeat; }
.fja-dark .fja-checklist li::before { background-color: rgba(255, 182, 39, .18); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffb627' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E"); }
.fja-steps-list { padding-left: 1.2em; display: grid; gap: 8px; margin: 0; }

/* ------------------------------------------------------------------ buttons, chips, pills */
.fja-btn, body.fja-site .et_pb_button.fja-btn, body.fja-site a.fja-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: .5em; min-height: 46px; padding: 11px 22px !important;
	font: 600 1rem/1.2 var(--fja-font-head) !important; letter-spacing: 0; border-radius: 999px !important; border: 2px solid transparent !important;
	background: var(--fja-accent) !important; color: var(--fja-accent-ink) !important; text-decoration: none !important; cursor: pointer;
	box-shadow: 0 6px 16px -8px rgba(245, 158, 11, .8); transition: transform .15s ease, background .15s ease, box-shadow .15s ease;
}
.fja-btn:hover, body.fja-site .et_pb_button.fja-btn:hover { background: var(--fja-accent-2) !important; color: var(--fja-accent-ink) !important; transform: translateY(-1px); padding: 11px 22px !important; }
body.fja-site .et_pb_button.fja-btn::after, body.fja-site .et_pb_button.fja-btn::before { display: none !important; }
.fja-btn--ghost, body.fja-site .et_pb_button.fja-btn--ghost { background: transparent !important; color: var(--fja-ink) !important; border-color: var(--fja-line) !important; box-shadow: none; }
.fja-btn--ghost:hover, body.fja-site .et_pb_button.fja-btn--ghost:hover { background: var(--fja-brand-soft) !important; border-color: var(--fja-brand) !important; color: var(--fja-ink) !important; }
.fja-btn--light, body.fja-site .et_pb_button.fja-btn--light { background: var(--fja-paper) !important; color: var(--fja-ink) !important; box-shadow: none; }
.fja-btn--light:hover, body.fja-site .et_pb_button.fja-btn--light:hover { background: #e9eef8 !important; color: var(--fja-ink) !important; }
.fja-btn--onDark { background: transparent !important; color: var(--fja-on-dark) !important; border-color: rgba(255, 255, 255, .35) !important; box-shadow: none; }
.fja-btn--onDark:hover { background: rgba(255, 255, 255, .1) !important; color: #fff !important; }
.fja-dark .fja-btn--ghost, body.fja-site .fja-dark .et_pb_button.fja-btn--ghost { color: var(--fja-on-dark) !important; border-color: rgba(255, 255, 255, .35) !important; }
.fja-btn--sm, body.fja-site a.fja-btn--sm { min-height: 38px; padding: 7px 15px !important; font-size: .92rem !important; }
.fja-btn--block { width: 100%; }
body.fja-site .et_pb_button_module_wrapper { display: inline-block; margin: 0 10px 10px 0 !important; }
.fja-chips, .fja-popular { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 0; }
.fja-popular > span { font-weight: 600; margin-right: 4px; }
.fja-chip { display: inline-flex; align-items: center; gap: 6px; padding: 6px 13px; border-radius: 999px; background: var(--fja-paper); border: 1px solid var(--fja-line); color: var(--fja-text) !important; font-size: .9rem; text-decoration: none !important; transition: border-color .15s, background .15s; }
.fja-chip:hover { border-color: var(--fja-brand); background: var(--fja-brand-soft); }
.fja-chip span { color: var(--fja-muted); font-size: .8rem; font-variant-numeric: tabular-nums; }
.fja-chip--lg { padding: 9px 16px; font-weight: 500; }
.fja-chip .fja-ico { color: var(--fja-brand); }
.fja-dark .fja-chip { background: rgba(255, 255, 255, .08); border-color: rgba(255, 255, 255, .18); color: var(--fja-on-dark) !important; }
.fja-dark .fja-chip:hover { background: rgba(255, 255, 255, .16); }
.fja-dark .fja-popular > span { color: var(--fja-on-dark-muted); }
.fja-pill { display: inline-flex; align-items: center; gap: 5px; padding: 3px 10px; border-radius: 999px; font: 600 .78rem/1.5 var(--fja-font); white-space: nowrap; text-decoration: none !important; }
.fja-pill--open { background: var(--fja-open-bg); color: var(--fja-open); }
.fja-pill--old { background: var(--fja-warn-bg); color: var(--fja-warn); }
.fja-pill--plain { background: rgba(255, 255, 255, .12); color: var(--fja-on-dark) !important; }

/* ------------------------------------------------------------------ topbar, header, nav */
.fja-topbar { background: #071225; color: var(--fja-on-dark-muted); font-size: .85rem; }
.fja-topbar__inner { display: flex; justify-content: space-between; gap: 16px; align-items: center; min-height: 38px; flex-wrap: wrap; }
.fja-topbar p { margin: 0; display: flex; align-items: center; gap: 8px; color: var(--fja-on-dark-muted); }
.fja-topbar .fja-ico { color: var(--fja-accent); }
.fja-topbar__links { gap: 18px !important; }
.fja-topbar a { color: var(--fja-on-dark) !important; text-decoration: none; display: inline-flex; gap: 6px; align-items: center; }
.fja-topbar a:hover { color: var(--fja-accent) !important; }
@media (max-width: 760px) { .fja-topbar__links { display: none !important; } .fja-topbar__inner { justify-content: center; text-align: center; } }

.fja-header { position: sticky; top: 0; z-index: 900; background: var(--fja-paper); border-bottom: 1px solid var(--fja-line); }
body.admin-bar .fja-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .fja-header { top: 0; } }
.fja-header__inner { display: flex; align-items: center; gap: 20px; min-height: 70px; }
.fja-logo { display: inline-flex; align-items: center; gap: 10px; text-decoration: none !important; color: var(--fja-ink) !important; flex: none; }
.fja-logo__mark { width: 38px; height: 38px; border-radius: 11px; background: var(--fja-accent); color: var(--fja-ink); display: grid; place-items: center; box-shadow: inset 0 -3px 0 rgba(0, 0, 0, .12); }
.fja-logo__mark .fja-ico { width: 21px; height: 21px; }
.fja-logo__text { font: 600 1.22rem/1 var(--fja-font-head); letter-spacing: -.02em; }
.fja-logo__text b { color: var(--fja-brand); font-weight: 700; }
.fja-logo__text i { font-style: normal; font-size: .72em; margin-left: 3px; padding: 2px 6px; border-radius: 6px; background: var(--fja-ink); color: var(--fja-accent); vertical-align: 2px; }
.fja-logo--light { color: var(--fja-on-dark) !important; }
.fja-logo--light .fja-logo__text b { color: var(--fja-on-dark-link); }
.fja-logo--light .fja-logo__text i { background: var(--fja-accent); color: var(--fja-ink); }
.fja-nav { flex: 1; }
.fja-nav__list { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 2px; justify-content: center; }
.fja-nav__item { position: relative; display: flex; align-items: center; }
.fja-nav__item > a { display: block; padding: 10px 12px; color: var(--fja-text) !important; font: 500 .97rem var(--fja-font-head); text-decoration: none; border-radius: 8px; }
.fja-nav__item > a:hover, .fja-nav__item > a[aria-current="page"] { color: var(--fja-brand) !important; background: var(--fja-brand-soft); }
.fja-nav__sub-toggle { background: none; border: 0; padding: 6px 4px; margin-left: -8px; cursor: pointer; color: var(--fja-muted); }
.fja-nav__sub { position: absolute; top: calc(100% + 10px); left: 0; min-width: 240px; background: var(--fja-paper); border: 1px solid var(--fja-line); border-radius: var(--fja-radius); box-shadow: var(--fja-shadow-lg); padding: 10px; opacity: 0; visibility: hidden; transform: translateY(6px); transition: .16s ease; z-index: 50; }
.fja-nav__sub::before { content: ""; position: absolute; inset: -12px 0 auto; height: 12px; }
.fja-nav__item:hover > .fja-nav__sub, .fja-nav__item:focus-within > .fja-nav__sub, .fja-nav__item.is-open > .fja-nav__sub { opacity: 1; visibility: visible; transform: none; }
.fja-nav__sub ul { list-style: none; margin: 0; padding: 0; }
.fja-nav__sub li a { display: block; padding: 8px 12px; border-radius: 8px; color: var(--fja-text) !important; text-decoration: none; font-size: .95rem; }
.fja-nav__sub li a:hover { background: var(--fja-bg); color: var(--fja-brand) !important; }
.fja-nav__item.is-mega > .fja-nav__sub { left: -40px; width: min(720px, 90vw); padding: 0; }
.fja-mega { display: grid; grid-template-columns: 1.4fr 1fr; }
.fja-mega__col { padding: 20px; }
.fja-mega__col + .fja-mega__col { background: var(--fja-bg); border-radius: 0 var(--fja-radius) var(--fja-radius) 0; }
.fja-mega__label { font: 600 .74rem var(--fja-font-head); text-transform: uppercase; letter-spacing: .08em; color: var(--fja-muted); margin: 0 0 10px; }
.fja-mega__cats { display: grid; gap: 4px; }
.fja-mega__cats a { display: flex !important; gap: 12px; align-items: center; padding: 9px 10px !important; }
.fja-mega__cats .fja-ico { width: 34px; height: 34px; padding: 7px; border-radius: 10px; background: var(--fja-brand-soft); color: var(--fja-brand); }
.fja-mega__cats span { display: grid; line-height: 1.25; font-weight: 500; }
.fja-mega__cats em { font-style: normal; font-size: .8rem; color: var(--fja-muted); font-weight: 400; }
.fja-mega__cta { margin-top: 14px; padding: 14px; border-radius: 12px; background: var(--fja-ink); color: var(--fja-on-dark-muted); }
.fja-mega__cta p { margin: 0 0 10px; font-size: .9rem; color: var(--fja-on-dark-muted); }
.fja-mega__cta strong { color: var(--fja-on-dark); }
.fja-header__actions { display: flex; align-items: center; gap: 8px; margin-left: auto; }
.fja-iconbtn { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 12px; border: 1px solid var(--fja-line); background: var(--fja-paper); color: var(--fja-ink); cursor: pointer; }
.fja-iconbtn:hover { border-color: var(--fja-brand); color: var(--fja-brand); }
.fja-menu-toggle { display: none; }
.fja-menu-toggle .fja-i-close { display: none; }
.fja-nav__mobile-cta { display: none !important; }
.fja-search-overlay { border-top: 1px solid var(--fja-line); background: var(--fja-paper); padding: 16px 0; box-shadow: var(--fja-shadow); }
.fja-search-overlay .fja-wrap { display: flex; gap: 10px; align-items: flex-start; }
.fja-search-overlay .fja-searchbox { flex: 1; box-shadow: none; border-color: var(--fja-line); }
@media (max-width: 1080px) {
	.fja-menu-toggle { display: grid; }
	.fja-nav { position: fixed; inset: 0 0 0 auto; width: min(380px, 92vw); background: var(--fja-paper); box-shadow: var(--fja-shadow-lg); padding: 84px 18px 24px; overflow-y: auto; transform: translateX(105%); transition: transform .25s ease; z-index: 950; }
	body.fja-nav-open .fja-nav { transform: none; }
	body.fja-nav-open .fja-menu-toggle { position: fixed; top: 14px; right: 16px; z-index: 960; }
	body.fja-nav-open .fja-menu-toggle .fja-i-open { display: none; }
	body.fja-nav-open .fja-menu-toggle .fja-i-close { display: block; }
	body.fja-nav-open::after { content: ""; position: fixed; inset: 0; background: rgba(11, 26, 51, .45); z-index: 850; }
	body.fja-nav-open { overflow: hidden; }
	.fja-nav__list { flex-direction: column; align-items: stretch; gap: 0; }
	.fja-nav__item { flex-wrap: wrap; border-bottom: 1px solid var(--fja-line); }
	.fja-nav__item > a { flex: 1; padding: 14px 6px; font-size: 1.05rem; }
	.fja-nav__sub-toggle { padding: 12px; margin: 0; }
	.fja-nav__sub { position: static; width: 100% !important; min-width: 0; opacity: 1; visibility: visible; transform: none; box-shadow: none; border: 0; padding: 0 0 10px; display: none; }
	.fja-nav__item.is-open > .fja-nav__sub { display: block; }
	.fja-nav__item:hover > .fja-nav__sub { display: none; }
	.fja-nav__item.is-open:hover > .fja-nav__sub { display: block; }
	.fja-mega { grid-template-columns: 1fr; }
	.fja-mega__col { padding: 6px 0; }
	.fja-mega__col + .fja-mega__col { background: none; }
	.fja-nav__mobile-cta { display: block !important; border: 0 !important; padding-top: 18px; }
	.fja-nav__mobile-cta .fja-btn { width: 100%; }
}
@media (max-width: 560px) { .fja-hide-sm { display: none !important; } .fja-logo__text { font-size: 1.05rem; } .fja-logo__mark { width: 34px; height: 34px; } }

/* ------------------------------------------------------------------ hero */
body.fja-site .et_pb_section.fja-hero, .fja-hero {
	background-color: var(--fja-ink);
	background-image: radial-gradient(900px 420px at 85% -10%, rgba(29, 78, 216, .55), transparent 60%), radial-gradient(600px 300px at 0% 110%, rgba(255, 182, 39, .16), transparent 60%),
		radial-gradient(rgba(255, 255, 255, .07) 1px, transparent 1px);
	background-size: auto, auto, 22px 22px;
	padding: clamp(48px, 8vw, 96px) 0 clamp(44px, 7vw, 84px);
}
body.fja-site .et_pb_section.fja-hero--compact, .fja-hero--compact { padding: clamp(36px, 5vw, 60px) 0 clamp(32px, 5vw, 56px); }
.fja-hero h1 { color: #fff !important; max-width: 20ch; }
.fja-hero--compact h1 { font-size: clamp(1.8rem, 3.6vw, 2.6rem); max-width: 28ch; }
.fja-hero .fja-lead { color: var(--fja-on-dark-muted) !important; margin-bottom: 0; }
.fja-hero .fja-searchbox { margin-top: 10px; }
.fja-hero--home .fja-popular { margin-top: 4px; }
.fja-crumbs ol { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 18px; padding: 0; font-size: .88rem; }
.fja-crumbs li + li::before { content: "/"; margin-right: 6px; opacity: .5; }
.fja-crumbs a { text-decoration: none; }
.fja-crumbs [aria-current] { color: var(--fja-on-dark-muted); }
body.fja-site .fja-crumbs-wrap { margin-bottom: 0 !important; }

/* ------------------------------------------------------------------ search box + suggestions */
.fja-searchbox { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr) auto; gap: 8px; background: var(--fja-paper); padding: 8px; border-radius: 18px; box-shadow: var(--fja-shadow-lg); border: 1px solid rgba(255, 255, 255, .2); max-width: 880px; position: relative; }
.fja-searchbox__field { position: relative; display: flex; align-items: center; background: var(--fja-bg); border-radius: 12px; }
.fja-searchbox__field label { position: absolute; left: 14px; color: var(--fja-muted); display: flex; pointer-events: none; }
.fja-searchbox input, .fja-searchbox select { width: 100%; min-width: 0; border: 0 !important; background: transparent !important; padding: 14px 12px 14px 42px !important; font: 500 1rem var(--fja-font) !important; color: var(--fja-text) !important; border-radius: 12px; min-height: 52px; appearance: none; }
.fja-searchbox select { cursor: pointer; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234f5d75' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important; background-repeat: no-repeat !important; background-position: right 12px center !important; background-size: 18px !important; padding-right: 36px !important; }
.fja-searchbox .fja-btn { min-height: 52px; border-radius: 12px !important; padding-inline: 26px !important; }
@media (max-width: 720px) { .fja-searchbox { grid-template-columns: 1fr; } }
.fja-suggest { position: absolute; top: calc(100% + 6px); left: 0; right: 0; z-index: 60; list-style: none; margin: 0; padding: 6px; background: var(--fja-paper); border: 1px solid var(--fja-line); border-radius: 12px; box-shadow: var(--fja-shadow-lg); max-height: 360px; overflow-y: auto; }
.fja-suggest li { padding: 9px 12px; border-radius: 8px; cursor: pointer; display: flex; justify-content: space-between; gap: 10px; color: var(--fja-text); font-size: .95rem; }
.fja-suggest li small { color: var(--fja-muted); font-size: .78rem; white-space: nowrap; }
.fja-suggest li[aria-selected="true"], .fja-suggest li:hover { background: var(--fja-brand-soft); }

/* ------------------------------------------------------------------ stats, tiles, cities */
body.fja-site .et_pb_section.fja-stats-sec { padding: 0; background: var(--fja-paper); }
.fja-stats { list-style: none; margin: -38px 0 0; padding: 18px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; background: var(--fja-paper); border: 1px solid var(--fja-line); border-radius: 18px; box-shadow: var(--fja-shadow); position: relative; z-index: 2; }
.fja-stats li { display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto auto; column-gap: 12px; align-items: center; padding: 6px 10px; }
.fja-stats .fja-ico { grid-row: span 2; width: 42px; height: 42px; padding: 10px; border-radius: 12px; background: var(--fja-brand-soft); color: var(--fja-brand); }
.fja-stats strong { font: 700 1.5rem/1.1 var(--fja-font-head); color: var(--fja-ink); font-variant-numeric: tabular-nums; }
.fja-stats span { color: var(--fja-muted); font-size: .9rem; }
.fja-stats--stack { grid-template-columns: 1fr 1fr; margin: 0 0 18px; box-shadow: none; }
@media (max-width: 760px) { .fja-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.fja-tiles { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; }
.fja-tile { display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto auto; column-gap: 14px; align-items: center; padding: 18px; border-radius: var(--fja-radius); background: var(--fja-paper); border: 1px solid var(--fja-line); text-decoration: none !important; color: var(--fja-text) !important; transition: transform .15s, border-color .15s, box-shadow .15s; height: 100%; }
.fja-tile:hover { transform: translateY(-2px); border-color: var(--fja-brand); box-shadow: var(--fja-shadow); }
.fja-tile__icon { grid-row: span 2; width: 48px; height: 48px; border-radius: 14px; background: var(--fja-ink); color: var(--fja-accent); display: grid; place-items: center; }
.fja-tile__icon .fja-ico { width: 24px; height: 24px; }
.fja-tile__name { font: 600 1.02rem/1.3 var(--fja-font-head); }
.fja-tile__count { color: var(--fja-muted); font-size: .88rem; font-variant-numeric: tabular-nums; }
.fja-group-title { margin-top: 1.4em !important; font-size: 1.05rem !important; color: var(--fja-muted) !important; }
.fja-group-title:first-child { margin-top: 0 !important; }
.fja-citylist { list-style: none; margin: 0 0 8px; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; }
.fja-citylist a { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-radius: 12px; border: 1px solid var(--fja-line); background: var(--fja-paper); color: var(--fja-text) !important; text-decoration: none !important; }
.fja-citylist a:hover { border-color: var(--fja-brand); background: var(--fja-brand-soft); }
.fja-citylist .fja-ico { color: var(--fja-brand); }
.fja-citylist span { flex: 1; font-weight: 500; }
.fja-citylist em { font-style: normal; color: var(--fja-muted); font-size: .85rem; font-variant-numeric: tabular-nums; }

/* ------------------------------------------------------------------ cards */
.fja-card { background: var(--fja-paper); border: 1px solid var(--fja-line); border-radius: var(--fja-radius); }
.fja-results__list { display: grid; gap: 12px; }
.fja-jobcard { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 16px; padding: 18px; align-items: start; transition: border-color .15s, box-shadow .15s; }
.fja-jobcard:hover { border-color: #b7c6e6; box-shadow: var(--fja-shadow); }
.fja-jobcard__icon { width: 48px; height: 48px; border-radius: 14px; display: grid; place-items: center; background: var(--fja-brand-soft); color: var(--fja-brand); }
.fja-jobcard__icon .fja-ico { width: 24px; height: 24px; }
.fja-jobcard.is-old .fja-jobcard__icon { background: var(--fja-bg); color: var(--fja-muted); }
.fja-jobcard__title { font-size: 1.08rem !important; margin: 0 0 6px !important; line-height: 1.35 !important; }
.fja-jobcard__title a { color: var(--fja-ink) !important; text-decoration: none; }
.fja-jobcard__title a:hover { color: var(--fja-brand) !important; text-decoration: underline; }
.fja-jobcard__meta { display: flex; flex-wrap: wrap; gap: 4px 16px; margin: 0 0 6px !important; color: var(--fja-muted); font-size: .9rem; }
.fja-jobcard__meta span { display: inline-flex; align-items: center; gap: 5px; }
.fja-jobcard__salary { margin: 0 !important; display: inline-flex; gap: 5px; align-items: center; font-weight: 600; color: var(--fja-open); font-size: .95rem; }
.fja-jobcard__side { display: grid; justify-items: end; gap: 8px; text-align: right; }
.fja-jobcard__date { font-size: .82rem; color: var(--fja-muted); white-space: nowrap; }
@media (max-width: 640px) {
	.fja-jobcard { grid-template-columns: auto minmax(0, 1fr); }
	.fja-jobcard__side { grid-column: 1 / -1; grid-template-columns: auto 1fr auto; justify-items: start; align-items: center; text-align: left; }
	.fja-jobcard__side .fja-btn { justify-self: end; }
}
.fja-postgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; }
.fja-postcard { overflow: hidden; display: flex; flex-direction: column; transition: transform .15s, box-shadow .15s; }
.fja-postcard:hover { transform: translateY(-2px); box-shadow: var(--fja-shadow); }
.fja-postcard__img { display: block; aspect-ratio: 16 / 9; background: var(--fja-bg); overflow: hidden; max-width: 100%; }
.fja-postcard__img img { width: 100%; height: 100%; object-fit: cover; }
.fja-postcard__ph { display: grid; place-items: center; height: 100%; color: var(--fja-brand); }
.fja-postcard__ph .fja-ico { width: 40px; height: 40px; }
.fja-postcard__body { padding: 18px 20px 20px; display: flex; flex-direction: column; flex: 1; }
.fja-postcard__body h3 { font-size: 1.1rem !important; }
.fja-postcard__body h3 a { color: var(--fja-ink) !important; text-decoration: none; }
.fja-postcard__body p { color: var(--fja-muted); font-size: .95rem; }
.fja-postcard__meta { margin-top: auto !important; display: flex; gap: 6px; align-items: center; font-size: .85rem !important; }
.fja-companies { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 14px; }
.fja-company { display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto auto; column-gap: 14px; padding: 16px; text-decoration: none !important; color: var(--fja-text) !important; height: 100%; }
.fja-company:hover { border-color: var(--fja-brand); }
.fja-company__mark { grid-row: span 2; width: 46px; height: 46px; border-radius: 12px; background: var(--fja-ink); color: var(--fja-accent); display: grid; place-items: center; font: 700 1.2rem var(--fja-font-head); }
.fja-company__name { font: 600 1rem/1.3 var(--fja-font-head); }
.fja-company__meta { color: var(--fja-muted); font-size: .88rem; }
.fja-note-card { background: var(--fja-bg); border: 1px solid var(--fja-line); border-radius: var(--fja-radius); padding: 22px; margin-bottom: 18px; }
.fja-note-card > *:last-child { margin-bottom: 0 !important; }
.fja-note-card h3 { display: flex; gap: 8px; align-items: center; }
.fja-note-card--warn { background: var(--fja-warn-bg); border-color: #f2d49b; }
.fja-note-card--safe { background: #f2f8ff; border-color: #cfe0ff; margin-top: 24px; }
.fja-iconlist { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.fja-iconlist li { display: flex; gap: 10px; align-items: flex-start; }
.fja-iconlist .fja-ico { margin-top: .2em; color: var(--fja-brand); }
.fja-dark .fja-iconlist .fja-ico { color: var(--fja-accent); }

/* ------------------------------------------------------------------ Divi blurbs with icons */
body.fja-site .fja-blurb { padding: 22px; border-radius: var(--fja-radius); background: var(--fja-paper); border: 1px solid var(--fja-line); height: calc(100% - 18px); transition: border-color .15s, transform .15s; }
body.fja-site .fja-blurb:hover { border-color: #b7c6e6; }
body.fja-site .fja-blurb .et_pb_blurb_content { max-width: none; text-align: left; }
body.fja-site .fja-blurb .et_pb_blurb_content::before { content: ""; display: block; width: 48px; height: 48px; border-radius: 14px; margin-bottom: 14px; background: var(--fja-ink) linear-gradient(var(--fja-accent), var(--fja-accent)) center / 24px 24px no-repeat; -webkit-mask: none; }
body.fja-site .fja-blurb[class*="fja-i-"] .et_pb_blurb_content::before { background: var(--fja-ink); box-shadow: inset 0 0 0 48px var(--fja-ink); position: relative; }
body.fja-site .fja-blurb .et_pb_blurb_content { position: relative; }
body.fja-site .fja-blurb[class*="fja-i-"] .et_pb_blurb_content::after { content: ""; position: absolute; top: 12px; left: 12px; width: 24px; height: 24px; background: var(--fja-accent); -webkit-mask: var(--fja-ico) center / contain no-repeat; mask: var(--fja-ico) center / contain no-repeat; }
body.fja-site .fja-blurb .et_pb_module_header { font-size: 1.12rem !important; margin-bottom: 6px; padding: 0; }
body.fja-site .fja-blurb .et_pb_module_header a { color: var(--fja-ink) !important; text-decoration: none; }
body.fja-site .fja-blurb .et_pb_blurb_description { color: var(--fja-muted); font-size: .97rem; }
body.fja-site .fja-blurb .et_pb_main_blurb_image { display: none; }
body.fja-site .fja-steps .fja-blurb { background: var(--fja-bg); border-color: transparent; }
body.fja-site .fja-employers .fja-blurb { display: block; height: auto; padding: 16px 18px; margin-bottom: 12px !important; }
body.fja-site .fja-employers .fja-blurb .et_pb_blurb_content { display: grid; grid-template-columns: 48px 1fr; column-gap: 14px; }
body.fja-site .fja-employers .fja-blurb .et_pb_blurb_content::before { grid-row: span 2; margin: 0; }
body.fja-site .fja-employers .fja-blurb .et_pb_blurb_container { grid-column: 2; }

/* ------------------------------------------------------------------ FAQ (Divi toggles and <details>) */
body.fja-site .fja-faq .et_pb_column { display: grid; gap: 10px; }
body.fja-site .et_pb_toggle { margin: 0 !important; border: 1px solid var(--fja-line) !important; border-radius: 12px; background: var(--fja-paper) !important; padding: 0 !important; overflow: hidden; }
body.fja-site .et_pb_toggle_title, body.fja-site .et_pb_toggle .et_pb_toggle_title { font: 600 1.02rem/1.4 var(--fja-font-head) !important; color: var(--fja-ink) !important; padding: 16px 52px 16px 18px !important; cursor: pointer; margin: 0 !important; position: relative; }
body.fja-site .et_pb_toggle_title::before { content: "" !important; position: absolute; right: 18px !important; top: 50% !important; width: 22px; height: 22px; margin-top: -11px !important; border-radius: 50%; background: var(--fja-brand-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231d4ed8' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center / 14px no-repeat; font-family: inherit !important; }
body.fja-site .et_pb_toggle_open .et_pb_toggle_title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231d4ed8' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M6 12h12'/%3E%3C/svg%3E"); }
body.fja-site .et_pb_toggle_content { padding: 0 18px 18px !important; color: var(--fja-muted); }
body.fja-site .et_pb_toggle_content p:last-child { margin-bottom: 0; }
body.fja-site .et_pb_toggle_open { border-color: #b7c6e6 !important; box-shadow: var(--fja-shadow); }
.fja-faq-list { display: grid; gap: 10px; }
details.fja-faq { border: 1px solid var(--fja-line); border-radius: 12px; background: var(--fja-paper); }
details.fja-faq summary { list-style: none; cursor: pointer; padding: 16px 52px 16px 18px; font: 600 1.02rem/1.4 var(--fja-font-head); color: var(--fja-ink); position: relative; }
details.fja-faq summary::-webkit-details-marker { display: none; }
details.fja-faq summary::after { content: "+"; position: absolute; right: 18px; top: 50%; transform: translateY(-50%); width: 24px; height: 24px; border-radius: 50%; background: var(--fja-brand-soft); color: var(--fja-brand); display: grid; place-items: center; font-size: 1.1rem; line-height: 1; }
details.fja-faq[open] summary::after { content: "–"; }
details.fja-faq[open] { border-color: #b7c6e6; box-shadow: var(--fja-shadow); }
details.fja-faq > div { padding: 0 18px 16px; color: var(--fja-muted); }
details.fja-faq > div p:last-child { margin: 0; }

/* ------------------------------------------------------------------ forms */
.fja-form { display: grid; gap: 14px; }
.fja-grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
@media (max-width: 600px) { .fja-grid2 { grid-template-columns: 1fr; } }
.fja-field { display: grid; gap: 6px; min-width: 0; }
.fja-field--full { grid-column: 1 / -1; }
.fja-field label, .fja-filter label, .fja-fieldset legend { font: 600 .9rem var(--fja-font); color: var(--fja-text); }
.fja-field label span, .fja-field--check label span { color: var(--fja-err); }
.fja-field input, .fja-field select, .fja-field textarea, .fja-filter select {
	width: 100%; min-width: 0; padding: 12px 14px !important; border: 1.5px solid var(--fja-line) !important; border-radius: 10px !important; background: var(--fja-paper) !important;
	font: 400 1rem var(--fja-font) !important; color: var(--fja-text) !important; min-height: 48px; box-shadow: none !important;
}
.fja-field textarea { min-height: 110px; resize: vertical; }
.fja-field input:focus, .fja-field select:focus, .fja-field textarea:focus, .fja-filter select:focus { border-color: var(--fja-brand) !important; outline: 3px solid rgba(29, 78, 216, .18); outline-offset: 0; }
.fja-field input[type="file"] { padding: 10px !important; min-height: 0; }
.fja-field.is-invalid input, .fja-field.is-invalid select, .fja-field.is-invalid textarea { border-color: var(--fja-err) !important; }
.fja-field__err { color: var(--fja-err); font-size: .85rem; }
.fja-dark .fja-field__err { color: #ffb4ac; }
.fja-field--check { grid-template-columns: auto 1fr; align-items: start; gap: 10px; }
.fja-field--check input { width: 20px; height: 20px; margin-top: 2px; accent-color: var(--fja-brand); }
.fja-field--check label { font-weight: 400; font-size: .92rem; }
.fja-fieldset { border: 1px solid var(--fja-line); border-radius: 12px; padding: 14px 16px; margin: 0; }
.fja-checks { display: flex; flex-wrap: wrap; gap: 8px; max-height: 220px; overflow-y: auto; }
.fja-checks label { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border: 1px solid var(--fja-line); border-radius: 999px; font-size: .9rem; cursor: pointer; background: var(--fja-paper); color: var(--fja-text); }
.fja-checks input { accent-color: var(--fja-brand); }
.fja-help { font-size: .85rem; color: var(--fja-muted); margin: 0 !important; }
.fja-alert { display: flex; gap: 10px; align-items: flex-start; padding: 14px 16px; border-radius: 12px; margin: 0 0 6px; font-size: .95rem; }
.fja-alert .fja-ico { margin-top: .2em; }
.fja-alert--error { background: var(--fja-err-bg); color: var(--fja-err); }
.fja-alert--warn { background: var(--fja-warn-bg); color: var(--fja-warn); margin-top: 24px; }
.fja-alert--warn a { color: var(--fja-warn) !important; font-weight: 600; }
.fja-thanks { display: grid; justify-items: center; text-align: center; gap: 8px; max-width: 640px; margin: 0 auto; }
.fja-thanks > .fja-ico { width: 56px; height: 56px; color: var(--fja-open); }
.fja-ref strong { font-family: ui-monospace, monospace; letter-spacing: .04em; }

/* ------------------------------------------------------------------ search page */
body.fja-site .et_pb_section.fja-search-sec, .fja-search-sec { padding-top: clamp(28px, 4vw, 44px); background: var(--fja-bg); }
.fja-search { display: grid; grid-template-columns: 290px minmax(0, 1fr); gap: 28px; align-items: start; }
.fja-search__form { display: contents; }
.fja-search__q { grid-column: 1 / -1; position: relative; display: flex; gap: 10px; align-items: center; background: var(--fja-paper); border: 1.5px solid var(--fja-line); border-radius: 16px; padding: 8px 8px 8px 16px; box-shadow: var(--fja-shadow); }
.fja-search__q > .fja-ico { color: var(--fja-muted); }
.fja-search__q input { flex: 1; min-width: 0; border: 0 !important; background: transparent !important; font: 500 1.05rem var(--fja-font) !important; padding: 10px 4px !important; color: var(--fja-text) !important; }
.fja-search__q input:focus { outline: none; }
.fja-search__q:focus-within { border-color: var(--fja-brand); }
.fja-search__filters { position: sticky; top: 100px; display: grid; gap: 14px; padding: 18px; background: var(--fja-paper); border: 1px solid var(--fja-line); border-radius: var(--fja-radius); }
.fja-filter { display: grid; gap: 6px; }
.fja-filter--check { grid-template-columns: auto 1fr; align-items: center; gap: 10px; }
.fja-filter--check input { width: 20px; height: 20px; accent-color: var(--fja-brand); }
.fja-search__toggle { display: none !important; }
.fja-results { min-width: 0; }
.fja-results__bar { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 14px; flex-wrap: wrap; }
.fja-results__count { margin: 0 !important; color: var(--fja-muted); }
.fja-results__count strong { color: var(--fja-ink); font: 700 1.15rem var(--fja-font-head); font-variant-numeric: tabular-nums; }
.fja-results.is-loading [data-fja-results] { opacity: .45; transition: opacity .15s; }
.fja-empty { text-align: center; padding: 40px 20px; background: var(--fja-paper); border: 1px dashed var(--fja-line); border-radius: var(--fja-radius); }
.fja-empty > .fja-ico { width: 40px; height: 40px; color: var(--fja-muted); }
.fja-pager { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin-top: 22px; }
.fja-pager a, .fja-pager__gap { min-width: 42px; height: 42px; display: grid; place-items: center; border-radius: 10px; border: 1px solid var(--fja-line); background: var(--fja-paper); color: var(--fja-text) !important; text-decoration: none; font-variant-numeric: tabular-nums; }
.fja-pager a.is-current { background: var(--fja-ink); color: #fff !important; border-color: var(--fja-ink); }
.fja-pager__gap { border: 0; background: none; }
@media (max-width: 900px) {
	.fja-search { grid-template-columns: 1fr; }
	.fja-search__toggle { display: inline-flex !important; justify-self: start; }
	.fja-search__filters { position: static; display: none; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.fja-search.filters-open .fja-search__filters { display: grid; }
	.fja-filter--check { grid-column: 1 / -1; }
}
@media (max-width: 480px) { .fja-search__filters { grid-template-columns: 1fr; } .fja-search__q .fja-btn { padding-inline: 14px !important; } }

/* ------------------------------------------------------------------ job page */
.fja-hero--job { padding-bottom: clamp(32px, 5vw, 52px) !important; }
.fja-jobhead { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 22px; align-items: start; }
.fja-jobhead__icon { width: 64px; height: 64px; border-radius: 18px; background: var(--fja-accent); color: var(--fja-ink); display: grid; place-items: center; }
.fja-jobhead__icon .fja-ico { width: 32px; height: 32px; }
.fja-jobhead h1 { font-size: clamp(1.6rem, 3.2vw, 2.4rem) !important; margin: 8px 0 10px !important; max-width: 30ch; }
.fja-jobhead__status { display: flex; gap: 8px; flex-wrap: wrap; margin: 0 !important; }
.fja-jobhead__meta { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 0 0 10px !important; color: var(--fja-on-dark-muted); }
.fja-jobhead__meta span { display: inline-flex; gap: 6px; align-items: center; }
.fja-jobhead__salary { display: inline-flex; gap: 8px; align-items: center; margin: 0 !important; padding: 8px 14px; border-radius: 10px; background: rgba(255, 255, 255, .08); color: #fff !important; font-weight: 600; font-size: 1.05rem; }
.fja-jobhead__actions { display: grid; gap: 10px; min-width: 210px; }
@media (max-width: 900px) { .fja-jobhead { grid-template-columns: auto minmax(0, 1fr); } .fja-jobhead__actions { grid-column: 1 / -1; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); } }
@media (max-width: 520px) { .fja-jobhead__icon { width: 48px; height: 48px; border-radius: 14px; } .fja-jobhead__icon .fja-ico { width: 24px; height: 24px; } }
.fja-joblayout { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 36px; align-items: start; }
.fja-joblayout__side { position: sticky; top: 96px; display: grid; gap: 18px; }
@media (max-width: 980px) { .fja-joblayout { grid-template-columns: 1fr; } .fja-joblayout__side { position: static; } }
.fja-facts { width: 100%; border-collapse: separate; border-spacing: 0; border: 1px solid var(--fja-line); border-radius: 12px; overflow: hidden; }
.fja-facts th, .fja-facts td { padding: 12px 16px; border-bottom: 1px solid var(--fja-line); text-align: left; vertical-align: top; }
.fja-facts tr:last-child th, .fja-facts tr:last-child td { border-bottom: 0; }
.fja-facts th { width: 36%; background: var(--fja-bg); font-weight: 600; color: var(--fja-muted); font-size: .92rem; }
.fja-jobbody { margin-bottom: 1.4em; }
.fja-applycard, .fja-alertcard { padding: 22px; }
.fja-applycard h2, .fja-alertcard h2 { font-size: 1.25rem !important; display: flex; gap: 8px; align-items: center; }
.fja-applycard { box-shadow: var(--fja-shadow); border-top: 4px solid var(--fja-accent); }
.fja-note { display: flex; gap: 10px; padding: 12px 14px; background: var(--fja-bg); border-radius: 10px; color: var(--fja-muted); font-size: .92rem; }
.fja-gone { padding: 60px 0; text-align: center; }

/* ------------------------------------------------------------------ bands */
body.fja-site .et_pb_section.fja-alert-band, .fja-alert-band { background: linear-gradient(120deg, var(--fja-ink) 0%, var(--fja-ink-2) 60%, #23408a 100%); }
.fja-alert-band .fja-form { background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .14); border-radius: var(--fja-radius); padding: 20px; }
.fja-split { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; }
@media (max-width: 900px) { .fja-split { grid-template-columns: 1fr; } }
body.fja-site .et_pb_section.fja-cta, .fja-cta { text-align: center; background: var(--fja-ink); background-image: radial-gradient(700px 300px at 50% 120%, rgba(255, 182, 39, .22), transparent 70%); }
.fja-cta h2 { color: #fff !important; }
.fja-cta p { margin-inline: auto; max-width: 56ch; }
body.fja-site .fja-cta .et_pb_column { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
body.fja-site .fja-cta .et_pb_text { width: 100%; }
.fja-steps .fja-blurb .et_pb_module_header { font-size: 1.2rem !important; }

/* ------------------------------------------------------------------ article (blog posts) */
.fja-article-meta { display: flex; flex-wrap: wrap; gap: 6px 18px; color: var(--fja-on-dark-muted); font-size: .92rem; margin: 6px 0 0 !important; }
.fja-article-meta span { display: inline-flex; gap: 6px; align-items: center; }
body.fja-site .fja-featured img { border-radius: var(--fja-radius); width: 100%; max-height: 460px; object-fit: cover; box-shadow: var(--fja-shadow); }
body.fja-site .fja-featured { margin-top: -40px !important; position: relative; z-index: 2; }
.fja-article .fja-prose { font-size: 1.06rem; }
.fja-article .fja-prose h2 { font-size: 1.5rem !important; }

/* ------------------------------------------------------------------ footer + mobile bar */
.fja-footer { padding: 64px 0 24px; font-size: .95rem; }
.fja-footer__top { display: grid; grid-template-columns: 1.5fr repeat(4, minmax(0, 1fr)); gap: 32px; }
.fja-footer h2 { font: 600 .82rem var(--fja-font-head) !important; text-transform: uppercase; letter-spacing: .08em; color: var(--fja-accent) !important; margin: 0 0 14px !important; }
.fja-footer ul { list-style: none; margin: 0 0 22px; padding: 0; display: grid; gap: 8px; }
.fja-footer a { color: var(--fja-on-dark) !important; text-decoration: none; }
.fja-footer a:hover { color: var(--fja-accent) !important; text-decoration: underline; }
.fja-footer p { color: var(--fja-on-dark-muted) !important; }
.fja-footer__brand p { max-width: 36ch; margin-top: 16px; }
.fja-footer__safe { display: flex; gap: 8px; align-items: flex-start; padding: 12px 14px; border-radius: 12px; background: rgba(255, 255, 255, .06); }
.fja-footer__safe .fja-ico { color: var(--fja-accent); margin-top: .15em; }
.fja-footer .fja-btn--light { color: var(--fja-ink) !important; }
.fja-footer__bottom { margin-top: 28px; padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, .12); display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; font-size: .88rem; }
.fja-footer__bottom p { margin: 0; }
.fja-footer__legal { display: flex; flex-wrap: wrap; gap: 6px 18px; }
@media (max-width: 1080px) { .fja-footer__top { grid-template-columns: repeat(3, minmax(0, 1fr)); } .fja-footer__brand { grid-column: 1 / -1; } }
@media (max-width: 600px) { .fja-footer__top { grid-template-columns: repeat(2, minmax(0, 1fr)); } .fja-footer__col:last-child { grid-column: 1 / -1; } }
.fja-mbar { display: none; }
@media (max-width: 760px) {
	.fja-mbar { display: grid; grid-template-columns: repeat(3, 1fr); position: fixed; left: 0; right: 0; bottom: 0; z-index: 800; background: var(--fja-paper); border-top: 1px solid var(--fja-line); box-shadow: 0 -8px 24px -12px rgba(11, 26, 51, .25); padding-bottom: env(safe-area-inset-bottom, 0); }
	.fja-mbar a { display: grid; justify-items: center; gap: 2px; padding: 9px 4px; color: var(--fja-ink) !important; text-decoration: none; font-size: .78rem; font-weight: 600; }
	.fja-mbar a:first-child { background: var(--fja-accent); color: var(--fja-accent-ink) !important; }
	.fja-mbar .fja-ico { width: 22px; height: 22px; }
	body.fja-site { padding-bottom: 64px; }
}

@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; } }
@media print { .fja-header, .fja-topbar, .fja-footer, .fja-mbar, .fja-joblayout__side { display: none !important; } }

/* ------------------------------------------------------------------ Divi default overrides found in testing */
body.fja-site { margin: 0; }
.fja-dark .fja-searchbox label, .fja-searchbox label { color: var(--fja-muted) !important; }
.fja-tile { align-content: center; }
body.fja-site .et_pb_button.fja-btn, body.fja-site a.fja-btn { line-height: 1.2 !important; }
body.fja-site .fja-btn.fja-btn--sm, body.fja-site .et_pb_button.fja-btn--sm { min-height: 38px; padding: 7px 15px !important; font-size: .92rem !important; }
body.fja-site .fja-blurb .et_pb_module_header, body.fja-site .fja-blurb .et_pb_module_header a { color: var(--fja-ink) !important; }
body.fja-site .fja-blurb .et_pb_blurb_description, body.fja-site .fja-blurb .et_pb_blurb_description p { color: var(--fja-muted) !important; }
.fja-form *, .fja-searchbox *, .fja-search *, .fja-card, .fja-tile, .fja-note-card { box-sizing: border-box; }
.fja-joblayout__side .fja-grid2 { grid-template-columns: 1fr; }
body.fja-site a.fja-btn--light, body.fja-site button.fja-btn--light { background: var(--fja-paper) !important; color: var(--fja-ink) !important; box-shadow: none; }
body.fja-site a.fja-btn--light:hover { background: #e9eef8 !important; }
body.fja-site a.fja-btn--ghost, body.fja-site button.fja-btn--ghost { background: transparent !important; color: var(--fja-ink) !important; border-color: var(--fja-line) !important; box-shadow: none; }
body.fja-site .fja-dark a.fja-btn--ghost, body.fja-site .fja-dark button.fja-btn--ghost { color: var(--fja-on-dark) !important; border-color: rgba(255,255,255,.35) !important; }
body.fja-site button.fja-btn--onDark, body.fja-site a.fja-btn--onDark { background: transparent !important; color: var(--fja-on-dark) !important; border-color: rgba(255,255,255,.35) !important; box-shadow: none; }
.fja-dark .fja-field label span, .fja-dark .fja-field--check label span { color: #ffb4ac !important; }
body.fja-site h2.fja-h3 { font-size: 1.18rem; margin: 0 0 .45em; }
.fja-btn { white-space: nowrap; }
body.fja-site .et_pb_text, body.fja-site .fja-prose, body.fja-site .et_pb_text_inner { color: var(--fja-text); }
body.fja-site .fja-article .et_pb_column_1_3 { position: sticky; top: 96px; align-self: flex-start; }
body.fja-site .fja-article .et_pb_column_1_3 .et_pb_code.fja-sidebox { background: var(--fja-bg); border: 1px solid var(--fja-line); border-radius: var(--fja-radius); padding: 18px; }
@media (max-width: 980px) { body.fja-site .fja-article .et_pb_column_1_3 { position: static; } }
body.fja-site .fja-legal .et_pb_column_1_3 { position: sticky; top: 96px; align-self: flex-start; }
@media (max-width: 980px) { body.fja-site .fja-legal .et_pb_column_1_3 { position: static; order: -1; } }
.fja-legal .fja-prose h2 { font-size: 1.3rem !important; margin-top: 1.8em; }
.fja-grievance { margin: 0 0 1em; }
