/* Scoped listing — matches EK careers “Current Openings” production layout */
.workable-jobs {
	--wj-purple: #4b286d;
	--wj-purple-hover: #3a1f54;
	--wj-text: var(--wp--preset--color--charcoal);
	--wj-muted: var(--wp--preset--color--gray);
	--wj-border: #dddddd;
	--wj-badge-bg: #fafafa;
	box-sizing: border-box;
	font-family: inherit;
	/* Match Crate body (html 62.5% → 1rem = 10px; body uses 1.8rem ≈ 18px). */
	font-size: 1.8rem;
	line-height: 1.5;
	color: var(--wj-text);
	max-width: none;
	margin: 0;
	width: 100%;
}

/*
 * Careers “Current Openings” layout: intro uses img.alignright in the paragraph
 * above this block. As a sibling block, width:100% ignores the float; overflow
 * creates a BFC so the listing stays in the left column beside the image.
 */
.prose .entry-content .workable-jobs {
	width: auto;
	overflow: hidden;
}

.workable-jobs *,
.workable-jobs *::before,
.workable-jobs *::after {
	box-sizing: inherit;
}

/* Kill default list bullets / indent (theme + UA) */
.workable-jobs__list {
	list-style: none;
	list-style-type: none;
	margin: 0;
	padding: 0;
	padding-inline-start: 0;
}

.workable-jobs__item {
	list-style: none;
	margin: 0;
	padding: 1.15rem 0;
	border-bottom: 1px solid var(--wj-border);
	background: transparent;
	border-radius: 0;
	box-shadow: none;
}

/* Deep link (?job=): keep title clear of fixed site header when scrolled into view */
.workable-jobs__item--deeplink {
	scroll-margin-top: 14rem;
}

.workable-jobs__item:first-child {
	padding-top: 0.35rem;
}

.workable-jobs__item:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.workable-jobs__item::marker {
	content: none;
	font-size: 0;
}

.workable-jobs__title-link,
.workable-jobs__title-button {
	font-weight: 700;
	font-size: 1.8rem;
	color: var(--wp--preset--color--purple);
	text-decoration: none;
	text-transform: none;
	display: block;
	margin: 0 0 0.65rem;
	line-height: 1.35;
	text-align: left;
	width: 100%;
}

.workable-jobs__title-button {
	padding: 0;
	border: none;
	background: none;
	font-family: inherit;
	cursor: pointer;
}

.workable-jobs__title-link:hover,
.workable-jobs__title-link:focus,
.workable-jobs__title-button:hover,
.workable-jobs__title-button:focus {
	color: var(--wp--preset--color--purple);
	text-decoration: underline;
}

.workable-jobs__item--open .workable-jobs__title-button {
	color: var(--wp--preset--color--purple);
}

.workable-jobs__item--open .workable-jobs__detail {
	margin-top: 0.65rem;
	padding-top: 0;
	border-top: none;
}

.workable-jobs__detail {
	margin-top: 0.85rem;
	padding-top: 0.85rem;
	border-top: 1px solid var(--wj-border);
}

.workable-jobs__description {
	font-size: 0.95em;
	line-height: 1.5;
	color: var(--wp--preset--color--charcoal);
	font-family: var(--wp--preset--font-family--standard), montserrat, sans-serif;
	/* Contain floated images from Workable HTML so following content (and the form) is not pulled sideways. */
	overflow: auto;
}

.workable-jobs__description img {
	max-width: 100%;
	height: auto;
}

/*
 * Workable job HTML often includes img.alignright / .alignleft.
 * On narrow viewports those floats crush body copy into a thin column (apply page + listing accordion).
 */
@media (max-width: 781px) {
	.workable-jobs__description img.alignright,
	.workable-jobs__description img.alignleft,
	.workable-jobs__description .alignright,
	.workable-jobs__description .alignleft,
	.workable-jobs__description .wp-caption.alignright,
	.workable-jobs__description .wp-caption.alignleft {
		float: none;
		display: block;
		margin-left: auto;
		margin-right: auto;
		max-width: 100%;
	}
}

