/* FD Capital Hero
   Light hero matched to the home page: two-tone title, pill buttons and a
   photograph bleeding off the right edge. Navy #071C3C, blue #0094F4. */

:root {
	--fdx-navy: #071c3c;
	--fdx-panel: #0e2a54;
	--fdx-blue: #0094f4;
	--fdx-ink: #1f2a3a;
	--fdx-sub: #4a5670;
	--fdx-line: #e1e7f0;
}

.fdx-hero {
	position: relative;
	background: #fff;
	background-image: linear-gradient(100deg, #eef4fa 0%, #f5f8fc 55%, #fff 100%);
	border-bottom: 1px solid #e6eaf2;
	color: var(--fdx-ink);
	padding: 58px 0 68px;
	/* The gap below belongs to the hero: page content is not always wrapped
	   in .fdx-page, so hanging it off that left ordinary pages flush. */
	margin-bottom: 44px;
	overflow: hidden;
}

.fdx-hero__wrap {
	position: relative;
	z-index: 2;
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 24px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 48px;
}

.fdx-hero__text {
	flex: 1 1 520px;
	min-width: 0;
}

.fdx-hero.has-img .fdx-hero__text {
	flex: 1 1 54%;
}

/* The photograph is a contained, rounded card in the right-hand column,
   as on the other group sites - not a full-bleed image faded into the page. */
.fdx-hero__media {
	flex: 1 1 38%;
	min-width: 0;
}

.fdx-hero__media img {
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	object-position: center;
	display: block;
	border-radius: 14px;
	box-shadow: 0 10px 30px rgba(7, 28, 60, .10);
}

.fdx-crumb {
	font-size: 14px;
	color: #7c8aa0;
	margin: 0 0 16px;
}

.fdx-crumb a {
	color: #7c8aa0;
	text-decoration: none;
}

.fdx-crumb a:hover,
.fdx-crumb a:focus {
	color: var(--fdx-blue);
	text-decoration: underline;
}

.fdx-crumb .fdx-sep {
	margin: 0 7px;
	color: #c3cdda;
}

.fdx-hero__title {
	margin: 0 0 20px;
	font-size: 46px;
	line-height: 1.16;
	font-weight: 600;
	color: var(--fdx-navy);
	letter-spacing: -.5px;
}

/* Second half of the title, picked out in blue as on the home page. */
.fdx-hero__title .fdx-hl {
	color: var(--fdx-blue);
}

.fdx-hero__intro {
	margin: 0 0 26px;
	font-size: 17px;
	line-height: 1.7;
	color: var(--fdx-sub);
	max-width: 620px;
}

.fdx-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin: 0 0 20px;
}

.fdx-btn {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 15px 28px;
	border-radius: 6px;
	font-weight: 600;
	font-size: 16px;
	text-decoration: none;
	line-height: 1.2;
	transition: background-color .18s ease, box-shadow .18s ease;
}

.fdx-btn:hover,
.fdx-btn:focus {
	text-decoration: none;
}

.fdx-btn--primary {
	background: #0b1f44;
	color: #fff;
}

.fdx-btn--primary:hover,
.fdx-btn--primary:focus {
	background: #071c3c;
	color: #fff;
}

.fdx-btn--ghost {
	background: var(--fdx-blue);
	color: #fff;
}

.fdx-btn--ghost:hover,
.fdx-btn--ghost:focus {
	background: #0079c9;
	color: #fff;
}

.fdx-btn--sm {
	padding: 10px 18px;
	font-size: 15px;
}

.fdx-btn svg {
	flex: none;
}

.fdx-hero__trust {
	margin: 0;
	font-size: 14.5px;
	line-height: 1.6;
	color: #7c8aa0;
	max-width: 520px;
}

@media (max-width: 1199px) {
	.fdx-hero__title {
		font-size: 40px;
	}

	.fdx-hero__title {
		letter-spacing: -.4px;
	}
}

