/*
 * About us: an industrial, signal-lit explanation of the direct-employer model.
 * Breakpoint changes remain in jobs-mobile.css with the rest of the theme.
 */

.sjb-about {
	position: relative;
	isolation: isolate;
	width: min(100%, 1320px);
	margin: 0 auto;
	padding: clamp(36px, 5vw, 74px) 28px 30px;
}

.sjb-about::before {
	position: absolute;
	top: 0;
	left: 28%;
	z-index: -1;
	width: 54%;
	height: 620px;
	background: radial-gradient(circle, color-mix(in srgb, var(--sjb-accent) 9%, transparent), transparent 69%);
	content: "";
	pointer-events: none;
}

.sjb-about h1,
.sjb-about h2,
.sjb-about p {
	text-wrap: pretty;
}

.sjb-about__eyebrow {
	margin: 0 0 12px;
	color: var(--sjb-accent-text);
	font-family: var(--sjb-font-num);
	font-size: 11px;
	font-weight: 760;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.sjb-about__section-head {
	margin-bottom: 22px;
	text-align: center;
}

.sjb-about__section-head h2,
.sjb-about-why h2 {
	margin: 0;
	font-size: clamp(28px, 3vw, 38px);
	line-height: 1.05;
	letter-spacing: -0.035em;
}

.sjb-about__arrow-forward {
	transform: rotate(180deg);
}

.sjb-about-hero {
	display: grid;
	grid-template-columns: minmax(0, 0.93fr) minmax(430px, 1.07fr);
	align-items: center;
	gap: clamp(30px, 5vw, 70px);
}

.sjb-about-hero__copy {
	padding: 14px 6px 10px;
}

.sjb-about-hero__title {
	max-width: 650px;
	margin: 0;
	font-size: clamp(47px, 5.4vw, 78px);
	line-height: 0.98;
	letter-spacing: -0.055em;
}

.sjb-about-hero__lede {
	max-width: 59ch;
	margin: 24px 0 0;
	color: var(--sjb-text-dim);
	font-size: clamp(16px, 1.4vw, 19px);
	line-height: 1.65;
}

.sjb-about-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 25px;
}

.sjb-about-hero__facts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin: 27px 0 0;
	padding: 0;
	list-style: none;
}

.sjb-about-hero__facts li {
	display: flex;
	align-items: center;
	gap: 9px;
	min-width: 0;
	color: var(--sjb-text-dim);
	font-size: 12px;
	line-height: 1.25;
}

.sjb-about-hero__facts .sjb-icon {
	flex: 0 0 auto;
	color: var(--sjb-accent-text);
}

.sjb-about-hero__media {
	position: relative;
	min-width: 0;
	margin: 0;
	overflow: hidden;
	background: var(--sjb-surface-2);
	border: 1px solid var(--sjb-accent-line);
	border-radius: 26px;
	box-shadow: 0 28px 70px color-mix(in srgb, var(--sjb-header-bg) 72%, transparent), 0 0 44px color-mix(in srgb, var(--sjb-accent) 10%, transparent);
}

.sjb-about-hero__media::after {
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, color-mix(in srgb, var(--sjb-header-bg) 18%, transparent), transparent 58%);
	content: "";
	pointer-events: none;
}

.sjb-about-hero__media img {
	display: block;
	width: 100%;
	height: 100%;
	aspect-ratio: 1.28 / 1;
	object-fit: cover;
}

.sjb-about-principles {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	margin-top: 42px;
}

.sjb-about-principle {
	--sjb-about-tone: var(--sjb-accent-text);
	position: relative;
	min-height: 210px;
	padding: 29px 66px 28px 28px;
	overflow: hidden;
	background: linear-gradient(135deg, color-mix(in srgb, var(--sjb-about-tone) 8%, var(--sjb-surface)), var(--sjb-surface));
	border: 1px solid color-mix(in srgb, var(--sjb-about-tone) 36%, var(--sjb-border));
	border-radius: 18px;
	box-shadow: var(--sjb-shadow);
}

.sjb-about-principle::after {
	position: absolute;
	top: -38px;
	left: -35px;
	width: 150px;
	height: 150px;
	background: radial-gradient(circle, color-mix(in srgb, var(--sjb-about-tone) 14%, transparent), transparent 70%);
	content: "";
	pointer-events: none;
}

.sjb-about-principle--violet {
	--sjb-about-tone: var(--sjb-prof-cleaning);
}

.sjb-about-principle--amber {
	--sjb-about-tone: var(--sjb-prof-electrician);
}

.sjb-about__icon-ring {
	display: grid;
	width: 52px;
	height: 52px;
	place-items: center;
	background: color-mix(in srgb, var(--sjb-about-tone, var(--sjb-accent)) 10%, transparent);
	border: 1px solid color-mix(in srgb, var(--sjb-about-tone, var(--sjb-accent)) 56%, transparent);
	border-radius: 50%;
	color: var(--sjb-about-tone, var(--sjb-accent-text));
	box-shadow: 0 0 24px color-mix(in srgb, var(--sjb-about-tone, var(--sjb-accent)) 13%, transparent);
}

.sjb-about-principle h2 {
	margin: 22px 0 0;
	font-size: 21px;
	letter-spacing: -0.02em;
}

.sjb-about-principle p {
	margin: 10px 0 0;
	color: var(--sjb-text-dim);
	font-size: 14px;
	line-height: 1.55;
}

.sjb-about-principle__arrow {
	position: absolute;
	right: 27px;
	bottom: 25px;
	color: var(--sjb-about-tone);
	font-size: 24px;
}

.sjb-about-why {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(440px, 1.1fr);
	align-items: center;
	gap: clamp(44px, 8vw, 110px);
	margin-top: clamp(76px, 9vw, 122px);
}

