/* Recruitment details: original copy, with a clear reading and application flow. */
.sb-job {
	padding-top: var(--sb-header);
	background: #f3f8f7;
	color: #0e3132;
}
.sb-job__container {
	width: min(calc(100% - 80px), 1120px);
	margin-inline: auto;
}
.sb-job__hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding: 40px 0 64px;
	background: linear-gradient(115deg, #073c39 8%, #0a5953 72%, #176860);
	color: #f6fffd;
}
.sb-job__hero::before,
.sb-job__hero::after {
	position: absolute;
	z-index: -1;
	width: 420px;
	aspect-ratio: 1;
	border: 1px solid #8ce0ca26;
	border-radius: 50%;
	content: '';
	pointer-events: none;
}
.sb-job__hero::before { top: -248px; right: -26px; }
.sb-job__hero::after { top: -114px; right: -158px; width: 570px; }
.sb-job__hero .sb-job__container {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 24px;
}
.sb-job__back {
	display: inline-flex;
	align-items: center;
	padding-block: 4px;
	margin-bottom: 26px;
	color: #d6fff5;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.6;
	text-underline-offset: 5px;
}
.sb-job__back:hover { text-decoration: underline; }
.sb-job__eyebrow {
	display: flex;
	align-items: center;
	gap: 13px;
	margin: 0;
	color: #b4e8d2;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .14em;
	line-height: 1.45;
}
.sb-job__eyebrow::before {
	width: 30px;
	height: 2px;
	background: #85d7b8;
	content: '';
}
.sb-job__hero h1 {
	margin: 0;
	font-size: clamp(32px, 4vw, 56px);
	font-weight: 600;
	letter-spacing: .015em;
	line-height: 1.45;
	overflow-wrap: anywhere;
}
.sb-job__summary {
	margin: 0;
	padding: 10px 17px;
	border: 1px solid #b6e6db4d;
	border-radius: 7px;
	background: #ffffff09;
	color: #e1f7f0;
	font-size: 14px;
	line-height: 1.65;
}
.sb-job__title-suffix { display: inline-block; }
.sb-job__requirements {
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding-block: 52px 84px;
}
.sb-job__field {
	display: grid;
	grid-template-columns: 184px minmax(0, 1fr);
	align-items: start;
	gap: 36px;
	min-width: 0;
	padding: 36px 40px;
	border: 1px solid #dbe9e5;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 7px 22px #133e3403;
	transition: border-color 240ms ease, box-shadow 240ms ease;
}
.sb-job__field h2 {
	position: relative;
	margin: 0;
	padding-top: 15px;
	color: #154b44;
	font-size: 20px;
	font-weight: 600;
	letter-spacing: .02em;
	line-height: 1.5;
	scroll-margin-top: calc(var(--sb-header) + 24px);
}
.sb-job__field h2::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 24px;
	height: 3px;
	border-radius: 3px;
	background: #50aaa0;
	content: '';
}
.sb-job__field--description {
	padding-block: 44px;
	border-top: 3px solid #45a59a;
}
.sb-job__field--requirements { background: #fbfdfc; }
.sb-job__content,
.sb-job__text {
	min-width: 0;
	color: #35514e;
	font-size: 15.5px;
	line-height: 1.95;
	overflow-wrap: anywhere;
}
.sb-job__text { white-space: pre-wrap; }
.sb-job__content p { margin: 0 0 1.6em; }
.sb-job__content p:last-child { margin-bottom: 0; }
.sb-job__subheading {
	display: inline-block;
	margin-bottom: 5px;
	color: #155c51;
	font-size: 1em;
	font-weight: 700;
	line-height: 1.75;
}
.sb-job__content p:has(> .sb-job__subheading) {
	margin-bottom: 16px;
	padding: 20px 23px;
	border: 1px solid #e0ece7;
	border-radius: 12px;
	background: #f7faf8;
}
.sb-job__content p:has(> .sb-job__subheading):last-child { margin-bottom: 0; }
.sb-job__field--requirements .sb-job__subheading {
	padding: 3px 10px;
	border-radius: 5px;
	background: #e5f1eb;
}
.sb-job__field--employment_type .sb-job__text { color: #174c44; font-weight: 600; }
.sb-job__field--selection { background: #eef6f2; }
.sb-job__field--selection .sb-job__text {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px 10px;
	white-space: normal;
}
.sb-job__selection-step {
	flex: 1 1 132px;
	padding: 17px 12px;
	border: 1px solid #cfe3d8;
	border-radius: 9px;
	background: #fff;
	color: #185a4d;
	font-size: 14px;
	font-weight: 600;
	text-align: center;
}
.sb-job__selection-connector {
	flex: 0 0 12px;
	color: #528375;
	font-size: 18px;
	line-height: 1;
	transform: rotate(-90deg);
}
.sb-job__selection-note {
	flex-basis: 100%;
	color: #576f68;
	font-size: 13px;
	line-height: 1.65;
}
.sb-job__selection-note + .sb-job__selection-note { margin-top: -6px; }
.sb-job__actions {
	display: flex;
	justify-content: center;
	padding-top: 24px;
}
.sb-job__apply {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 40px;
	width: min(100%, 400px);
	padding: 22px 28px;
	border: 1px solid #115b50;
	border-radius: 50px;
	background: #10584d;
	box-shadow: 0 8px 22px #0d49351a;
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	transition: background-color 200ms ease, box-shadow 240ms ease, transform 240ms ease;
}
.sb-job__apply span {
	display: grid;
	place-items: center;
	flex: 0 0 33px;
	width: 33px;
	height: 33px;
	border: 1px solid #ffffff42;
	border-radius: 50%;
	transition: transform 240ms ease;
}
.sb-job__apply:hover { background: #0a6b5c; box-shadow: 0 12px 28px #08443f24; }
.sb-job__apply:focus-visible,
.sb-job__back:focus-visible {
	outline: 3px solid #56bbb5;
	outline-offset: 6px;
}
@media (hover: hover) and (pointer: fine) {
	.sb-job__field:hover { border-color: #a8cfc0; box-shadow: 0 10px 26px #133e340a; }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
	.sb-job__apply:hover { transform: translateY(-3px); }
	.sb-job__apply:hover span { transform: translate(2px, -2px); }
}
@media (prefers-reduced-motion: no-preference) {
	.motion-enter .sb-job__hero .sb-job__container > * {
		opacity: 0;
		transform: translateY(8px);
		transition: opacity 520ms ease, transform 520ms ease;
	}
	.motion-enter.motion-ready .sb-job__hero .sb-job__container > * { opacity: 1; transform: none; }
	.sb-job__hero h1 { transition-delay: 80ms !important; }
	.sb-job__hero .sb-job__summary { transition-delay: 140ms !important; }
	.sb-job__apply:active { transform: scale(.98); }
}
@media (max-width: 1023px) {
	.sb-job__container { width: calc(100% - 48px); }
	.sb-job__field { grid-template-columns: 150px minmax(0, 1fr); gap: 24px; padding: 30px; }
	.sb-job__content p:has(> .sb-job__subheading) { padding: 18px; }
	.sb-job__field--selection .sb-job__text { flex-direction: column; align-items: stretch; gap: 9px; }
	.sb-job__selection-step { flex: 0 0 auto; padding: 15px; }
	.sb-job__selection-connector { align-self: center; flex-basis: auto; transform: none; }
	.sb-job__selection-note { flex-basis: auto; }
	.sb-job__selection-note:first-of-type { margin-top: 5px; }
	.sb-job__selection-note + .sb-job__selection-note { margin-top: 0; }
}
@media (max-width: 767px) {
	.sb-job__container { width: calc(100% - 32px); }
	.sb-job__hero { padding-block: 26px 42px; }
	.sb-job__hero .sb-job__container { gap: 20px; padding-inline: 8px; }
	.sb-job__back { margin-bottom: 12px; }
	.sb-job__hero::before { right: -200px; }
	.sb-job__hero::after { right: -350px; }
	.sb-job__summary { padding: 9px 12px; font-size: 12px; line-height: 1.8; }
	.sb-job__title-suffix { display: block; font-size: .8em; }
	.sb-job__requirements { gap: 16px; padding-block: 28px 52px; }
	.sb-job__field { grid-template-columns: minmax(0, 1fr); gap: 22px; padding: 25px 22px; border-radius: 15px; }
	.sb-job__field h2 { font-size: 21px; padding-top: 14px; }
	.sb-job__content, .sb-job__text { font-size: 15px; line-height: 1.9; }
	.sb-job__content p:has(> .sb-job__subheading) { margin-inline: -7px; padding: 16px; }
	.sb-job__actions { padding-top: 13px; }
	.sb-job__apply { gap: 20px; padding: 17px 23px; font-size: 15px; }
}
@media (prefers-reduced-motion: reduce) {
	.sb-job__field, .sb-job__apply, .sb-job__apply span { transition: none; }
}