@media (max-width: 991px) {
	.fdx-hero {
		padding: 44px 0 46px;
	}

	.fdx-hero__title {
		font-size: 34px;
	}

	.fdx-hero__wrap {
		gap: 28px;
	}

	/* Not enough width for text and photograph side by side. */
	.fdx-hero__media {
		display: none;
	}
}

@media (max-width: 767px) {
	.fdx-hero {
		padding: 34px 0 36px;
		margin-bottom: 28px;
	}

	.fdx-hero__title {
		font-size: 28px;
		letter-spacing: -.2px;
	}

	.fdx-hero__intro {
		font-size: 16px;
	}

	.fdx-hero__actions {
		gap: 10px;
	}

	.fdx-btn {
		width: 100%;
		justify-content: center;
		padding: 14px 20px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.fdx-btn {
		transition: none;
	}
}

/* Listing heading and count line */
.fdx-list__head {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 8px 18px;
	margin: 30px 0 18px;
}

.fdx-list__heading {
	margin: 0;
	font-size: 24px;
	font-weight: 700;
	color: var(--fdx-navy);
}

.fdx-list__count {
	margin: 0;
	font-size: 14px;
	color: var(--fdx-sub);
}

.fdx-card__more {
	font-weight: 700;
	color: var(--fdx-blue);
	text-decoration: none;
}

.fdx-card__more:hover {
	text-decoration: underline;
}

/* [fdx_network] - group network panel */
.fdx-net {
	background: #eef4fa;
	padding: 52px 0;
}

.fdx-net-wrap {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 24px;
}

.fdx-net-head {
	text-align: center;
	max-width: 840px;
	margin: 0 auto 36px;
}

.fdx-net-eyebrow {
	margin: 0 0 12px;
	font-size: 12px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--fdx-blue);
	font-weight: 700;
}

.fdx-net-heading {
	margin: 0 0 18px;
	color: var(--fdx-navy);
	font-weight: 700;
}

.fdx-net-intro {
	margin: 0;
	color: var(--fdx-sub);
	line-height: 1.7;
}

.fdx-net-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 22px;
	align-items: stretch;
}

.fdx-net-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	height: 100%;
	background: #fff;
	border: 1px solid var(--fdx-line);
	border-radius: 16px;
	padding: 24px;
}

.fdx-net-logo {
	display: block;
	width: auto;
	max-width: 100%;
	height: 32px;
	max-height: 32px;
	object-fit: contain;
	object-position: left center;
	margin: 0 0 18px;
	box-shadow: none;
	border-radius: 0;
	background: none;
}

.fdx-net-pill {
	display: inline-block;
	margin: 0 0 14px;
	padding: 5px 11px;
	background: #e8f1fb;
	border-radius: 4px;
	font-size: 11px;
	letter-spacing: 1.3px;
	text-transform: uppercase;
	color: #0a6fd6;
	font-weight: 700;
}

.fdx-net-title {
	display: block;
	width: 100%;
	font-size: 20px;
	font-weight: 700;
	color: var(--fdx-navy);
	line-height: 1.3;
}

.fdx-net-grid {
	align-items: stretch;
}

.fdx-net-text {
	display: block;
	margin: 16px 0 20px;
	color: var(--fdx-sub);
	font-size: 15px;
	line-height: 1.6;
}

.fdx-net-card a {
	display: block;
	width: 100%;
	margin-top: auto;
	padding-top: 16px;
	border-top: 1px solid var(--fdx-line);
	color: var(--fdx-blue);
	font-weight: 700;
	text-decoration: none;
	font-size: 15px;
}

.fdx-net-card a:hover,
.fdx-net-card a:focus {
	text-decoration: underline;
}

/* Hairline under the element it sits on, as on the other group sites. */
.fdx-net-rule {
	padding-bottom: 14px;
	border-bottom: 1px solid var(--fdx-line);
	margin-bottom: 0;
}

