/* WI Open Positions. Fonts inherit from the theme (Lato on waitindustries.com).
   Colours follow Resources/Brand: #41A848 WI Green for non-text accents,
   #008A3F for buttons/links (the only site green that passes 4.5:1 with white text). */
.wiop {
	--wiop-green: #41a848;
	--wiop-action: #008a3f;
	--wiop-action-hover: #006f32;
	--wiop-charcoal: #4f4e4f;
	--wiop-line: #d6d7d8;
	--wiop-soft: #f5f6f6;
	margin: 2em 0;
	color: inherit;
}
.wiop *, .wiop *::before, .wiop *::after { box-sizing: border-box; }
.wiop-heading { margin: 0 0 .75em; }
.wiop-jobs { border-top: 3px solid var(--wiop-green); }
.wiop-job { border-bottom: 1px solid var(--wiop-line); }
.wiop-job > summary {
	list-style: none;
	cursor: pointer;
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: .25em 1em;
	padding: 1em 2.75em 1em .25em;
	position: relative;
}
.wiop-job > summary::-webkit-details-marker { display: none; }
.wiop-job > summary::after {
	content: "+";
	position: absolute;
	right: .5em;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.6em;
	line-height: 1;
	color: var(--wiop-action);
	font-weight: 700;
}
.wiop-job[open] > summary::after { content: "\2212"; }
.wiop-job > summary:hover .wiop-job-title,
.wiop-job > summary:focus-visible .wiop-job-title { color: var(--wiop-action); }
.wiop-job > summary:focus-visible { outline: 2px solid var(--wiop-action); outline-offset: 2px; }
.wiop-job-title { font-size: 1.2em; font-weight: 700; color: var(--wiop-charcoal); }
.wiop-job-meta { font-size: .95em; opacity: .85; }
.wiop-job-body { padding: 0 .25em 1.5em; }
.wiop-facts {
	display: flex;
	flex-wrap: wrap;
	gap: .75em 2em;
	margin: 0 0 1.25em;
	padding: .9em 1em;
	background: var(--wiop-soft);
	border-left: 4px solid var(--wiop-green);
}
.wiop-fact dt { font-size: .8em; text-transform: uppercase; letter-spacing: .05em; opacity: .75; margin: 0; }
.wiop-fact dd { margin: 0; font-weight: 700; }
.wiop-description > :first-child { margin-top: 0; }
.wiop-eeo { font-size: .9em; font-style: italic; opacity: .85; margin-top: 1.5em; }
.wiop-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .75em 1.5em; margin-top: 1.25em; }
.wiop-apply { margin: 0; }
.wiop a.wiop-button {
	display: inline-block;
	background: var(--wiop-action);
	border: 1px solid var(--wiop-action);
	color: #fff;
	border-radius: 10px;
	padding: 10px 22px;
	font-weight: 600;
	font-size: 1.05em;
	text-decoration: none;
	line-height: 1.3;
}
.wiop a.wiop-button:hover, .wiop a.wiop-button:focus { background: var(--wiop-action-hover); border-color: var(--wiop-action-hover); color: #fff; }
.wiop-permalink, .wiop-general a, .wiop-back a { color: var(--wiop-action); }
.wiop-general { margin-top: 1.25em; }
.wiop-none { font-size: 1.05em; }
.wiop-closed {
	padding: .75em 1em;
	background: #fcf0f1;
	border-left: 4px solid #b32d2e;
	font-weight: 700;
}
.wiop-single .wiop-apply { margin-top: 1.5em; }
@media (max-width: 600px) {
	.wiop-facts { gap: .5em 1.25em; }
	.wiop-job-title { font-size: 1.1em; }
}

/* v1.1.1: a job page is not a blog post. Hide the theme's date badge and author byline on single openings (Themify Ultra classes). */
.single-wi_job .post-date-wrap,
.single-wi_job .post-author { display: none !important; }

/* v1.2.0: in-person How to apply block */
.wiop-inperson { margin-top: 1.25em; padding: 1em 1.1em; background: var(--wiop-soft); border-left: 4px solid var(--wiop-green); }
.wiop-inperson-title { margin: 0 0 .35em; font-weight: 700; font-size: 1.1em; color: var(--wiop-charcoal); }
.wiop-inperson-text { margin: 0 0 .9em; }
.wiop-inperson .wiop-apply { margin: 0; }
.wiop-actions .wiop-inperson { flex: 1 1 100%; margin-top: 0; }