.workable-jobs__description p,
.workable-jobs__description li,
.workable-jobs__description td,
.workable-jobs__description th {
	color: var(--wp--preset--color--charcoal);
}

.workable-jobs__description p strong,
.workable-jobs__description p b,
.workable-jobs__description li strong,
.workable-jobs__description li b {
	color: var(--wp--preset--color--charcoal);
}

.workable-jobs__description h1,
.workable-jobs__description h2,
.workable-jobs__description h3,
.workable-jobs__description h4,
.workable-jobs__description h5,
.workable-jobs__description h6,
.workable-jobs__description h1 strong,
.workable-jobs__description h2 strong,
.workable-jobs__description h3 strong,
.workable-jobs__description h4 strong,
.workable-jobs__description h5 strong,
.workable-jobs__description h6 strong,
.workable-jobs__description h1 b,
.workable-jobs__description h2 b,
.workable-jobs__description h3 b,
.workable-jobs__description h4 b,
.workable-jobs__description h5 b,
.workable-jobs__description h6 b {
	color: var(--wp--preset--color--purple);
	font-family: var(--wp--preset--font-family--standard), montserrat, sans-serif;
	font-weight: 700;
}

/*
 * Description links (Workable uses <a class="external"><strong>…</strong></a>).
 * (0,6,1)+ beats theme .content a:not(...) (0,4,1). One underline only: no border-bottom.
 */
.content .entry-content .workable-jobs .workable-jobs__detail .workable-jobs__description a,
.content .entry-content .workable-jobs .workable-jobs__detail .workable-jobs__description a.external,
main:not(.homepage-container) .entry-content .workable-jobs .workable-jobs__detail .workable-jobs__description a,
main:not(.homepage-container) .entry-content .workable-jobs .workable-jobs__detail .workable-jobs__description a.external {
	color: var(--wp--preset--color--purple);
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 0.12em;
	text-decoration-thickness: 1px;
	border-bottom: none;
	box-shadow: none;
	padding-left: 0;
	padding-right: 0;
}

.content .entry-content .workable-jobs .workable-jobs__detail .workable-jobs__description a strong,
.content .entry-content .workable-jobs .workable-jobs__detail .workable-jobs__description a b,
main:not(.homepage-container) .entry-content .workable-jobs .workable-jobs__detail .workable-jobs__description a strong,
main:not(.homepage-container) .entry-content .workable-jobs .workable-jobs__detail .workable-jobs__description a b {
	color: inherit;
	font-weight: inherit;
	text-decoration: inherit;
	border-bottom: none;
	box-shadow: none;
}

.content .entry-content .workable-jobs .workable-jobs__detail .workable-jobs__description a:hover,
.content .entry-content .workable-jobs .workable-jobs__detail .workable-jobs__description a:focus,
.content .entry-content .workable-jobs .workable-jobs__detail .workable-jobs__description a.external:hover,
.content .entry-content .workable-jobs .workable-jobs__detail .workable-jobs__description a.external:focus,
main:not(.homepage-container) .entry-content .workable-jobs .workable-jobs__detail .workable-jobs__description a:hover,
main:not(.homepage-container) .entry-content .workable-jobs .workable-jobs__detail .workable-jobs__description a:focus {
	color: var(--wp--preset--color--purple);
	text-decoration: underline;
	border-bottom: none;
}

.workable-jobs__description > :first-child {
	margin-top: 0;
}

.workable-jobs__description > :last-child {
	margin-bottom: 0;
}

.workable-jobs__description ul,
.workable-jobs__description ol {
	margin: 0.75em 0;
	padding-left: 1.35em;
}

/* Apply: (0,5,1) — beats theme .content a:not(...) at (0,4,1); id = workable-jobs-apply-button-{shortcode} */
.content .workable-jobs .workable-jobs__detail a.workable-jobs__apply[id^="workable-jobs-apply-button-"],
main:not(.homepage-container) .workable-jobs .workable-jobs__detail a.workable-jobs__apply[id^="workable-jobs-apply-button-"] {
	display: inline-block;
	margin-top: 1.15rem;
	padding: 0.55rem 1.75rem;
	background: var(--wj-purple);
	color: #fff;
	text-decoration: none;
	border-bottom: none;
	border-radius: 4px;
	font-weight: 600;
	font-size: 0.9em;
}