.fdx-net-card a.fdx-net-rule {
	margin-bottom: 14px;
}

.fdx-net-text + a.fdx-net-rule {
	margin-top: auto;
}

.fdx-net-foot {
	text-align: center;
	margin: 26px 0 0;
	color: var(--fdx-sub);
	font-size: 15px;
}

@media (max-width: 991px) {
	.fdx-net-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 575px) {
	.fdx-net {
		padding: 40px 0 44px;
	}

	.fdx-net-grid {
		grid-template-columns: 1fr;
	}
}

/* Optional label above the hero title */
.fdx-hero__eyebrow {
	margin: 0 0 10px;
	font-size: 12px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--fdx-blue);
	font-weight: 700;
}

/* Page container: matches the hero wrap so pasted page content lines up with
   the hero above it instead of running to the full width of the theme row. */
.fdx-page {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 24px;
}

.fdx-page > h2:first-child {
	margin-top: 0;
}

/* The network panel is full-bleed, so it breaks out of the page container. */
.fdx-page .fdx-net {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

/* ---------------------------------------------------------------------------
   Listings: search, filter chips, cards and pagination.
   Buttons carry explicit colours because the theme styles bare <button>
   elements, which would otherwise show through on the chips.
   ------------------------------------------------------------------------ */
.fdx-list {
	margin: 0 0 10px;
}

.fdx-list__controls {
	margin: 0 0 8px;
}

.fdx-list__search {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	margin: 0 0 18px;
}

.fdx-list__search input[type="search"] {
	flex: 1 1 320px;
	min-width: 0;
	height: 48px;
	padding: 0 16px;
	border: 1px solid var(--fdx-line);
	border-radius: 6px;
	background: #fff;
	font-size: 16px;
	color: var(--fdx-ink);
}

.fdx-list__search input[type="search"]:focus {
	outline: 2px solid rgba(0, 148, 244, .35);
	outline-offset: 1px;
	border-color: var(--fdx-blue);
}

.fdx-list__search button[type="submit"] {
	flex: none;
	height: 48px;
	padding: 0 26px;
	border: 0;
	border-radius: 6px;
	background: #0b1f44;
	color: #fff;
	font-weight: 600;
	font-size: 15px;
	cursor: pointer;
}

.fdx-list__search button[type="submit"]:hover,
.fdx-list__search button[type="submit"]:focus {
	background: #071c3c;
	color: #fff;
}

.fdx-list__clear {
	color: var(--fdx-sub);
	font-size: 15px;
	text-decoration: underline;
}

.fdx-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin: 0 0 6px;
}

/* Reset the theme's button skin before applying the chip skin. */
.fdx-chips .fdx-chip,
.fdx-chips button.fdx-chip {
	appearance: none;
	-webkit-appearance: none;
	display: inline-block;
	margin: 0;
	padding: 9px 16px;
	border: 1px solid var(--fdx-line);
	border-radius: 999px;
	background: #fff;
	background-image: none;
	box-shadow: none;
	text-shadow: none;
	color: #4a5361;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0;
	text-transform: none;
	cursor: pointer;
	transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}

.fdx-chips .fdx-chip:hover,
.fdx-chips .fdx-chip:focus {
	background: #f0f6fd;
	border-color: #bcd9f5;
	color: #0a6fd6;
}

.fdx-chips .fdx-chip.is-on,
.fdx-chips button.fdx-chip.is-on {
	background: #0b1f44;
	border-color: #0b1f44;
	color: #fff;
}

/* Cards */
.fdx-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
	margin: 0 0 30px;
}

.fdx-grid--jobs {
	grid-template-columns: repeat(3, 1fr);
}

.fdx-card {
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid var(--fdx-line);
	border-radius: 16px;
	overflow: hidden;
	transition: box-shadow .18s ease, border-color .18s ease;
}

.fdx-card:hover {
	border-color: #cfe0f3;
	box-shadow: 0 6px 22px rgba(7, 28, 60, .08);
}