.sjb-about-why__intro > p:not(.sjb-about__eyebrow) {
	max-width: 58ch;
	margin: 18px 0 0;
	color: var(--sjb-text-dim);
	line-height: 1.65;
}

.sjb-about-checks {
	display: grid;
	gap: 13px;
	margin: 26px 0 0;
	padding: 0;
	list-style: none;
}

.sjb-about-checks li {
	display: flex;
	align-items: center;
	gap: 12px;
	color: var(--sjb-text-dim);
	font-size: 14px;
}

.sjb-about-checks .sjb-icon {
	color: var(--sjb-accent-text);
}

.sjb-about-why__list {
	margin: 0;
	padding: 0;
	overflow: hidden;
	background: var(--sjb-surface);
	border: 1px solid var(--sjb-border);
	border-radius: 17px;
	box-shadow: var(--sjb-shadow-lg);
	list-style: none;
}

.sjb-about-why__list > li {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr) auto;
	align-items: center;
	gap: 16px;
	min-height: 76px;
	padding: 12px 22px;
}

.sjb-about-why__list > li + li {
	border-top: 1px solid var(--sjb-border);
}

.sjb-about-why__list strong,
.sjb-about-why__list small {
	display: block;
}

.sjb-about-why__list strong {
	font-size: 14px;
}

.sjb-about-why__list small {
	margin-top: 3px;
	color: var(--sjb-text-faint);
	font-size: 12px;
}

.sjb-about-why__list > li > span:last-child {
	color: var(--sjb-accent-text);
	font-size: 20px;
}

.sjb-about__list-icon {
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	border: 1px solid currentColor;
	border-radius: 12px;
}

.sjb-about__list-icon--green { color: var(--sjb-accent-text); }
.sjb-about__list-icon--violet { color: var(--sjb-prof-cleaning); }
.sjb-about__list-icon--orange { color: var(--sjb-prof-production); }
.sjb-about__list-icon--cyan { color: var(--sjb-prof-plumber); }

.sjb-about-industries,
.sjb-about-process {
	margin-top: clamp(76px, 9vw, 118px);
}

.sjb-about-industries__grid {
	display: grid;
	grid-template-columns: repeat(9, minmax(0, 1fr));
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sjb-about-industries__grid a {
	display: flex;
	min-height: 112px;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 10px;
	padding: 14px 8px;
	background: var(--sjb-surface);
	border: 1px solid var(--sjb-border);
	border-radius: 14px;
	box-shadow: var(--sjb-shadow);
	color: var(--sjb-text);
	font-size: 11px;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.sjb-about-industries__grid a:hover,
.sjb-about-industries__grid a:focus-visible {
	border-color: var(--sjb-accent-line);
	box-shadow: var(--sjb-chip-shadow-hover);
	transform: translateY(-3px);
}

.sjb-about-process__steps {
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 34px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sjb-about-process__steps::before {
	position: absolute;
	top: 50%;
	left: 15%;
	right: 15%;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--sjb-accent-line), transparent);
	content: "";
	pointer-events: none;
}

.sjb-about-process__steps li {
	position: relative;
	display: grid;
	grid-template-columns: 54px minmax(0, 1fr);
	align-items: center;
	gap: 17px;
	min-height: 118px;
	padding: 25px;
	background: var(--sjb-surface);
	border: 1px solid var(--sjb-border);
	border-radius: 16px;
	box-shadow: var(--sjb-shadow);
}

.sjb-about-process__steps strong {
	display: block;
	font-size: 17px;
}

.sjb-about-process__steps p {
	margin: 7px 0 0;
	color: var(--sjb-text-faint);
	font-size: 12px;
	line-height: 1.5;
}

.sjb-about-audiences {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px;
	margin-top: 28px;
}

.sjb-about-audience {
	--sjb-about-tone: var(--sjb-accent-text);
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	gap: 19px;
	padding: 30px;
	background: linear-gradient(135deg, color-mix(in srgb, var(--sjb-about-tone) 10%, var(--sjb-surface)), var(--sjb-surface));
	border: 1px solid color-mix(in srgb, var(--sjb-about-tone) 38%, var(--sjb-border));
	border-radius: 18px;
	box-shadow: var(--sjb-shadow);
}

.sjb-about-audience--employers {
	--sjb-about-tone: var(--sjb-prof-cleaning);
}

.sjb-about-audience > .sjb-icon {
	color: var(--sjb-about-tone);
}

.sjb-about-audience h2 {
	margin: 0;
	font-size: 20px;
}

.sjb-about-audience ul {
	display: grid;
	gap: 8px;
	margin: 16px 0 22px;
	padding: 0;
	color: var(--sjb-text-dim);
	font-size: 13px;
	list-style: none;
}

.sjb-about-audience li::before {
	margin-right: 8px;
	color: var(--sjb-about-tone);
	content: "✓";
}

.sjb-about-cta {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 24px;
	margin-top: 26px;
	padding: 26px 34px;
	background: linear-gradient(105deg, color-mix(in srgb, var(--sjb-accent) 17%, var(--sjb-surface)), var(--sjb-surface));
	border: 1px solid var(--sjb-accent-line);
	border-radius: 18px;
	box-shadow: 0 0 38px color-mix(in srgb, var(--sjb-accent) 9%, transparent);
}

.sjb-about-cta > .sjb-icon {
	color: var(--sjb-accent-text);
}

.sjb-about-cta h2 {
	margin: 0;
	font-size: clamp(20px, 2vw, 27px);
	letter-spacing: -0.025em;
}

.sjb-about-cta p {
	margin: 5px 0 0;
	color: var(--sjb-text-faint);
	font-size: 13px;
}