.content .workable-jobs .workable-jobs__detail a.workable-jobs__apply[id^="workable-jobs-apply-button-"]:hover,
.content .workable-jobs .workable-jobs__detail a.workable-jobs__apply[id^="workable-jobs-apply-button-"]:focus,
main:not(.homepage-container) .workable-jobs .workable-jobs__detail a.workable-jobs__apply[id^="workable-jobs-apply-button-"]:hover,
main:not(.homepage-container) .workable-jobs .workable-jobs__detail a.workable-jobs__apply[id^="workable-jobs-apply-button-"]:focus {
	background: var(--wj-purple-hover);
	color: #fff;
	text-decoration: none;
	border-bottom: none;
}
.workable-jobs__meta-row {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.75rem 1.25rem;
}

.workable-jobs__location {
	flex: 1 1 12rem;
	font-size: 0.9em;
	color: var(--wj-muted);
	margin: 0;
	line-height: 1.45;
}

.workable-jobs__location-label {
	font-weight: 600;
	color: var(--wj-muted);
}

.workable-jobs__badges {
	flex: 0 1 auto;
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	justify-content: flex-end;
	align-items: center;
}

.workable-jobs__badge {
	display: inline-block;
	font-size: 0.9em;
	font-weight: 500;
	letter-spacing: 0;
	text-transform: none;
	padding: 0.28rem 0.65rem;
	border-radius: 999px;
	border: 1px solid var(--wj-border);
	background: var(--wj-badge-bg);
	color: var(--wj-muted);
	line-height: 1.2;
	white-space: nowrap;
}

.workable-jobs__loading,
.workable-jobs__empty {
	text-align: left;
	color: var(--wj-muted);
	padding: 0.75rem 0;
	margin: 0;
}

.workable-jobs__error {
	color: #b42318;
	text-align: left;
	padding: 0.75rem 0;
	margin: 0;
}

/* Editor placeholder */
.workable-jobs-editor {
	padding: 1rem;
	border: 1px dashed #c3c4c7;
	border-radius: 4px;
	background: #f6f7f7;
}

.workable-jobs-editor__title {
	font-weight: 600;
	margin: 0 0 0.5rem;
}

.workable-jobs-editor__help {
	margin: 0;
	font-size: 13px;
	color: #50575e;
}