.fdx-card[hidden] {
	display: none;
}

.fdx-card__img {
	display: block;
	line-height: 0;
}

.fdx-card__img img {
	width: 100%;
	height: 180px;
	object-fit: cover;
	display: block;
}

.fdx-card__body {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	padding: 22px;
}

.fdx-card__eyebrow {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	align-items: center;
	margin: 0 0 12px;
}

.fdx-list .fdx-card .fdx-card__title,
.fdx-card .fdx-card__title {
	margin: 0 0 10px;
	font-size: 19px !important;
	line-height: 1.35 !important;
	font-weight: 700 !important;
	letter-spacing: 0;
	text-transform: none;
}

.fdx-card__title a {
	color: var(--fdx-navy);
	text-decoration: none;
}

.fdx-card__title a:hover,
.fdx-card__title a:focus {
	color: var(--fdx-blue);
}

.fdx-card__text {
	flex: 0 0 auto;
	margin: 0 0 18px;
	color: var(--fdx-sub);
	font-size: 15px;
	line-height: 1.6;
}

.fdx-card__foot {
	display: flex;
	flex-wrap: wrap;
	/* Sit the link on the bottom line, so it does not centre against a
	   shorter column on cards that carry no closing date. */
	align-items: flex-end;
	justify-content: space-between;
	gap: 10px 16px;
	margin-top: auto;
	padding: 16px 0 0;
	border-top: 1px solid var(--fdx-line);
}

.fdx-card__meta {
	margin: 0 0 10px;
	padding: 0;
	font-size: 13.5px;
	line-height: 1.5;
	color: #7c8aa0;
}

.fdx-card__foot .fdx-card__meta {
	margin: 0;
}

.fdx-card__foot .fdx-card__more {
	margin: 0;
	white-space: nowrap;
}

.fdx-card__meta span {
	margin: 0 6px;
}

.fdx-card__go {
	margin: auto 0 0;
}

/* Job tags */
.fdx-tag {
	display: inline-block;
	padding: 5px 12px;
	border-radius: 999px;
	background: #eaf1f8;
	color: #0f5386;
	font-size: 11px;
	letter-spacing: 1.1px;
	font-weight: 700;
	text-transform: uppercase;
	white-space: nowrap;
}

.fdx-tag--new {
	background: #dff3e4;
	color: #1b7a3f;
}

.fdx-list__empty {
	padding: 26px;
	background: #f6f9fc;
	border-radius: 8px;
	color: var(--fdx-sub);
}

/* Pagination.
   paginate_links( type => list ) puts .page-numbers on the <ul> as well as on
   each link, so the list itself must be reset before the links are styled or
   it picks up the box styling and loses its flex row. */
.fdx-pager {
	margin: 10px 0 0;
}

.fdx-pager ul,
.fdx-pager ul.page-numbers {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	min-width: 0;
}

.fdx-pager li {
	margin: 0;
	padding: 0;
	list-style: none;
	border: 0;
	background: none;
}

.fdx-pager li .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	height: 44px;
	padding: 0 14px;
	border: 1px solid var(--fdx-line);
	border-radius: 8px;
	background: #fff;
	color: #4a5670;
	font-weight: 600;
	font-size: 15px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}

.fdx-pager li a.page-numbers:hover,
.fdx-pager li a.page-numbers:focus {
	border-color: #bcd9f5;
	background: #f4f8fd;
	color: #0a6fd6;
}

.fdx-pager li .page-numbers.current {
	background: #0b1f44;
	border-color: #0b1f44;
	color: #fff;
}

.fdx-pager li .page-numbers.dots {
	border-color: transparent;
	background: none;
	min-width: 24px;
	padding: 0 4px;
}

@media (max-width: 991px) {
	.fdx-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 575px) {
	.fdx-grid {
		grid-template-columns: 1fr;
	}

	.fdx-list__search button[type="submit"] {
		width: 100%;
	}
}

