
	.sjh-clients-page {
		background: #fff;
		color: var(--black);
		overflow-x: clip;
		--clients-max: 1680px;
		--clients-soft: #f7fafb;
		--clients-line: rgba(13, 76, 61, .16);
	}

	body:has(.sjh-clients-page),
	body:has(.sjh-clients-page) .wp-site-blocks {
		overflow-x: clip;
	}

	.sjh-clients-page .sjh-clients-intro {
		padding-top: clamp(118px, 9vw, 164px);
		padding-bottom: clamp(54px, 6.5vw, 96px);
		background:
			linear-gradient(90deg, rgba(13, 76, 61,.045), transparent 42%),
			#fff;
	}

	.sjh-clients-hero-grid {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: clamp(30px, 4.5vw, 76px);
		align-items: start;
		width: 100%;
		min-height: 0;
		margin: 0 auto;
	}

	.sjh-clients-hero-copy {
		align-self: center;
	}

	.sjh-clients-page .display {
		max-width: none;
		margin: 0;
		font-size: var(--sjh-h1-size);
		line-height: var(--sjh-h1-line);
	}

	.sjh-clients-page .intro-copy {
		max-width: min(100%, 1620px);
		margin: clamp(24px, 3vw, 42px) 0 0;
		font-size: var(--sjh-p-size);
		line-height: var(--sjh-p-line);
	}

	.sjh-clients-actions {
		display: flex;
		flex-wrap: wrap;
		gap: clamp(18px, 2.4vw, 34px);
		margin-top: clamp(28px, 3.8vw, 54px);
	}

	.sjh-clients-page .text-link::after {
		transform-origin: left;
		transition: transform .32s cubic-bezier(.16, 1, .3, 1);
	}

	.sjh-clients-page .text-link:hover::after,
	.sjh-clients-page .text-link:focus-visible::after {
		transform: scaleX(.78);
	}

	.sjh-clients-hero-media {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(210px, .42fr);
		gap: clamp(12px, 1.6vw, 22px);
		align-items: end;
	}

	.sjh-clients-hero-media figure {
		position: relative;
		min-height: clamp(420px, 44vw, 680px);
		margin: 0;
		overflow: hidden;
		background: #111;
	}

	.sjh-clients-hero-media img {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		display: block;
		object-fit: cover;
		object-position: center 44%;
		transition: transform .9s cubic-bezier(.16, 1, .3, 1), opacity .45s ease;
	}

	.sjh-clients-hero-media figure:hover img {
		transform: scale(1.045);
	}

	.sjh-clients-hero-note {
		display: grid;
		align-content: center;
		gap: 10px;
		min-height: clamp(150px, 14vw, 220px);
		padding: clamp(22px, 2.8vw, 38px);
		background: var(--blue);
		color: #fff;
	}

	.sjh-clients-hero-note strong {
		font: 700 clamp(26px, 2.4vw, 38px)/1.02 var(--serif);
		letter-spacing: -.01em;
	}

	.sjh-clients-hero-note span {
		color: rgba(255,255,255,.8);
		font: 400 var(--sjh-p-small-size)/1.5 var(--body);
	}

	.sjh-client-logo-section {
		padding-top: clamp(72px, 8vw, 118px);
		padding-bottom: clamp(78px, 8.8vw, 132px);
		background: var(--clients-soft);
		border-top: 1px solid var(--clients-line);
	}

	.sjh-client-logo-head {
		display: grid;
		grid-template-columns: minmax(320px, .38fr) minmax(460px, .62fr);
		gap: clamp(34px, 5.4vw, 88px);
		align-items: end;
		width: min(100%, var(--clients-max));
		margin: 0 auto clamp(32px, 4vw, 58px);
	}

	.sjh-client-logo-head .section-title {
		margin: 0;
		color: var(--blue);
	}

	.sjh-client-logo-copy {
		max-width: 850px;
		margin: 0;
		color: #222;
		font: 400 var(--sjh-p-size)/var(--sjh-p-line) var(--body);
	}

	.sjh-client-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: clamp(18px, 2vw, 28px);
		width: min(100%, var(--clients-max));
		margin: 0 auto;
		background: transparent;
	}

	.sjh-client-card {
		position: relative;
		min-height: clamp(176px, 15vw, 230px);
		display: grid;
		grid-template-columns: minmax(150px, .42fr) minmax(0, .58fr);
		gap: clamp(18px, 2.2vw, 34px);
		align-items: center;
		padding: clamp(24px, 3vw, 42px);
		background: #fff;
		border-top: 1px solid var(--clients-line);
		color: #111;
		text-align: left;
		overflow: hidden;
		transition: background .32s ease, color .32s ease, transform .32s cubic-bezier(.16, 1, .3, 1);
	}

	.sjh-client-card::after {
		content: "";
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		width: 0;
		background: var(--blue);
		transition: width .32s cubic-bezier(.16, 1, .3, 1);
	}

	.sjh-client-card:hover,
	.sjh-client-card:focus-visible {
		z-index: 2;
		background: #fff;
		transform: translateY(-4px);
	}

	.sjh-client-card:hover::after,
	.sjh-client-card:focus-visible::after {
		width: 4px;
	}

	.sjh-client-logo-wrap {
		width: 100%;
		min-height: 76px;
		display: flex;
		align-items: center;
		justify-content: flex-start;
		position: relative;
		z-index: 1;
	}

	.sjh-client-logo {
		width: auto;
		max-width: min(92%, 210px);
		max-height: 76px;
		object-fit: contain;
		display: block;
		filter: grayscale(1);
		opacity: .82;
		transition: filter .28s ease, opacity .28s ease, transform .28s ease;
	}

	.sjh-client-card:hover .sjh-client-logo,
	.sjh-client-card:focus-visible .sjh-client-logo {
		filter: grayscale(0);
		opacity: 1;
		transform: translateY(-2px);
	}

	.sjh-client-holding {
		width: min(96%, 210px);
		color: #111;
		opacity: .84;
		transition: transform .32s cubic-bezier(.16, 1, .3, 1);
	}

	.sjh-client-card:hover .sjh-client-holding,
	.sjh-client-card:focus-visible .sjh-client-holding {
		transform: translateY(-3px);
	}

	.sjh-client-name {
		display: block;
		position: relative;
		z-index: 1;
		margin: 0;
		color: #111;
		font: 700 clamp(22px, 2vw, 32px)/1.08 var(--serif);
		letter-spacing: -.01em;
		text-transform: none;
		transition: color .32s ease;
	}

	.sjh-client-link-label {
		position: absolute;
		right: clamp(20px, 2.6vw, 36px);
		bottom: clamp(18px, 2.2vw, 28px);
		z-index: 1;
		color: var(--blue);
		font: 700 11px/1 Arial, sans-serif;
		letter-spacing: .12em;
		text-transform: uppercase;
		opacity: .72;
		transition: opacity .28s ease, transform .32s cubic-bezier(.16, 1, .3, 1);
	}

	.sjh-client-card:hover .sjh-client-link-label,
	.sjh-client-card:focus-visible .sjh-client-link-label {
		opacity: 1;
		transform: translateX(4px);
	}

	.sjh-clients-testimonials {
		padding-top: clamp(78px, 9vw, 138px);
		padding-bottom: clamp(82px, 9vw, 140px);
		background: #fff;
	}

	.sjh-client-testimonial-layout {
		display: grid;
		grid-template-columns: minmax(360px, .43fr) minmax(480px, .57fr);
		gap: clamp(44px, 6.4vw, 108px);
		align-items: center;
		width: min(100%, var(--clients-max));
		margin: 0 auto;
	}

	.sjh-client-testimonial-media {
		position: relative;
		aspect-ratio: 4 / 5;
		margin: 0;
		overflow: hidden;
		background: #111;
	}

	.sjh-client-testimonial-media img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center center;
		display: block;
		transition: transform .9s cubic-bezier(.16, 1, .3, 1);
	}

	.sjh-client-testimonial-media:hover img {
		transform: scale(1.045);
	}

	.sjh-client-testimonial-copy {
		display: grid;
		gap: clamp(24px, 3vw, 42px);
	}

	.sjh-client-testimonial-copy .section-title {
		margin: 0;
		color: var(--blue);
	}

	.sjh-client-testimonial-copy .quote {
		margin: 0;
		padding: clamp(26px, 3.4vw, 48px) 0 0;
		border-top: 1px solid var(--clients-line);
	}

	.sjh-client-testimonial-copy blockquote {
		margin: 0;
		color: #111;
		font: 400 clamp(26px, 3vw, 48px)/1.22 var(--body);
	}

	.sjh-client-testimonial-copy cite {
		display: block;
		margin-top: clamp(22px, 3vw, 40px);
		color: var(--blue);
		font: 700 12px/1 Arial, sans-serif;
		letter-spacing: .12em;
		text-transform: uppercase;
	}

	@media (max-width: 1100px) {
		.sjh-client-grid {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}

		.sjh-client-card {
			grid-template-columns: 1fr;
			align-items: start;
		}
	}

	@media (max-width: 760px) {
		.sjh-clients-page .section {
			padding-left: 20px;
			padding-right: 20px;
		}

		.sjh-clients-hero-grid,
		.sjh-client-testimonial-layout,
		.sjh-client-logo-head {
			grid-template-columns: 1fr;
			align-items: start;
			width: 100%;
			max-width: 100%;
		}

		.sjh-clients-page .sjh-clients-intro {
			padding-top: 112px;
		}

		.sjh-clients-page .intro-copy,
		.sjh-client-logo-copy {
			width: calc(100vw - 40px);
			max-width: calc(100vw - 40px);
			overflow-wrap: break-word;
		}

		.sjh-clients-hero-grid {
			min-width: 0;
			min-height: 0;
		}

		.sjh-clients-hero-copy,
		.sjh-clients-hero-media {
			width: calc(100vw - 40px);
			max-width: calc(100vw - 40px);
			min-width: 0;
		}

		.sjh-clients-hero-media {
			grid-template-columns: 1fr;
		}

		.sjh-clients-hero-media figure,
		.sjh-client-testimonial-media {
			min-height: 0;
			aspect-ratio: 4 / 3;
		}

		.sjh-client-card {
			min-height: 160px;
		}

		.sjh-client-holding {
			width: min(86%, 190px);
		}
	}

	@media (max-width: 640px) {
		.sjh-clients-hero-copy,
		.sjh-clients-hero-media {
			width: 100%;
			max-width: 100%;
		}

		.sjh-clients-page .intro-copy {
			width: 100%;
			max-width: 330px;
		}
	}

	@media (max-width: 460px) {
		.sjh-clients-hero-copy,
		.sjh-clients-hero-media {
			width: 100%;
			max-width: 100%;
		}

		.sjh-clients-page .intro-copy {
			width: 100%;
			max-width: 330px;
		}

		.sjh-clients-actions {
			display: grid;
			gap: 16px;
		}

		.sjh-client-grid {
			grid-template-columns: 1fr;
		}

		.sjh-client-card {
			padding: 24px 20px 48px;
		}
	}