/* Apply page */
.workable-jobs-apply {
	box-sizing: border-box;
	font-family: inherit;
	font-size: 1.8rem;
	line-height: 1.5;
	color: var(--wp--preset--color--charcoal, #333);
	width: 100%;
	max-width: 100%;
}

.workable-jobs-apply .gform_wrapper,
.workable-jobs-apply .gform_wrapper form {
	max-width: 100%;
}

/* Gravity Forms — match Crate theme form styling (_forms.scss) */
.workable-jobs-apply .gform_wrapper {
	--wj-input-border: var(--wp--preset--color--slate, #9c9c9c);
	font-family: var(--wp--preset--font-family--standard), montserrat, sans-serif;
}

.workable-jobs-apply .gform_wrapper .gform_fields {
	grid-row-gap: 1.35rem;
}

.workable-jobs-apply .gform_wrapper .gfield {
	margin-bottom: 0;
}

.workable-jobs-apply .gform_wrapper .gfield_label,
.workable-jobs-apply .gform_wrapper .gform-field-label,
.workable-jobs-apply .gform_wrapper legend.gfield_label {
	font-family: var(--wp--preset--font-family--standard), montserrat, sans-serif;
	font-size: 0.95em;
	font-weight: 600;
	color: var(--wp--preset--color--charcoal, #333);
	margin-bottom: 0.45rem;
}

.workable-jobs-apply .gform_wrapper .gfield_label .gfield_required,
.workable-jobs-apply .gform_wrapper .gfield_required {
	color: var(--wp--preset--color--purple, #4b286d);
}

.workable-jobs-apply .gform_wrapper .gfield_description,
.workable-jobs-apply .gform_wrapper .gform-field-label--type-sub {
	font-family: var(--wp--preset--font-family--standard), montserrat, sans-serif;
	font-size: 0.85em;
	color: var(--wp--preset--color--gray, #666);
}

/*
 * Field help text spacing. GF theme uses:
 *   .gform_wrapper.gravity-theme .gfield_description { padding-top: 13px }
 * Match or beat that specificity so these stick.
 */
.workable-jobs-apply .gform_wrapper.gravity-theme .gfield--type-phone .gfield_description,
.workable-jobs-apply .gform_wrapper.gravity-theme .gfield--type-phone .description {
	margin-top: 0;
	padding-top: 5px;
	padding-bottom: 0;
	line-height: 1.35;
}

.workable-jobs-apply .gform_wrapper.gravity-theme .gfield--type-fileupload .gform_fileupload_rules {
	margin: 0;
	padding-top: 5px;
	line-height: 1.35;
}

.workable-jobs-apply .gform_wrapper.gravity-theme .gfield--type-fileupload .gfield_description,
.workable-jobs-apply .gform_wrapper.gravity-theme .gfield--type-fileupload .description {
	margin: 0;
	padding-top: 2px;
	padding-bottom: 0;
	line-height: 1.35;
}

/*
 * Extra space under Resume, Cover Letter, and Details-section fields.
 * (GF lays fields out with grid-row-gap; these add padding beyond that.)
 */
.workable-jobs-apply .gform_wrapper .gfield--type-fileupload,
.workable-jobs-apply .gform_wrapper .gfield[id$="_26"],
.workable-jobs-apply .gform_wrapper .gfield[id$="_7"],
.workable-jobs-apply .gform_wrapper .gfield[id$="_9"],
.workable-jobs-apply .gform_wrapper .gfield[id$="_12"],
.workable-jobs-apply .gform_wrapper .gfield[id$="_14"],
.workable-jobs-apply .gform_wrapper .gfield[id$="_15"],
.workable-jobs-apply .gform_wrapper .gfield[id$="_16"],
.workable-jobs-apply .gform_wrapper .gfield[id$="_28"],
.workable-jobs-apply .gform_wrapper .gfield[id$="_30"],
.workable-jobs-apply .gform_wrapper .gfield[id$="_31"],
.workable-jobs-apply .gform_wrapper .gfield[id$="_32"],
.workable-jobs-apply .gform_wrapper .gfield[id$="_33"],
.workable-jobs-apply .gform_wrapper .gfield[id$="_35"],
.workable-jobs-apply .gform_wrapper .gfield--type-consent {
	padding-bottom: 0.85rem;
}

.workable-jobs-apply .gform_wrapper .gsection {
	border-bottom: 1px solid var(--wj-border, #dddddd);
	margin: 1.75rem 0 1.25rem;
	padding: 0 0 0.65rem;
}

.workable-jobs-apply .gform_wrapper .gsection_title {
	font-family: var(--wp--preset--font-family--standard), montserrat, sans-serif;
	font-size: 1.05em;
	font-weight: 700;
	color: var(--wp--preset--color--purple, #4b286d);
	margin: 0;
}

.workable-jobs-apply .gform_wrapper input[type="text"],
.workable-jobs-apply .gform_wrapper input[type="email"],
.workable-jobs-apply .gform_wrapper input[type="tel"],
.workable-jobs-apply .gform_wrapper input[type="url"],
.workable-jobs-apply .gform_wrapper input[type="number"],
.workable-jobs-apply .gform_wrapper input[type="password"],
.workable-jobs-apply .gform_wrapper input[type="file"],
.workable-jobs-apply .gform_wrapper textarea,
.workable-jobs-apply .gform_wrapper select {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	border: 1.5px solid var(--wj-input-border);
	border-radius: 3px;
	background: #fff;
	color: var(--wp--preset--color--charcoal, #333);
	font-family: var(--wp--preset--font-family--standard), montserrat, sans-serif;
	font-size: 0.95em;
	padding: 0.55rem 0.65rem;
	line-height: 1.4;
	transition: border-color 0.3s ease, box-shadow 0.3s ease;
	box-shadow: none;
}

.workable-jobs-apply .gform_wrapper textarea {
	min-height: 7rem;
	resize: vertical;
}

.workable-jobs-apply .gform_wrapper input[type="text"]:hover,
.workable-jobs-apply .gform_wrapper input[type="email"]:hover,
.workable-jobs-apply .gform_wrapper input[type="tel"]:hover,
.workable-jobs-apply .gform_wrapper input[type="url"]:hover,
.workable-jobs-apply .gform_wrapper input[type="number"]:hover,
.workable-jobs-apply .gform_wrapper input[type="password"]:hover,
.workable-jobs-apply .gform_wrapper textarea:hover,
.workable-jobs-apply .gform_wrapper select:hover,
.workable-jobs-apply .gform_wrapper input[type="text"]:focus,
.workable-jobs-apply .gform_wrapper input[type="email"]:focus,
.workable-jobs-apply .gform_wrapper input[type="tel"]:focus,
.workable-jobs-apply .gform_wrapper input[type="url"]:focus,
.workable-jobs-apply .gform_wrapper input[type="number"]:focus,
.workable-jobs-apply .gform_wrapper input[type="password"]:focus,
.workable-jobs-apply .gform_wrapper textarea:focus,
.workable-jobs-apply .gform_wrapper select:focus {
	outline: none;
	border-color: var(--wp--preset--color--purple, #4b286d);
	box-shadow: 0 0 0 1px var(--wp--preset--color--purple, #4b286d);
}

.workable-jobs-apply .gform_wrapper .ginput_container_fileupload input[type="file"] {
	padding: 0.45rem;
	font-size: 0.9em;
}

.workable-jobs-apply .gform_wrapper .gfield_radio,
.workable-jobs-apply .gform_wrapper .gfield_checkbox {
	margin: 0;
	padding: 0;
	list-style: none;
}

.workable-jobs-apply .gform_wrapper .gchoice {
	margin: 0.35rem 0;
	font-size: 0.95em;
	line-height: 1.45;
}

.workable-jobs-apply .gform_wrapper .gchoice label {
	font-family: var(--wp--preset--font-family--standard), montserrat, sans-serif;
	font-weight: 400;
	color: var(--wp--preset--color--charcoal, #333);
	cursor: pointer;
}

.workable-jobs-apply .gform_wrapper .gfield_radio input[type="radio"],
.workable-jobs-apply .gform_wrapper .gfield_checkbox input[type="checkbox"] {
	accent-color: var(--wp--preset--color--purple, #4b286d);
	margin-right: 0.45rem;
}

.workable-jobs-apply .gform_wrapper .gform_footer,
.workable-jobs-apply .gform_wrapper .gform_page_footer {
	margin-top: 1.5rem;
	padding-top: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0;
}

/* GF theme defaults footer controls to align-self:flex-end (right). */
.workable-jobs-apply .gform_wrapper .gform_footer .gform_button,
.workable-jobs-apply .gform_wrapper .gform_footer input[type="submit"],
.workable-jobs-apply .gform_wrapper .gform_footer button[type="submit"],
.workable-jobs-apply .gform_wrapper .gform_page_footer .gform_button,
.workable-jobs-apply .gform_wrapper .gform_page_footer input[type="submit"],
.workable-jobs-apply .gform_wrapper .gform_page_footer button[type="submit"] {
	align-self: flex-start;
	margin-left: 0;
}

/* Hidden EEO HTML field (27) content is appended under Submit via gform_submit_button. */
.workable-jobs-apply__eeo-statement {
	display: block;
	width: 100%;
	margin-top: 1.25rem;
	color: var(--wp--preset--color--gray, #666);
	font-size: 0.9em;
	line-height: 1.5;
}

.workable-jobs-apply__eeo-statement p {
	margin: 0 0 0.75em;
}

.workable-jobs-apply__eeo-statement p:last-child {
	margin-bottom: 0;
}

.workable-jobs-apply .gform_wrapper .gform_button,
.workable-jobs-apply .gform_wrapper input[type="submit"],
.workable-jobs-apply .gform_wrapper button[type="submit"] {
	display: inline-block;
	background-color: var(--wp--preset--color--purple, #4b286d);
	background-image: var(--wp--preset--gradient--d-purple, linear-gradient(180deg, #5c3385 0%, #4b286d 100%));
	color: #fff;
	font-family: var(--wp--preset--font-family--standard), montserrat, sans-serif;
	font-size: 1.6rem;
	font-weight: 600;
	letter-spacing: 0.06rem;
	line-height: 1.2;
	border: none;
	border-radius: 3px;
	padding: 0.65rem 1.35rem;
	cursor: pointer;
	transition: background-color 0.3s ease, transform 0.3s cubic-bezier(0.33, 0.255, 0.31, 1.8);
	-webkit-font-smoothing: antialiased;
}

.workable-jobs-apply .gform_wrapper .gform_button:hover,
.workable-jobs-apply .gform_wrapper .gform_button:focus,
.workable-jobs-apply .gform_wrapper input[type="submit"]:hover,
.workable-jobs-apply .gform_wrapper input[type="submit"]:focus,
.workable-jobs-apply .gform_wrapper button[type="submit"]:hover,
.workable-jobs-apply .gform_wrapper button[type="submit"]:focus {
	background-image: none;
	background-color: var(--wj-purple-hover, #3a1f54);
	color: #fff;
}

.workable-jobs-apply .gform_wrapper .gfield_validation_message,
.workable-jobs-apply .gform_wrapper .validation_message {
	font-family: var(--wp--preset--font-family--standard), montserrat, sans-serif;
	font-size: 0.85em;
	color: #b42318;
}

.workable-jobs-apply .gform_wrapper .gform_submission_error {
	font-family: var(--wp--preset--font-family--standard), montserrat, sans-serif;
}

/* One visible H1: hide the static page title when the shortcode renders the job title. */
.prose:has(.workable-jobs-apply--has-job) #post-title,
.prose:has(.workable-jobs-apply--has-job) .single-meta {
	display: none;
}

.workable-jobs-apply__title {
	font-size: min(8vw, 4.7rem);
	line-height: 1.2;
	margin: 0 0 0.33em;
}

.workable-jobs-apply__back {
	margin: 0 0 1.5rem;
}

.workable-jobs-apply__back a {
	color: var(--wp--preset--color--purple, #4b286d);
	font-weight: 600;
	text-decoration: none;
}

.workable-jobs-apply__back a:hover,
.workable-jobs-apply__back a:focus {
	text-decoration: underline;
}

.workable-jobs-apply__header {
	margin-bottom: 1.25rem;
	/* Crate theme styles bare `header` as the fixed site nav — keep job meta in normal flow. */
	position: static;
	width: auto;
	top: auto;
	z-index: auto;
	box-shadow: none;
	background: transparent;
}

.workable-jobs-apply__location,
.workable-jobs-apply__employment-type {
	margin: 0.35rem 0;
	color: var(--wp--preset--color--gray, #666);
	font-size: 0.95em;
}

.workable-jobs-apply__location-label {
	font-weight: 600;
}

.workable-jobs-apply__description {
	margin-bottom: 2rem;
}

.workable-jobs-apply__form {
	margin-top: 2rem;
	padding-top: 1.5rem;
	border-top: 1px solid #dddddd;
}

.workable-jobs-apply__form-heading {
	margin: 0 0 1rem;
	color: var(--wp--preset--color--purple, #4b286d);
	font-size: 1.15em;
}

/* Pre-submit heading; confirmation brings its own heading inside the GF wrapper. */
.workable-jobs-apply__form:has(.gform_confirmation_wrapper) > .workable-jobs-apply__form-heading,
.workable-jobs-apply__form:has(.gform_confirmation_message) > .workable-jobs-apply__form-heading {
	display: none;
}

.workable-jobs-apply__confirmation-wrap > .workable-jobs-apply__form-heading {
	margin-top: 0;
}

/* Keep confirmation clear of the fixed site header when scrolled into view. */
.workable-jobs-apply__confirmation-wrap {
	scroll-margin-top: 14rem;
}

.workable-jobs-apply__confirmation {
	margin: 0;
	line-height: 1.5;
}

.workable-jobs-apply__confirmation--error {
	color: #b42318;
}

.workable-jobs-apply__error {
	color: #b42318;
	margin: 0;
}