/* Single job: candidate registration panel */
.fdx-reg {
	display: flex;
	flex-wrap: wrap;
	gap: 36px;
	align-items: center;
	margin: 44px 0 0;
	padding: 44px;
	border-radius: 16px;
	background: var(--fdx-navy);
	color: #fff;
}

.fdx-reg__text {
	flex: 1 1 420px;
	min-width: 0;
}

.fdx-reg__eyebrow {
	margin: 0 0 12px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 1.6px;
	text-transform: uppercase;
	color: #8fc5ee;
}

.fdx-reg__title {
	margin: 0 0 14px;
	color: #fff;
	font-size: 34px;
	line-height: 1.2;
	font-weight: 700;
}

.fdx-reg__intro {
	margin: 0 0 22px;
	color: #c6d3e3;
	line-height: 1.7;
}

.fdx-reg__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin: 0;
}

.fdx-btn--light {
	background: #fff;
	color: var(--fdx-navy);
}

.fdx-btn--light:hover,
.fdx-btn--light:focus {
	background: #eef4fa;
	color: var(--fdx-navy);
}

.fdx-reg__list {
	flex: 1 1 330px;
	min-width: 0;
	list-style: none;
	margin: 0;
	padding: 26px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 14px;
}

.fdx-reg__list li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 0 0 16px;
	padding: 0;
	list-style: none;
	color: #e4ecf6;
	line-height: 1.55;
}

.fdx-reg__list li:last-child {
	margin-bottom: 0;
}

.fdx-reg__tick {
	flex: none;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--fdx-blue);
	color: #fff;
	font-size: 14px;
	line-height: 24px;
	text-align: center;
	font-weight: 700;
}

@media (max-width: 767px) {
	.fdx-reg {
		padding: 30px 24px;
		gap: 26px;
	}

	.fdx-reg__title {
		font-size: 26px;
	}
}

/* Single job: panels below the body */
.fdx-more {
	margin: 44px 0 0;
}

.fdx-more .fdx-list__count {
	margin: 0;
}

.fdx-chips--links .fdx-chip {
	text-decoration: none;
}

.fdx-hire {
	margin: 36px 0 0;
	padding: 26px 28px;
	background: #f4f8fd;
	border: 1px solid var(--fdx-line);
	border-radius: 16px;
}

.fdx-hire__title {
	margin: 0 0 10px;
	font-size: 19px;
	font-weight: 700;
	color: var(--fdx-navy);
}

.fdx-hire__text {
	margin: 0 0 14px;
	color: var(--fdx-sub);
	font-size: 15px;
	line-height: 1.6;
}

.fdx-hire__go {
	margin: 0;
}

/* Polish: consistent motion and focus across the plugin's components */
.fdx-card a,
.fdx-net-card a,
.fdx-chip,
.fdx-btn,
.fdx-card__more {
	transition: color .15s ease, background-color .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.fdx-card,
.fdx-net-card {
	transition: box-shadow .2s ease, border-color .2s ease, transform .2s ease;
}

.fdx-net-card:hover {
	border-color: #cfe0f3;
	box-shadow: 0 6px 22px rgba(7, 28, 60, .08);
}

.fdx-page a:focus-visible,
.fdx-hero a:focus-visible,
.fdx-list a:focus-visible,
.fdx-chip:focus-visible,
.fdx-btn:focus-visible {
	outline: 2px solid #0094f4;
	outline-offset: 2px;
	border-radius: 4px;
}

.fdx-card__more {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--fdx-blue);
	font-weight: 700;
	text-decoration: none;
}

.fdx-card__more:hover,
.fdx-card__more:focus {
	text-decoration: underline;
}

@media (prefers-reduced-motion: reduce) {
	.fdx-card,
	.fdx-net-card,
	.fdx-card a,
	.fdx-chip,
	.fdx-btn,
	.fdx-card__more {
		transition: none;
	}
}

/* Job page right-hand column, moved into the theme's .job-side by fdx.js */
.fdx-jobside {
	margin: 24px 0 0;
}

.fdx-jobside[hidden] {
	display: none;
}

.fdx-side-card {
	margin: 0 0 18px;
	padding: 22px;
	background: #fff;
	border: 1px solid var(--fdx-line);
	border-radius: 12px;
}

.fdx-side-card--tint {
	background: #eef4fa;
	border-color: #dbe6f2;
}

.fdx-side-title {
	margin: 0 0 12px;
	font-size: 17px;
	font-weight: 600;
	color: var(--fdx-navy);
	line-height: 1.35;
}

.fdx-side-text {
	margin: 0 0 14px;
	color: var(--fdx-sub);
	font-size: 15px;
	line-height: 1.6;
}

.fdx-side-go {
	margin: 0;
}

.fdx-side-link {
	margin: 0;
	padding: 12px 0;
	border-bottom: 1px solid var(--fdx-line);
}

.fdx-side-link:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.fdx-side-link a {
	color: var(--fdx-blue);
	font-weight: 700;
	text-decoration: none;
	font-size: 15px;
	line-height: 1.45;
}

.fdx-side-link a:hover,
.fdx-side-link a:focus {
	text-decoration: underline;
}

.fdx-jobside .fdx-chips {
	gap: 8px;
}

.fdx-jobside .fdx-chip {
	padding: 7px 13px;
	font-size: 13.5px;
}

/* The theme gives .job-side a grey panel; our cards sit outside it. */
.job-post .job-side .fdx-jobside {
	margin-top: 22px;
}

/* Job status: live roles carry a green edge, closed ones are muted */
.fdx-card--job {
	border-left-width: 1px;
}

.fdx-card--job.fdx-card--live {
	border-left: 4px solid #35b56a;
}

.fdx-card--job.fdx-card--closed {
	border-left: 4px solid #d7dee8;
}


.fdx-card__footl {
	display: flex;
	flex-direction: column;
	gap: 8px;
	align-items: flex-start;
}

.fdx-close {
	display: inline-block;
	padding: 5px 11px;
	border-radius: 999px;
	background: #eef1f5;
	color: #5a6677;
	font-size: 12.5px;
	font-weight: 600;
	white-space: nowrap;
}

.fdx-close.is-open {
	background: #e4f6ea;
	color: #1b7a3f;
}

/* Live roles / All roles toggle */
.fdx-status {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 0 14px;
}

.fdx-status__opt {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 15px;
	border: 1px solid var(--fdx-line);
	border-radius: 999px;
	background: #fff;
	color: #4a5670;
	font-size: 14.5px;
	font-weight: 600;
	text-decoration: none;
	line-height: 1.2;
}

.fdx-status__opt:hover,
.fdx-status__opt:focus {
	border-color: #bcd9f5;
	color: #0a6fd6;
	text-decoration: none;
}

.fdx-status__opt.is-on {
	background: #effaf3;
	border-color: #aee3c3;
	color: #1b7a3f;
}

.fdx-status__opt.is-on .fdx-status__n {
	background: #d8f2e2;
	color: #1b7a3f;
}

.fdx-status__dot {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: #b8c2d0;
	flex: none;
}

.fdx-status__opt.is-on .fdx-status__dot--live {
	background: #35b56a;
}

.fdx-status__n {
	display: inline-block;
	min-width: 22px;
	padding: 2px 7px;
	border-radius: 999px;
	background: #eef1f5;
	color: #5a6677;
	font-size: 12.5px;
	font-weight: 700;
	text-align: center;
}

/* Brief panel, added to pages with no enquiry form of their own */
.fdx-brief {
	background: linear-gradient(135deg, #eef4fa 0%, #f5f9fd 60%, #eef4fa 100%);
	padding: 56px 24px;
	margin: 48px 0 0;
}

.fdx-brief__wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 44px;
	align-items: flex-start;
	max-width: 1280px;
	margin: 0 auto;
}

.fdx-brief__text {
	flex: 1 1 420px;
	min-width: 0;
}

.fdx-brief__eyebrow {
	display: inline-block;
	margin: 0 0 16px;
	padding: 6px 14px;
	border-radius: 999px;
	background: #fff;
	font-size: 11px;
	letter-spacing: 1.4px;
	text-transform: uppercase;
	color: #0a6fd6;
	font-weight: 700;
}

.fdx-brief__title {
	margin: 0 0 14px;
	color: var(--fdx-navy);
	font-size: 38px;
	line-height: 1.15;
	font-weight: 600;
}

.fdx-brief__intro {
	margin: 0 0 24px;
	color: var(--fdx-sub);
	font-size: 17px;
	line-height: 1.7;
	max-width: 520px;
}

.fdx-brief__list {
	list-style: none;
	margin: 0 0 26px;
	padding: 0;
	max-width: 560px;
}

.fdx-brief__list li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 0 0 16px;
	padding: 0;
	list-style: none;
	color: var(--fdx-sub);
	line-height: 1.6;
	font-size: 15.5px;
}

.fdx-brief__list li strong {
	color: var(--fdx-navy);
	font-weight: 700;
}

.fdx-brief__tick {
	flex: none;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #dceaf8;
	color: #0a6fd6;
	font-size: 13px;
	line-height: 24px;
	text-align: center;
	font-weight: 700;
}

.fdx-brief__contacts {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 0;
}

.fdx-brief__pill {
	display: inline-flex;
	align-items: center;
	padding: 12px 20px;
	border-radius: 999px;
	background: #fff;
	border: 1px solid #dde6f1;
	color: var(--fdx-navy);
	font-weight: 600;
	font-size: 15px;
	text-decoration: none;
}

.fdx-brief__pill:hover,
.fdx-brief__pill:focus {
	border-color: #bcd9f5;
	color: #0a6fd6;
	text-decoration: none;
}

.fdx-brief__form {
	flex: 1 1 420px;
	min-width: 0;
	background: #fff;
	border: 1px solid #e6edf6;
	border-radius: 16px;
	padding: 30px;
	box-shadow: 0 10px 30px rgba(7, 28, 60, .06);
}

.fdx-brief__form .wpforms-container,
.fdx-brief__form .wpforms-container-full {
	margin: 0;
}

.fdx-brief__note {
	margin: 14px 0 0;
	text-align: center;
	color: #7c8aa0;
	font-size: 13.5px;
}

@media (max-width: 767px) {
	.fdx-brief {
		padding: 38px 20px;
		margin-top: 34px;
	}

	.fdx-brief__wrap {
		gap: 28px;
	}

	.fdx-brief__title {
		font-size: 28px;
	}

	.fdx-brief__form {
		padding: 22px;
	}
}

/* WPForms inside the brief panel, styled to match the other group sites.
   Scoped to the panel so forms elsewhere on the site are untouched. */
.fdx-brief__form .wpforms-container,
.fdx-brief__form .wpforms-container-full {
	margin: 0 !important;
}

.fdx-brief__form .wpforms-field {
	padding: 0 0 18px !important;
}

.fdx-brief__form .wpforms-field-label,
.fdx-brief__form .wpforms-field-label-inline {
	margin: 0 0 7px !important;
	color: var(--fdx-navy) !important;
	font-size: 14.5px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
}

.fdx-brief__form .wpforms-field-sublabel {
	margin: 5px 0 0 !important;
	color: #8b97a8 !important;
	font-size: 12.5px !important;
	font-weight: 400 !important;
}

.fdx-brief__form .wpforms-required-label {
	color: #d6336c !important;
}

.fdx-brief__form input[type="text"],
.fdx-brief__form input[type="email"],
.fdx-brief__form input[type="tel"],
.fdx-brief__form input[type="url"],
.fdx-brief__form input[type="number"],
.fdx-brief__form select,
.fdx-brief__form textarea,
.fdx-brief__form .choices__inner {
	width: 100% !important;
	max-width: 100% !important;
	padding: 13px 15px !important;
	border: 1px solid #dde5f0 !important;
	border-radius: 10px !important;
	background: #fff !important;
	color: var(--fdx-ink) !important;
	font-size: 15.5px !important;
	line-height: 1.4 !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
}

.fdx-brief__form textarea {
	min-height: 130px !important;
	resize: vertical !important;
}

.fdx-brief__form input:focus,
.fdx-brief__form select:focus,
.fdx-brief__form textarea:focus {
	border-color: var(--fdx-blue) !important;
	outline: 2px solid rgba(0, 148, 244, .18) !important;
	outline-offset: 0 !important;
}

.fdx-brief__form input::placeholder,
.fdx-brief__form textarea::placeholder {
	color: #9aa6b6 !important;
}

/* Hide the number spinner the theme shows on the phone field */
.fdx-brief__form input[type="number"] {
	appearance: textfield;
	-moz-appearance: textfield;
}

.fdx-brief__form input[type="number"]::-webkit-outer-spin-button,
.fdx-brief__form input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.fdx-brief__form .wpforms-submit-container {
	padding: 4px 0 0 !important;
	text-align: left !important;
}

.fdx-brief__form button[type="submit"],
.fdx-brief__form input[type="submit"],
.fdx-brief__form .wpforms-submit,
.fdx-brief__form button.wpforms-submit,
.fdx-brief__form input.wpforms-submit {
	display: block !important;
	width: 100% !important;
	padding: 16px 28px !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: var(--fdx-blue) !important;
	color: #fff !important;
	font-size: 16.5px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	box-shadow: none !important;
	cursor: pointer !important;
}

.fdx-brief__form button[type="submit"]:hover,
.fdx-brief__form input[type="submit"]:hover,
.fdx-brief__form .wpforms-submit:hover {
	background: #0079c9 !important;
}

/* The recaptcha widget is a fixed-width iframe; keep it from forcing the
   column wider than the card. */
.fdx-brief__form .wpforms-recaptcha-container,
.fdx-brief__form .grecaptcha-badge,
.fdx-brief__form .g-recaptcha {
	max-width: 100% !important;
	overflow: hidden !important;
}

.fdx-brief__form .wpforms-recaptcha-container {
	padding: 0 0 18px !important;
}

/* Name field split across two columns, as on the other group sites */
.fdx-brief__form .wpforms-field-name .wpforms-field-row {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 14px !important;
}

.fdx-brief__form .wpforms-field-name .wpforms-field-row-block {
	flex: 1 1 140px !important;
	width: auto !important;
	min-width: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	float: none !important;
}

.fdx-brief__form .choices__list--dropdown .choices__item {
	font-size: 15px;
}

/* The submit button carries a theme class (btn-request-my-callback) that adds
   its own width and offset, and the container holds hidden inputs and a
   spinner image alongside it. Pin the whole lot to the field column. */
.fdx-brief__form .wpforms-submit-container {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 4px 0 0 !important;
	text-align: left !important;
	float: none !important;
}

.fdx-brief__form .wpforms-submit-container > button,
.fdx-brief__form .wpforms-submit-container > input[type="submit"],
.fdx-brief__form .wpforms-submit,
.fdx-brief__form .btn-request-my-callback {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	float: none !important;
	position: static !important;
	left: auto !important;
	right: auto !important;
	transform: none !important;
	text-align: center !important;
}

/* Loading spinner that sits next to the button */
.fdx-brief__form .wpforms-submit-container > img {
	display: none !important;
}

/* Hidden fields must never occupy space in the column */
.fdx-brief__form input[type="hidden"] {
	display: none !important;
}
