/*
 * Healthy Start About Our Programs page - HS Website Mockup Rev4, page 5.
 * Build: 1.0.7
 */

.chs-programs-main,
.chs-programs-page-wrap,
.chs-programs-entry-content {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

/*
 * Match the full-width normalization used on the other recently corrected
 * pages so Twenty Sixteen cannot reintroduce narrow content gutters.
 */
body.chs-alt-template.page-template-template-about-our-programs .site-inner,
body.chs-alt-template.page-template-template-about-our-programs-php .site-inner,
body.chs-alt-template.page-template-template-about-our-programs .site-content,
body.chs-alt-template.page-template-template-about-our-programs-php .site-content,
body.chs-alt-template.page-template-template-about-our-programs .content-area,
body.chs-alt-template.page-template-template-about-our-programs-php .content-area,
body.chs-alt-template.page-template-template-about-our-programs .site-main,
body.chs-alt-template.page-template-template-about-our-programs-php .site-main,
body.chs-alt-template.page-template-template-about-our-programs .entry-content,
body.chs-alt-template.page-template-template-about-our-programs-php .entry-content,
body.chs-alt-template.page-template-template-about-our-programs .chs-programs-main,
body.chs-alt-template.page-template-template-about-our-programs-php .chs-programs-main,
body.chs-alt-template.page-template-template-about-our-programs .chs-programs-page-wrap,
body.chs-alt-template.page-template-template-about-our-programs-php .chs-programs-page-wrap,
body.chs-alt-template.page-template-template-about-our-programs .chs-programs-entry-content,
body.chs-alt-template.page-template-template-about-our-programs-php .chs-programs-entry-content,
body.chs-alt-template .site-inner,
body.chs-alt-template .site-content,
body.chs-alt-template .content-area,
body.chs-alt-template .site-main,
body.chs-alt-template .entry-content,
body.chs-alt-template .chs-programs-main,
body.chs-alt-template .chs-programs-page-wrap,
body.chs-alt-template .chs-programs-entry-content {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	float: none !important;
}

.chs-programs-page {
	--chs-programs-pink: #e84699;
	--chs-programs-green: #7ac142;
	--chs-programs-blue: #1d438c;
	--chs-programs-text: #111111;
	--chs-programs-light: #f2f2f2;
	--chs-programs-white: #ffffff;
	--chs-programs-pat: #8170b0;
	--chs-programs-newborn: #3fb6e8;
	--chs-programs-nfp: #3376a0;
	--chs-programs-team: #7ac143;
	--chs-programs-doula: #ec93bc;
	--chs-programs-fimr: #677caf;
	--chs-programs-milk: #dcb867;
	--chs-programs-max: 1848px;
	--chs-programs-shell: min(calc(100% - 68px), var(--chs-programs-max));
	--chs-programs-font: "Livvic", Verdana, Arial, sans-serif;
	--chs-programs-display: "bree", "Livvic", Verdana, Arial, sans-serif;
	width: 100%;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--chs-programs-text);
	font-family: var(--chs-programs-font) !important;
	font-feature-settings: "ss03" 1;
}

.chs-programs-page,
.chs-programs-page *,
.chs-programs-page *::before,
.chs-programs-page *::after {
	box-sizing: border-box;
}

.chs-programs-page > .wp-block-group__inner-container {
	width: 100%;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Remove residual alignfull offsets and image/table formatting from WP core. */
.chs-programs-page > .alignfull,
.chs-programs-page > .wp-block-group.alignfull {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.chs-programs-page .wp-block-image,
.chs-programs-page figure {
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.chs-programs-page .wp-block-image {
	display: block;
}

.chs-programs-page .wp-block-image img {
	display: block;
}

.chs-programs-page h1,
.chs-programs-page h2,
.chs-programs-page h3,
.chs-programs-page p,
.chs-programs-page figure,
.chs-programs-page .wp-block-group,
.chs-programs-page .wp-block-columns,
.chs-programs-page .wp-block-buttons {
	margin-top: 0;
}

.chs-programs-page h1,
.chs-programs-page h2,
.chs-programs-page h3,
.chs-programs-page .wp-block-heading {
	font-family: var(--chs-programs-display) !important;
	font-style: normal !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

.chs-programs-page p,
.chs-programs-page a,
.chs-programs-page li,
.chs-programs-page .wp-block-button__link {
	font-family: var(--chs-programs-font) !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

.chs-programs-page a {
	box-shadow: none !important;
	text-decoration: none;
}

.chs-programs-page a:focus-visible {
	outline: 3px solid var(--chs-programs-green);
	outline-offset: 4px;
}

/* WordPress may inject .wp-block-group__inner-container on the front end. */
.chs-programs-intro > .wp-block-group__inner-container,
.chs-programs-connect > .wp-block-group__inner-container,
.chs-programs-connect-inner > .wp-block-group__inner-container,
.chs-programs-connect-bar > .wp-block-group__inner-container,
.chs-programs-home-visiting > .wp-block-group__inner-container,
.chs-program-banner > .wp-block-group__inner-container,
.chs-program-banner-panel > .wp-block-group__inner-container,
.chs-programs-other > .wp-block-group__inner-container,
.chs-programs-initiative-card > .wp-block-group__inner-container,
.chs-programs-stats > .wp-block-group__inner-container {
	width: 100%;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Top gray intro. */
.chs-programs-intro,
.chs-programs-intro > .wp-block-group__inner-container {
	display: flex !important;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: none !important;
	margin: 0 !important;
	padding: clamp(34px, 2.6vw, 50px) 34px clamp(30px, 2.25vw, 44px) !important;
	background: var(--chs-programs-light);
	text-align: center;
}

.chs-programs-intro > .wp-block-group__inner-container {
	padding: 0 !important;
}

.chs-programs-page .chs-programs-intro h1 {
	margin: 0 0 clamp(8px, .55vw, 12px) !important;
	color: var(--chs-programs-pink) !important;
	font-size: clamp(34px, 2.35vw, 45px) !important;
	font-weight: 600 !important;
	line-height: 1.05;
}

.chs-programs-intro p {
	margin: 0 !important;
	color: var(--chs-programs-text) !important;
	font-size: clamp(18px, 1.34vw, 26px);
	font-weight: 400;
	line-height: 1.22;
}

/* Connect hero. The uploaded art is a section-specific background, so keep it
 * scaled to the section instead of using generic "cover" cropping.
 */
.chs-programs-connect,
.chs-programs-connect > .wp-block-group__inner-container {
	position: relative;
	width: 100%;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background-color: var(--chs-programs-blue);
	background-image: url("https://www.chsandhsncfcoalitions.org/wp-content/uploads/2026/06/OurPrograms-ConnectHeader.png");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	color: var(--chs-programs-white);
}

.chs-programs-connect > .wp-block-group__inner-container {
	background: transparent;
}

.chs-programs-connect-inner,
.chs-programs-connect-inner > .wp-block-group__inner-container {
	display: flex !important;
	flex-direction: column;
	align-items: center;
	width: var(--chs-programs-shell);
	max-width: none !important;
	margin: 0 auto !important;
	padding: clamp(24px, 1.9vw, 38px) 0 clamp(36px, 2.75vw, 52px) !important;
	text-align: center;
}

.chs-programs-connect-inner > .wp-block-group__inner-container {
	width: 100%;
	padding: 0 !important;
}

.chs-programs-page .chs-programs-connect h2 {
	margin: 0 0 clamp(7px, .55vw, 11px) !important;
	font-size: clamp(34px, 2.35vw, 45px) !important;
	font-weight: 600 !important;
	line-height: 1.05;
}

.chs-programs-page .chs-programs-connect h2 a,
.chs-programs-page .chs-programs-connect h2 a:visited {
	color: var(--chs-programs-white) !important;
	font-family: var(--chs-programs-display) !important;
}

.chs-programs-connect-tagline {
	margin: 0 0 clamp(8px, .6vw, 12px) !important;
	color: var(--chs-programs-white) !important;
	font-size: clamp(19px, 1.45vw, 28px) !important;
	font-style: italic;
	font-weight: 600;
	line-height: 1.15;
}

.chs-programs-connect-copy {
	margin: 0 0 clamp(24px, 1.8vw, 34px) !important;
	color: var(--chs-programs-white) !important;
	font-size: clamp(18px, 1.34vw, 26px) !important;
	font-weight: 400;
	line-height: 1.24;
}

.chs-programs-connect-bar,
.chs-programs-connect-bar > .wp-block-group__inner-container {
	display: grid !important;
	grid-template-columns: minmax(150px, .8fr) minmax(220px, 1.1fr) minmax(270px, 1.45fr) minmax(230px, 1.15fr);
	align-items: stretch;
	width: min(100%, 1320px);
	max-width: none !important;
	margin: 0 auto clamp(24px, 1.9vw, 36px) !important;
	padding: 0 !important;
	background: rgb(243 243 243 / 88%);
	box-shadow: 0 2px 6px rgb(0 0 0 / 10%);
}

.chs-programs-connect-bar > .wp-block-group__inner-container {
	width: 100%;
	margin: 0 !important;
}

.chs-programs-connect-bar > :not(.wp-block-group__inner-container),
.chs-programs-connect-bar > .wp-block-group__inner-container > * {
	min-width: 0;
}

.chs-programs-spanish,
.chs-programs-connect-action,
.chs-programs-referral-wrap {
	position: relative;
	z-index: 2;
	margin: 0 !important;
}

.chs-programs-spanish,
.chs-programs-connect-action {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: clamp(92px, 6.4vw, 123px);
	padding: 10px 16px;
}

.chs-programs-spanish {
	color: var(--chs-programs-pink) !important;
	font-family: var(--chs-programs-display) !important;
	font-size: clamp(24px, 1.875vw, 36px) !important;
	font-weight: 600;
	line-height: 1.02;
}

.chs-programs-connect-action::before {
	position: absolute;
	top: 19%;
	bottom: 19%;
	left: 0;
	width: 2px;
	background: var(--chs-programs-blue);
	content: "";
}

.chs-programs-connect-action .chs-programs-connect-label,
.chs-programs-connect-action a {
	display: block;
	font-family: var(--chs-programs-display) !important;
	font-size: clamp(24px, 2.08vw, 40px) !important;
	font-weight: 600 !important;
	line-height: 1.05;
}

.chs-programs-connect-action .chs-programs-connect-label {
	color: var(--chs-programs-pink);
}

.chs-programs-connect-action a,
.chs-programs-connect-action a:visited {
	margin-top: 2px;
	color: var(--chs-programs-blue) !important;
}

.chs-programs-referral-wrap {
	display: flex !important;
	align-items: center;
	justify-content: center;
	padding: 12px clamp(14px, 1.15vw, 22px);
}

.chs-programs-referral-wrap .wp-block-button {
	width: 100%;
	margin: 0 !important;
}

.chs-programs-page .chs-programs-referral .wp-block-button__link,
.chs-programs-page .chs-programs-referral .wp-block-button__link:visited {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: clamp(58px, 4.15vw, 80px);
	padding: 10px 18px;
	border-radius: 7px;
	background: var(--chs-programs-pink) !important;
	color: var(--chs-programs-white) !important;
	font-family: var(--chs-programs-display) !important;
	font-size: clamp(24px, 2.08vw, 40px) !important;
	font-weight: 600 !important;
	line-height: 1.05;
}

.chs-programs-page .chs-programs-referral .wp-block-button__link:hover,
.chs-programs-page .chs-programs-referral .wp-block-button__link:focus-visible {
	background: var(--chs-programs-green) !important;
}

.chs-programs-connect-getting-started {
	margin: 0 !important;
	color: var(--chs-programs-white) !important;
	font-size: clamp(17px, 1.28vw, 24px) !important;
	font-weight: 400;
	line-height: 1.2;
}

/* Home visiting intro between Connect and the program banners. */
.chs-programs-home-visiting,
.chs-programs-home-visiting > .wp-block-group__inner-container,
.chs-programs-other,
.chs-programs-other > .wp-block-group__inner-container {
	width: var(--chs-programs-shell);
	max-width: none !important;
	margin-right: auto !important;
	margin-left: auto !important;
	padding: 0 !important;
	text-align: center;
}

.chs-programs-home-visiting {
	padding-top: clamp(24px, 1.8vw, 34px) !important;
	padding-bottom: clamp(22px, 1.6vw, 32px) !important;
}

.chs-programs-home-visiting > .wp-block-group__inner-container,
.chs-programs-other > .wp-block-group__inner-container {
	width: 100%;
}

.chs-programs-page .chs-programs-home-visiting h2,
.chs-programs-page .chs-programs-other h2 {
	margin: 0 0 clamp(7px, .5vw, 10px) !important;
	color: var(--chs-programs-pink) !important;
	font-size: clamp(31px, 2.2vw, 42px) !important;
	font-weight: 600 !important;
	line-height: 1.05;
}

.chs-programs-home-visiting p,
.chs-programs-other > p,
.chs-programs-other > .wp-block-group__inner-container > p {
	margin: 0 !important;
	color: var(--chs-programs-text) !important;
	font-size: clamp(17px, 1.24vw, 24px) !important;
	font-weight: 400;
	line-height: 1.22;
}

.chs-programs-home-visiting a,
.chs-programs-home-visiting a:visited {
	color: var(--chs-programs-pink) !important;
	font-weight: 700;
}

.chs-programs-home-visiting a:hover,
.chs-programs-home-visiting a:focus-visible {
	color: var(--chs-programs-green) !important;
}

/*
 * WordPress group wrapper handling.
 * On this site Group blocks render a .wp-block-group__inner-container. If both
 * the outer group and that inner wrapper are grids, the inner wrapper becomes
 * the first grid cell and the entire section is squeezed into roughly half of
 * the available width. Keep the editable outer Group as a block and put the
 * actual grid on its generated inner wrapper.
 */
.chs-programs-connect-bar:has(> .wp-block-group__inner-container) {
	display: block !important;
}

.chs-programs-connect-bar > .wp-block-group__inner-container {
	display: grid !important;
	grid-template-columns: minmax(150px, .8fr) minmax(220px, 1.1fr) minmax(270px, 1.45fr) minmax(230px, 1.15fr);
	align-items: stretch;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.chs-programs-page .chs-program-banner:has(> .wp-block-group__inner-container) {
	display: block !important;
}

/* Program banners: page 5 uses edge-to-edge alternating bands. */
.chs-programs-page .chs-program-banner {
	position: relative;
	width: 100% !important;
	max-width: none !important;
	min-height: clamp(360px, 31.25vw, 600px);
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden;
}

.chs-programs-page .chs-program-banner:not(:has(> .wp-block-group__inner-container)) {
	display: grid !important;
	grid-template-columns: 56.5% 43.5%;
	align-items: stretch;
}

.chs-programs-page .chs-program-banner-photo-left:not(:has(> .wp-block-group__inner-container)) {
	grid-template-columns: 43.5% 56.5%;
}

.chs-programs-page .chs-program-banner > .wp-block-group__inner-container {
	display: grid !important;
	grid-template-columns: 56.5% 43.5%;
	align-items: stretch;
	width: 100% !important;
	max-width: none !important;
	min-height: inherit;
	margin: 0 !important;
	padding: 0 !important;
}

.chs-programs-page .chs-program-banner-photo-left > .wp-block-group__inner-container {
	grid-template-columns: 43.5% 56.5%;
}

.chs-program-banner-overlay,
.chs-programs-card-overlay {
	position: absolute;
	inset: 0;
	z-index: 5;
	display: block;
}

.chs-program-banner-overlay:focus-visible,
.chs-programs-card-overlay:focus-visible {
	outline: 5px solid var(--chs-programs-white);
	outline-offset: -8px;
}

.chs-program-banner-panel,
.chs-program-banner-panel > .wp-block-group__inner-container {
	display: flex !important;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	max-width: none !important;
	margin: 0 !important;
	padding: clamp(30px, 2.75vw, 53px) clamp(34px, 4.2vw, 80px) !important;
	color: var(--chs-programs-white);
	text-align: center;
}

.chs-program-banner-panel > .wp-block-group__inner-container {
	padding: 0 !important;
}

.chs-program-banner-hs .chs-program-banner-panel,
.chs-program-banner-hs .chs-program-banner-panel > .wp-block-group__inner-container {
	background: var(--chs-programs-pink);
}

.chs-program-banner-pat .chs-program-banner-panel,
.chs-program-banner-pat .chs-program-banner-panel > .wp-block-group__inner-container {
	background: var(--chs-programs-pat);
}

.chs-program-banner-newborn .chs-program-banner-panel,
.chs-program-banner-newborn .chs-program-banner-panel > .wp-block-group__inner-container {
	background: var(--chs-programs-newborn);
}

.chs-program-banner-nfp .chs-program-banner-panel,
.chs-program-banner-nfp .chs-program-banner-panel > .wp-block-group__inner-container {
	background: var(--chs-programs-nfp);
}

.chs-program-banner-team .chs-program-banner-panel,
.chs-program-banner-team .chs-program-banner-panel > .wp-block-group__inner-container {
	background: var(--chs-programs-team);
}

.chs-program-banner-doula .chs-program-banner-panel,
.chs-program-banner-doula .chs-program-banner-panel > .wp-block-group__inner-container {
	background: var(--chs-programs-doula);
}

.chs-program-banner-photo {
	position: relative;
	z-index: 1;
	display: block;
	width: 100% !important;
	height: 100%;
	margin: 0 !important;
	padding: 0;
	overflow: hidden;
	font-size: 0;
	line-height: 0;
}

.chs-program-banner-panel-left .chs-program-banner-photo {
	border-radius: 50% 0 0 50% / 50% 0 0 50%;
}

.chs-program-banner-photo-left .chs-program-banner-photo {
	border-radius: 0 50% 50% 0 / 0 50% 50% 0;
}

.chs-program-banner-photo img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0;
	object-fit: cover;
}

.chs-program-banner-hs .chs-program-banner-photo img {
	object-position: 50% 48%;
}

.chs-program-banner-pat .chs-program-banner-photo img {
	object-position: 54% 50%;
}

.chs-program-banner-newborn .chs-program-banner-photo img {
	object-position: 50% 50%;
}

.chs-program-banner-nfp .chs-program-banner-photo img {
	object-position: 50% 50%;
}

.chs-program-banner-team .chs-program-banner-photo img {
	object-position: 50% 47%;
}

.chs-program-banner-doula .chs-program-banner-photo img {
	object-position: 51% 50%;
}

.chs-program-banner-logo {
	width: min(100%, 500px) !important;
	margin: 0 auto clamp(18px, 1.4vw, 27px) !important;
	padding: 0;
	font-size: 0;
	line-height: 0;
}

.chs-program-banner-logo img {
	display: block;
	width: 100% !important;
	height: auto !important;
	max-height: clamp(92px, 9.5vw, 182px);
	margin: 0 auto;
	object-fit: contain;
}

.chs-program-banner-pat .chs-program-banner-logo,
.chs-program-banner-nfp .chs-program-banner-logo {
	width: min(100%, 560px) !important;
}

.chs-program-banner-newborn .chs-program-banner-logo {
	width: min(100%, 520px) !important;
}

.chs-program-banner-team .chs-program-banner-logo {
	width: min(100%, 430px) !important;
}

.chs-program-banner-doula .chs-program-banner-logo {
	width: min(100%, 500px) !important;
}

.chs-program-banner-tagline,
.chs-program-banner-copy,
.chs-program-banner-acronym {
	position: relative;
	z-index: 2;
	max-width: 860px;
	margin-right: auto !important;
	margin-left: auto !important;
	color: var(--chs-programs-white) !important;
	font-size: clamp(21px, 1.667vw, 32px) !important;
	line-height: 1.2;
}

.chs-program-banner-tagline {
	margin-top: 0 !important;
	margin-bottom: clamp(12px, .9vw, 17px) !important;
	font-style: italic;
	font-weight: 600;
}

.chs-program-banner-copy {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	font-weight: 400;
}

.chs-program-banner-acronym {
	margin-top: -3px !important;
	margin-bottom: clamp(10px, .75vw, 15px) !important;
	font-weight: 400;
}

.chs-program-banner-acronym strong {
	font-weight: 700;
}

/* Other initiatives and statistic strip. */
.chs-programs-other {
	padding-top: clamp(26px, 1.8vw, 34px) !important;
	padding-bottom: clamp(30px, 2.2vw, 42px) !important;
}

.chs-programs-other-grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(18px, 1.5vw, 28px);
	width: 100%;
	margin: clamp(24px, 1.8vw, 34px) 0 0 !important;
}

.chs-programs-other-grid > .wp-block-column {
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
}

.chs-programs-initiative-card,
.chs-programs-initiative-card > .wp-block-group__inner-container {
	position: relative;
	display: flex !important;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: clamp(145px, 10.6vw, 206px);
	margin: 0 !important;
	padding: clamp(20px, 1.55vw, 30px) 24px !important;
	color: var(--chs-programs-white);
	text-align: center;
}

.chs-programs-initiative-card > .wp-block-group__inner-container {
	width: 100%;
	padding: 0 !important;
}

.chs-programs-fimr-card,
.chs-programs-fimr-card > .wp-block-group__inner-container {
	background: var(--chs-programs-fimr);
}

.chs-programs-milk-card,
.chs-programs-milk-card > .wp-block-group__inner-container {
	background: var(--chs-programs-milk);
}

.chs-programs-page .chs-programs-initiative-card h3 {
	position: relative;
	z-index: 2;
	margin: 0 0 7px !important;
	color: var(--chs-programs-white) !important;
	font-size: clamp(24px, 1.72vw, 33px) !important;
	font-weight: 600 !important;
	line-height: 1.08;
}

.chs-programs-initiative-card p {
	position: relative;
	z-index: 2;
	margin: 0 !important;
	color: var(--chs-programs-white) !important;
	font-size: clamp(16px, 1.12vw, 22px) !important;
	font-weight: 400;
	line-height: 1.2;
}

.chs-programs-initiative-card .chs-programs-card-tagline {
	margin-bottom: 6px !important;
	font-style: italic;
	font-weight: 600;
}

.chs-programs-stats,
.chs-programs-stats > .wp-block-group__inner-container {
	width: 100%;
	max-width: none !important;
	margin: 0 !important;
	padding: clamp(30px, 2.15vw, 42px) 34px clamp(31px, 2.2vw, 44px) !important;
	background: var(--chs-programs-light);
}

.chs-programs-stats > .wp-block-group__inner-container {
	padding: 0 !important;
}

.chs-programs-stats-grid {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	width: var(--chs-programs-shell);
	margin: 0 auto !important;
}

.chs-programs-stats-grid > .wp-block-column {
	position: relative;
	min-width: 0;
	margin: 0 !important;
	padding: 0 clamp(16px, 1.55vw, 28px) !important;
	text-align: center;
}

.chs-programs-stats-grid > .wp-block-column + .wp-block-column::before {
	position: absolute;
	top: 8%;
	bottom: 8%;
	left: 0;
	border-left: 2px dotted var(--chs-programs-green);
	content: "";
}

.chs-programs-stat p {
	margin: 0 !important;
	color: var(--chs-programs-pink) !important;
	font-family: var(--chs-programs-display) !important;
	font-size: clamp(18px, 1.28vw, 24px) !important;
	font-weight: 600;
	line-height: 1.1;
}

.chs-programs-stat .chs-programs-stat-number {
	margin-bottom: 4px !important;
	font-size: clamp(28px, 2vw, 38px) !important;
}

@media (max-width: 1240px) {
	.chs-programs-connect-bar,
	.chs-programs-connect-bar > .wp-block-group__inner-container {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.chs-programs-connect-action:nth-of-type(2)::before,
	.chs-programs-referral-wrap::before {
		display: none;
	}

	.chs-programs-connect-bar > :nth-child(n+3),
	.chs-programs-connect-bar > .wp-block-group__inner-container > :nth-child(n+3) {
		border-top: 1px solid rgb(29 67 140 / 35%);
	}

	.chs-programs-stats-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: 28px;
	}

	.chs-programs-stats-grid > .wp-block-column:nth-child(3)::before {
		display: none;
	}
}

/* Stack the alternating banners sooner so intermediate widths do not look like
 * squeezed mini-columns.
 */
@media (max-width: 1120px) {
	.chs-programs-desktop-break {
		display: none;
	}

	.chs-programs-home-visiting,
	.chs-programs-other,
	.chs-programs-connect-inner,
	.chs-programs-connect-inner > .wp-block-group__inner-container,
	.chs-programs-stats-grid {
		width: min(calc(100% - 40px), var(--chs-programs-max));
	}

	.chs-programs-page .chs-program-banner {
		width: 100% !important;
	}

	.chs-programs-page .chs-program-banner:not(:has(> .wp-block-group__inner-container)),
	.chs-programs-page .chs-program-banner > .wp-block-group__inner-container {
		grid-template-columns: 1fr !important;
		min-height: 0;
	}

	.chs-programs-page .chs-program-banner {
		min-height: 0;
	}

	.chs-program-banner-photo,
	.chs-program-banner-panel {
		grid-column: 1;
	}

	.chs-program-banner-photo {
		grid-row: 1;
		height: clamp(250px, 48vw, 440px);
		border-radius: 0 !important;
	}

	.chs-program-banner-panel {
		grid-row: 2;
		min-height: clamp(220px, 36vw, 360px);
		padding: 30px 24px !important;
	}

	.chs-program-banner-logo {
		width: min(76%, 410px) !important;
	}

	.chs-programs-other-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 620px) {
	.chs-programs-intro,
	.chs-programs-intro > .wp-block-group__inner-container,
	.chs-programs-stats,
	.chs-programs-stats > .wp-block-group__inner-container {
		padding-right: 20px !important;
		padding-left: 20px !important;
	}

	.chs-programs-connect,
	.chs-programs-connect > .wp-block-group__inner-container {
		background-size: cover;
	}

	.chs-programs-connect-bar,
	.chs-programs-connect-bar > .wp-block-group__inner-container {
		grid-template-columns: 1fr;
	}

	.chs-programs-connect-action::before {
		display: none;
	}

	.chs-programs-connect-bar > :nth-child(n+2),
	.chs-programs-connect-bar > .wp-block-group__inner-container > :nth-child(n+2) {
		border-top: 1px solid rgb(29 67 140 / 35%);
	}

	.chs-programs-home-visiting,
	.chs-programs-other,
	.chs-programs-connect-inner,
	.chs-programs-connect-inner > .wp-block-group__inner-container,
	.chs-programs-stats-grid {
		width: min(calc(100% - 20px), var(--chs-programs-max));
	}

	.chs-programs-page .chs-program-banner {
		width: 100% !important;
	}

	.chs-programs-stats-grid {
		grid-template-columns: 1fr;
		row-gap: 0;
	}

	.chs-programs-stats-grid > .wp-block-column {
		padding: 24px 10px !important;
	}

	.chs-programs-stats-grid > .wp-block-column + .wp-block-column::before,
	.chs-programs-stats-grid > .wp-block-column:nth-child(3)::before {
		display: block;
		top: 0;
		right: 15%;
		bottom: auto;
		left: 15%;
		border-top: 2px dotted var(--chs-programs-green);
		border-left: 0;
	}
}


/* ========================================================================
 * BUILD 1.0.3 HARD WORDPRESS GROUP-WRAPPER OVERRIDES
 *
 * Do not use :has() for the critical banner/contact geometry. On the live
 * site these Group blocks DO have .wp-block-group__inner-container wrappers.
 * Force the outer group to be a normal block and make ONLY the generated
 * inner wrapper the layout grid. This prevents the wrapper itself from being
 * placed in column 1 of a second grid (the exact half-width failure seen live).
 * ======================================================================== */

/* Connect contact strip: outer block owns width/background; inner wrapper is grid. */
body.chs-alt-template .chs-programs-page .chs-programs-connect-bar {
	display: block !important;
	width: min(100%, 1320px) !important;
	max-width: 1320px !important;
	margin: 0 auto clamp(28px, 2vw, 38px) !important;
	padding: 0 !important;
	background: rgb(205 216 234 / 96%) !important;
	box-shadow: 0 2px 5px rgb(0 0 0 / 12%);
}

body.chs-alt-template .chs-programs-page .chs-programs-connect-bar > .wp-block-group__inner-container {
	display: grid !important;
	grid-template-columns: minmax(150px, .8fr) minmax(220px, 1.1fr) minmax(270px, 1.45fr) minmax(230px, 1.15fr) !important;
	align-items: stretch !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}

/* Program rows: the OUTER group must never be a grid on the live WP markup. */
body.chs-alt-template .chs-programs-page .chs-program-banner {
	position: relative !important;
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	min-height: clamp(360px, 31.25vw, 600px) !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

/* The generated inner wrapper is the one and only two-column grid. */
body.chs-alt-template .chs-programs-page .chs-program-banner > .wp-block-group__inner-container {
	display: grid !important;
	grid-template-columns: 56.5% 43.5% !important;
	align-items: stretch !important;
	width: 100% !important;
	max-width: none !important;
	height: 100% !important;
	min-height: inherit !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.chs-alt-template .chs-programs-page .chs-program-banner-photo-left > .wp-block-group__inner-container {
	grid-template-columns: 43.5% 56.5% !important;
}

/* Make the two real cells fill their tracks; remove any legacy WP max widths. */
body.chs-alt-template .chs-programs-page .chs-program-banner > .wp-block-group__inner-container > .chs-program-banner-panel,
body.chs-alt-template .chs-programs-page .chs-program-banner > .wp-block-group__inner-container > .chs-program-banner-photo {
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	height: 100% !important;
	margin: 0 !important;
}

body.chs-alt-template .chs-programs-page .chs-program-banner-panel {
	min-height: inherit !important;
}

body.chs-alt-template .chs-programs-page .chs-program-banner-photo {
	min-height: inherit !important;
}

body.chs-alt-template .chs-programs-page .chs-program-banner-photo img {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	height: 100% !important;
	min-height: inherit !important;
	object-fit: cover !important;
}

/* The mockup's Connect art is a full-section composition, not a generic crop. */
body.chs-alt-template .chs-programs-page .chs-programs-connect,
body.chs-alt-template .chs-programs-page .chs-programs-connect > .wp-block-group__inner-container {
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: 100% 100% !important;
}

/* Tablet/mobile: keep the same wrapper architecture, but stack each row. */
@media (max-width: 1120px) {
	body.chs-alt-template .chs-programs-page .chs-program-banner {
		min-height: 0 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-program-banner > .wp-block-group__inner-container,
	body.chs-alt-template .chs-programs-page .chs-program-banner-photo-left > .wp-block-group__inner-container {
		grid-template-columns: 1fr !important;
		min-height: 0 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-program-banner-photo {
		grid-column: 1 !important;
		grid-row: 1 !important;
		height: clamp(280px, 68vw, 470px) !important;
		min-height: 0 !important;
		border-radius: 0 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-program-banner-panel {
		grid-column: 1 !important;
		grid-row: 2 !important;
		min-height: clamp(300px, 62vw, 460px) !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-bar > .wp-block-group__inner-container {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 620px) {
	body.chs-alt-template .chs-programs-page .chs-programs-connect-bar > .wp-block-group__inner-container {
		grid-template-columns: 1fr !important;
	}
}


/* ========================================================================
 * BUILD 1.0.4 PDF FIDELITY CORRECTIONS
 * - Connect art already contains the pale-blue contact band: controls must be
 *   transparent over it, not placed inside a second rectangle.
 * - Program photos are opaque source images. The curved effect is produced by
 *   clipping the photo over the program-row background color.
 * - Page-5 typography below is scaled from the actual PDF font sizes.
 * ======================================================================== */

/* Exact page-5 panel colors sampled from the PDF. */
body.chs-alt-template .chs-programs-page {
	--chs-programs-pat: #6d5ea1;
	--chs-programs-newborn: #3eb6e7;
	--chs-programs-nfp: #33769f;
	--chs-programs-team: #7ac142;
	--chs-programs-doula: #f288b7;
	--chs-programs-fimr: #677bae;
	--chs-programs-milk: #e5bf73;
}

/* The background PNG already contains the #c2cade horizontal band. */
body.chs-alt-template .chs-programs-page .chs-programs-connect-bar {
	background: transparent !important;
	box-shadow: none !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-connect-bar > .wp-block-group__inner-container {
	background: transparent !important;
	box-shadow: none !important;
}

/* In the PDF only the Spanish callout is a white card; Call/Text sit directly
 * on the built-in blue-gray stripe and the referral button is pink.
 */
body.chs-alt-template .chs-programs-page .chs-programs-spanish {
	align-self: center;
	min-height: 0;
	margin: 12px 18px !important;
	padding: 10px 16px !important;
	border-radius: 12px;
	background: #fff !important;
	font-size: clamp(26px, 1.875vw, 36px) !important;
	font-weight: 400 !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-connect-action .chs-programs-connect-label,
body.chs-alt-template .chs-programs-page .chs-programs-connect-action a,
body.chs-alt-template .chs-programs-page .chs-programs-referral .wp-block-button__link {
	font-weight: 400 !important;
}

/* PDF typography: 48px Bree heading, 32px Livvic tagline/body, 31.2px lower copy
 * at the 1920px mockup width. The vw values preserve that ratio responsively.
 */
body.chs-alt-template .chs-programs-page .chs-programs-connect h2 {
	font-size: clamp(36px, 2.5vw, 48px) !important;
	font-weight: 400 !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-connect-tagline {
	color: #ee75b2 !important;
	font-size: clamp(22px, 1.667vw, 32px) !important;
	font-weight: 600 !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-connect-copy {
	font-size: clamp(21px, 1.667vw, 32px) !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-connect-getting-started {
	font-size: clamp(20px, 1.625vw, 31.2px) !important;
}

/* About Our Programs and the two white-section descriptions were noticeably
 * undersized. Match the PDF's Bree/Livvic sizing and regular Bree weight.
 */
body.chs-alt-template .chs-programs-page .chs-programs-intro h1 {
	font-size: clamp(36px, 2.5vw, 48px) !important;
	font-weight: 400 !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-intro p {
	font-size: clamp(20px, 1.625vw, 31.2px) !important;
	line-height: 1.2 !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-home-visiting {
	padding-top: clamp(30px, 2.1vw, 40px) !important;
	padding-bottom: clamp(30px, 2.1vw, 40px) !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-home-visiting h2,
body.chs-alt-template .chs-programs-page .chs-programs-other h2 {
	font-size: clamp(34px, 2.438vw, 46.8px) !important;
	font-weight: 400 !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-home-visiting p,
body.chs-alt-template .chs-programs-page .chs-programs-other > p,
body.chs-alt-template .chs-programs-page .chs-programs-other > .wp-block-group__inner-container > p {
	font-size: clamp(20px, 1.625vw, 31.2px) !important;
	line-height: 1.2 !important;
}

/* The photo PNGs themselves are opaque. Give the whole row its panel color so
 * the clipped-away corners reveal the intended color rather than page white.
 */
body.chs-alt-template .chs-programs-page .chs-program-banner-hs,
body.chs-alt-template .chs-programs-page .chs-program-banner-hs > .wp-block-group__inner-container {
	background: var(--chs-programs-pink) !important;
}
body.chs-alt-template .chs-programs-page .chs-program-banner-pat,
body.chs-alt-template .chs-programs-page .chs-program-banner-pat > .wp-block-group__inner-container {
	background: var(--chs-programs-pat) !important;
}
body.chs-alt-template .chs-programs-page .chs-program-banner-newborn,
body.chs-alt-template .chs-programs-page .chs-program-banner-newborn > .wp-block-group__inner-container {
	background: var(--chs-programs-newborn) !important;
}
body.chs-alt-template .chs-programs-page .chs-program-banner-nfp,
body.chs-alt-template .chs-programs-page .chs-program-banner-nfp > .wp-block-group__inner-container {
	background: var(--chs-programs-nfp) !important;
}
body.chs-alt-template .chs-programs-page .chs-program-banner-team,
body.chs-alt-template .chs-programs-page .chs-program-banner-team > .wp-block-group__inner-container {
	background: var(--chs-programs-team) !important;
}
body.chs-alt-template .chs-programs-page .chs-program-banner-doula,
body.chs-alt-template .chs-programs-page .chs-program-banner-doula > .wp-block-group__inner-container {
	background: var(--chs-programs-doula) !important;
}

/* Page 5 uses different accent colors for each italic program tagline. */
body.chs-alt-template .chs-programs-page .chs-program-banner-hs .chs-program-banner-tagline { color: #c3e0a8 !important; }
body.chs-alt-template .chs-programs-page .chs-program-banner-pat .chs-program-banner-tagline { color: #5ab0e0 !important; }
body.chs-alt-template .chs-programs-page .chs-program-banner-newborn .chs-program-banner-tagline { color: #bde49e !important; }
body.chs-alt-template .chs-programs-page .chs-program-banner-nfp .chs-program-banner-tagline { color: #b2ccdb !important; }
body.chs-alt-template .chs-programs-page .chs-program-banner-team .chs-program-banner-tagline,
body.chs-alt-template .chs-programs-page .chs-program-banner-doula .chs-program-banner-tagline { color: #1e448c !important; }

/* Bottom intro/card typography: PDF uses 46.8px Bree section heading,
 * 48px Bree card headings and 32px Livvic card copy/taglines.
 */
body.chs-alt-template .chs-programs-page .chs-programs-other {
	padding-top: clamp(36px, 2.6vw, 50px) !important;
	padding-bottom: clamp(42px, 3vw, 58px) !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-other-grid {
	margin-top: clamp(32px, 2.35vw, 45px) !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-initiative-card,
body.chs-alt-template .chs-programs-page .chs-programs-initiative-card > .wp-block-group__inner-container {
	min-height: clamp(205px, 15vw, 288px) !important;
	padding: clamp(24px, 1.8vw, 35px) 28px !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-initiative-card > .wp-block-group__inner-container {
	padding: 0 !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-initiative-card h3 {
	font-size: clamp(34px, 2.5vw, 48px) !important;
	font-weight: 400 !important;
	line-height: 1.05 !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-initiative-card p {
	font-size: clamp(21px, 1.667vw, 32px) !important;
	line-height: 1.18 !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-fimr-card .chs-programs-card-tagline {
	color: #c3e0a8 !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-milk-card .chs-programs-card-tagline {
	color: #4ba196 !important;
}

/* The statistic strip was also substantially below the PDF size: 48px numbers
 * and 36px Bree labels at 1920px.
 */
body.chs-alt-template .chs-programs-page .chs-programs-stats,
body.chs-alt-template .chs-programs-page .chs-programs-stats > .wp-block-group__inner-container {
	padding-top: clamp(38px, 2.7vw, 52px) !important;
	padding-bottom: clamp(40px, 2.8vw, 54px) !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-stats > .wp-block-group__inner-container {
	padding-right: 0 !important;
	padding-left: 0 !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-stat .chs-programs-stat-number {
	font-size: clamp(34px, 2.5vw, 48px) !important;
	font-weight: 400 !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-stat p {
	font-size: clamp(25px, 1.875vw, 36px) !important;
	font-weight: 400 !important;
	line-height: 1.08 !important;
}

/* Preserve sensible compact behavior once the page truly reaches tablet/mobile
 * widths rather than simply shrinking the desktop PDF typography forever.
 */
@media (max-width: 900px) {
	body.chs-alt-template .chs-programs-page .chs-programs-intro p,
	body.chs-alt-template .chs-programs-page .chs-programs-home-visiting p,
	body.chs-alt-template .chs-programs-page .chs-programs-other > p,
	body.chs-alt-template .chs-programs-page .chs-programs-other > .wp-block-group__inner-container > p {
		font-size: 19px !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-initiative-card h3 {
		font-size: 32px !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-initiative-card p {
		font-size: 19px !important;
	}
}

@media (max-width: 620px) {
	body.chs-alt-template .chs-programs-page .chs-programs-spanish {
		margin: 10px auto !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-stat p {
		font-size: 22px !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-stat .chs-programs-stat-number {
		font-size: 32px !important;
	}
}


/* ========================================================================
 * BUILD 1.0.5 CONNECT / PHOTO-ASPECT / WRAPPING CORRECTIONS
 * ======================================================================== */

/*
 * The Connect artwork in the PDF intentionally extends beyond the viewport.
 * Oversize the background a little horizontally and clip it at the section
 * edges. This produces the cropped pink/blue "burst" seen in the mockup.
 */
body.chs-alt-template .chs-programs-page .chs-programs-connect {
	overflow: hidden !important;
	background-position: center center !important;
	background-size: 112% 100% !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-connect > .wp-block-group__inner-container {
	background-position: center center !important;
	background-size: 112% 100% !important;
}

/* Restore the taller vertical proportion of the page-5 Connect composition. */
body.chs-alt-template .chs-programs-page .chs-programs-connect-inner,
body.chs-alt-template .chs-programs-page .chs-programs-connect-inner > .wp-block-group__inner-container {
	min-height: clamp(580px, 39.375vw, 756px) !important;
	padding-top: clamp(44px, 3vw, 58px) !important;
	padding-bottom: clamp(58px, 4vw, 78px) !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-connect-inner > .wp-block-group__inner-container {
	min-height: 0 !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
}

/*
 * At 1680px the old 1320px maximum occupied almost 79% of the viewport,
 * spreading the four contact items too far apart. Keep the same ~66% ratio
 * used by the 1920px mockup instead.
 */
body.chs-alt-template .chs-programs-page .chs-programs-connect-bar {
	width: 66% !important;
	max-width: 1265px !important;
	margin-bottom: clamp(48px, 3.4vw, 65px) !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-connect-bar > .wp-block-group__inner-container {
	grid-template-columns: 16% 25% 32% 27% !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-spanish {
	margin: 10px 9px !important;
	padding: 8px 10px !important;
	border-radius: 9px !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-connect-action {
	padding-right: 8px !important;
	padding-left: 8px !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-referral-wrap {
	padding-right: 8px !important;
	padding-left: 8px !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-referral .wp-block-button__link,
body.chs-alt-template .chs-programs-page .chs-programs-referral .wp-block-button__link:visited {
	width: clamp(210px, 15.1vw, 290px) !important;
	max-width: 100% !important;
	margin-right: auto !important;
	margin-left: auto !important;
	padding-right: 14px !important;
	padding-left: 14px !important;
}

/*
 * Desktop program photos are ~1160x837 in the supplied artwork. Let that
 * source aspect ratio establish each grid-row height instead of forcing both
 * width and height on the image. This prevents any perceived stretching and
 * preserves the same photo proportions used in the PDF.
 */
@media (min-width: 1121px) {
	body.chs-alt-template .chs-programs-page .chs-program-banner {
		min-height: 0 !important;
		height: auto !important;
	}

	body.chs-alt-template .chs-programs-page .chs-program-banner > .wp-block-group__inner-container,
	body.chs-alt-template .chs-programs-page .chs-program-banner-photo-left > .wp-block-group__inner-container {
		height: auto !important;
		min-height: 0 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-program-banner-photo {
		align-self: start !important;
		height: auto !important;
		min-height: 0 !important;
		aspect-ratio: 1160 / 837;
	}

	body.chs-alt-template .chs-programs-page .chs-program-banner-photo img {
		display: block !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		aspect-ratio: auto !important;
		object-fit: initial !important;
	}

	body.chs-alt-template .chs-programs-page .chs-program-banner-panel {
		align-self: stretch !important;
		height: auto !important;
		min-height: 0 !important;
	}
}

/*
 * The hard <br> tags were causing "early" to become a one-word line at the
 * current desktop width. Let this paragraph wrap naturally and balance the
 * lines instead. The rest of the page keeps its intentional PDF line breaks.
 */
body.chs-alt-template .chs-programs-page .chs-programs-other .chs-programs-desktop-break {
	display: none !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-other > p,
body.chs-alt-template .chs-programs-page .chs-programs-other > .wp-block-group__inner-container > p {
	width: min(100%, 1760px) !important;
	margin-right: auto !important;
	margin-left: auto !important;
	line-height: 1.24 !important;
	text-wrap: balance;
}

/* Keep the contact bar usable before the full mobile layout takes over. */
@media (max-width: 1240px) and (min-width: 621px) {
	body.chs-alt-template .chs-programs-page .chs-programs-connect-bar {
		width: min(86%, 900px) !important;
	}
}

@media (max-width: 620px) {
	body.chs-alt-template .chs-programs-page .chs-programs-connect {
		background-size: cover !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-bar {
		width: min(calc(100% - 24px), 520px) !important;
	}
}


/* ========================================================================
 * BUILD 1.0.6 CONNECT ALIGNMENT / TRUE PDF OVALS / COPY WRAP
 * ======================================================================== */

/*
 * Desktop Connect geometry from page 5 of the 1920px PDF:
 *   whole Connect section = 756px (39.375vw)
 *   top blue field         = 297px (39.29%)
 *   pale-blue stripe       = 188px (24.87%)
 *   lower blue field       = 271px (35.84%)
 *
 * Earlier builds let the content make the section taller, which also scaled
 * the stripe taller. Lock the desktop section to the PDF aspect and position
 * its editable blocks over the supplied background artwork.
 */
@media (min-width: 1121px) {
	body.chs-alt-template .chs-programs-page .chs-programs-connect,
	body.chs-alt-template .chs-programs-page .chs-programs-connect > .wp-block-group__inner-container {
		height: clamp(520px, 39.375vw, 756px) !important;
		min-height: 0 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-inner {
		display: block !important;
		width: 100% !important;
		height: 100% !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-inner > .wp-block-group__inner-container {
		position: relative !important;
		display: block !important;
		width: 100% !important;
		max-width: none !important;
		height: 100% !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect h2,
	body.chs-alt-template .chs-programs-page .chs-programs-connect-tagline,
	body.chs-alt-template .chs-programs-page .chs-programs-connect-copy,
	body.chs-alt-template .chs-programs-page .chs-programs-connect-getting-started {
		position: absolute !important;
		right: 34px !important;
		left: 34px !important;
		width: auto !important;
		margin: 0 !important;
		text-align: center !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect h2 {
		top: 7.4% !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-tagline {
		top: 15.8% !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-copy {
		top: 23.0% !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-getting-started {
		top: 71.0% !important;
	}

	/* Contact controls occupy exactly the pale-blue stripe in the artwork. */
	body.chs-alt-template .chs-programs-page .chs-programs-connect-bar {
		position: absolute !important;
		top: 39.29% !important;
		left: 50% !important;
		width: 66% !important;
		max-width: 1265px !important;
		height: 24.87% !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		transform: translateX(-50%);
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-bar > .wp-block-group__inner-container {
		grid-template-columns: 14.5% 27.5% 30.5% 27.5% !important;
		align-items: stretch !important;
		height: 100% !important;
		min-height: 0 !important;
	}

	/* The PDF has NO separator between the Spanish card and CALL. It has two
	 * separators: after CALL and after TEXT / before Referral Form.
	 */
	body.chs-alt-template .chs-programs-page .chs-programs-connect-call::before {
		display: none !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-text::before,
	body.chs-alt-template .chs-programs-page .chs-programs-referral-wrap::before {
		position: absolute !important;
		top: 25% !important;
		bottom: 25% !important;
		left: 0 !important;
		display: block !important;
		width: 2px !important;
		background: var(--chs-programs-blue) !important;
		content: "" !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-spanish {
		align-self: center !important;
		justify-self: center !important;
		width: 88% !important;
		height: 54% !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 4px 8px !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-action {
		align-items: flex-start !important;
		justify-content: center !important;
		height: 100% !important;
		min-height: 0 !important;
		padding: 0 8% 0 14% !important;
		text-align: left !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-action .chs-programs-connect-label,
	body.chs-alt-template .chs-programs-page .chs-programs-connect-action a {
		width: 100% !important;
		text-align: left !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-referral-wrap {
		position: relative !important;
		height: 100% !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-referral-wrap .wp-block-button {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		height: 100% !important;
		margin: 0 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-referral .wp-block-button__link,
	body.chs-alt-template .chs-programs-page .chs-programs-referral .wp-block-button__link:visited {
		width: 82% !important;
		max-width: none !important;
		height: 54% !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 4px 12px !important;
	}
}

/*
 * The uploaded Program-Banners PNGs are the same underlying photos used in the
 * mockup. The mismatch was the CSS mask: a 50% horizontal radius cut a very
 * deep half-ellipse into each photo. The PDF's curve only reaches about 14-15%
 * into the photo cell horizontally while remaining 50% tall vertically.
 */
body.chs-alt-template .chs-programs-page .chs-program-banner-panel-left .chs-program-banner-photo {
	border-radius: 14.5% 0 0 14.5% / 50% 0 0 50% !important;
}

body.chs-alt-template .chs-programs-page .chs-program-banner-photo-left .chs-program-banner-photo {
	border-radius: 0 14.5% 14.5% 0 / 0 50% 50% 0 !important;
}

/* The supplied block markup already has the PDF's intentional breaks after
 * "early" and "helping". Restore those breaks and remove balanced wrapping,
 * which was creating different line lengths from the mockup.
 */
body.chs-alt-template .chs-programs-page .chs-programs-other .chs-programs-desktop-break {
	display: initial !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-other > p,
body.chs-alt-template .chs-programs-page .chs-programs-other > .wp-block-group__inner-container > p {
	text-wrap: wrap !important;
}

@media (max-width: 1120px) {
	/* Return Connect to normal document flow when the responsive layout takes over. */
	body.chs-alt-template .chs-programs-page .chs-programs-connect,
	body.chs-alt-template .chs-programs-page .chs-programs-connect > .wp-block-group__inner-container,
	body.chs-alt-template .chs-programs-page .chs-programs-connect-inner,
	body.chs-alt-template .chs-programs-page .chs-programs-connect-inner > .wp-block-group__inner-container {
		height: auto !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-inner {
		display: flex !important;
		width: min(calc(100% - 40px), var(--chs-programs-max)) !important;
		min-height: 0 !important;
		margin: 0 auto !important;
		padding: 32px 0 42px !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-inner > .wp-block-group__inner-container {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect h2,
	body.chs-alt-template .chs-programs-page .chs-programs-connect-tagline,
	body.chs-alt-template .chs-programs-page .chs-programs-connect-copy,
	body.chs-alt-template .chs-programs-page .chs-programs-connect-getting-started,
	body.chs-alt-template .chs-programs-page .chs-programs-connect-bar {
		position: static !important;
		right: auto !important;
		left: auto !important;
		width: auto !important;
		height: auto !important;
		transform: none !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-bar {
		width: min(86%, 900px) !important;
		margin: 24px auto 32px !important;
	}

	body.chs-alt-template .chs-programs-page .chs-program-banner-panel-left .chs-program-banner-photo,
	body.chs-alt-template .chs-programs-page .chs-program-banner-photo-left .chs-program-banner-photo {
		border-radius: 0 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-other .chs-programs-desktop-break {
		display: none !important;
	}
}


/* ========================================================================
 * BUILD 1.0.7 - EXACT PAGE-5 CONNECT TYPE / CONTROL GEOMETRY / OTHER WRAP
 * Values below are measured from the 1920px InDesign PDF, then expressed as
 * percentages/vw so they scale with the responsive desktop layout.
 * ======================================================================== */

@media (min-width: 1121px) {
	/* Exact text positions inside the 756px-high PDF Connect panel. */
	body.chs-alt-template .chs-programs-page .chs-programs-connect h2 {
		top: 5.52% !important;
		font-family: var(--chs-programs-display) !important;
		font-size: clamp(36px, 2.5vw, 48px) !important;
		font-style: normal !important;
		font-weight: 400 !important;
		line-height: 1.08 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-tagline {
		top: 14.97% !important;
		font-family: var(--chs-programs-font) !important;
		font-size: clamp(24px, 1.6667vw, 32px) !important;
		font-style: italic !important;
		font-weight: 600 !important;
		line-height: 1.18 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-copy {
		top: 22.17% !important;
		font-family: var(--chs-programs-font) !important;
		font-size: clamp(24px, 1.6667vw, 32px) !important;
		font-style: normal !important;
		font-weight: 400 !important;
		line-height: 1.20 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-getting-started {
		top: 69.60% !important;
		font-family: var(--chs-programs-font) !important;
		font-size: clamp(23px, 1.625vw, 31.2px) !important;
		font-style: normal !important;
		font-weight: 400 !important;
		line-height: 1.20 !important;
	}

	/* PDF control run: x=331..1589 on a 1920px artboard = 65.52% wide. */
	body.chs-alt-template .chs-programs-page .chs-programs-connect-bar {
		top: 39.18% !important;
		width: 65.52% !important;
		height: 24.87% !important;
		max-width: none !important;
	}

	/* Measured column boundaries: Spanish 13.78%, first separator 41.99%,
	 * second separator 72.30%.
	 */
	body.chs-alt-template .chs-programs-page .chs-programs-connect-bar > .wp-block-group__inner-container {
		grid-template-columns: 13.78% 28.21% 30.31% 27.70% !important;
	}

	/* PDF white Spanish card = 173.3 x 115 on the 1920px page. Keep "Se Habla"
	 * together so the explicit <br> is the ONLY line break.
	 */
	body.chs-alt-template .chs-programs-page .chs-programs-spanish {
		width: 100% !important;
		height: 61.17% !important;
		margin: 0 !important;
		padding: 4px 8px !important;
		font-family: var(--chs-programs-display) !important;
		font-size: clamp(27px, 1.875vw, 36px) !important;
		font-style: normal !important;
		font-weight: 400 !important;
		line-height: 1.055 !important;
		white-space: nowrap !important;
	}

	/* CALL, phone, TEXT and number are Bree Regular in the PDF, not Livvic.
	 * The two-line baseline spacing is about 1.2x the 39.877px type size.
	 */
	body.chs-alt-template .chs-programs-page .chs-programs-connect-action .chs-programs-connect-label,
	body.chs-alt-template .chs-programs-page .chs-programs-connect-action a {
		font-family: var(--chs-programs-display) !important;
		font-size: clamp(30px, 2.077vw, 39.877px) !important;
		font-style: normal !important;
		font-weight: 400 !important;
		line-height: 1.20 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-action a {
		margin-top: 0 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-call {
		padding-left: 17.1% !important;
		padding-right: 5% !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-text {
		padding-left: 15.6% !important;
		padding-right: 4% !important;
	}

	/* In the PDF TEXT is pink while the quoted word Connect is blue. The block
	 * markup stores them in one span, so split the visible rendering here.
	 */
	body.chs-alt-template .chs-programs-page .chs-programs-connect-text .chs-programs-connect-label {
		font-size: 0 !important;
		white-space: nowrap !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-text .chs-programs-connect-label::before,
	body.chs-alt-template .chs-programs-page .chs-programs-connect-text .chs-programs-connect-label::after {
		font-family: var(--chs-programs-display) !important;
		font-size: clamp(30px, 2.077vw, 39.877px) !important;
		font-style: normal !important;
		font-weight: 400 !important;
		line-height: 1.20 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-text .chs-programs-connect-label::before {
		content: "TEXT " !important;
		color: #e84799 !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-connect-text .chs-programs-connect-label::after {
		content: '"Connect"' !important;
		color: #1c468a !important;
	}

	/* Separator positions/heights measured from the PDF. */
	body.chs-alt-template .chs-programs-page .chs-programs-connect-text::before,
	body.chs-alt-template .chs-programs-page .chs-programs-referral-wrap::before {
		top: 22.1% !important;
		bottom: 28.3% !important;
		width: 1px !important;
		background: #1c468a !important;
	}

	/* PDF referral button = 289 x 93.3. It is right-aligned in its final cell. */
	body.chs-alt-template .chs-programs-page .chs-programs-referral-wrap .wp-block-button {
		justify-content: flex-end !important;
	}

	body.chs-alt-template .chs-programs-page .chs-programs-referral .wp-block-button__link,
	body.chs-alt-template .chs-programs-page .chs-programs-referral .wp-block-button__link:visited {
		width: 82.9% !important;
		height: 49.6% !important;
		margin-right: 0 !important;
		margin-left: auto !important;
		font-family: var(--chs-programs-display) !important;
		font-size: clamp(30px, 2.077vw, 39.877px) !important;
		font-style: normal !important;
		font-weight: 400 !important;
		line-height: 1.10 !important;
	}
}

/* The forced PDF breaks can strand the word "early" when browser font metrics
 * differ slightly from InDesign. On the live site, let this paragraph wrap
 * naturally across the same wide shell; do not use balanced wrapping.
 */
body.chs-alt-template .chs-programs-page .chs-programs-other .chs-programs-desktop-break {
	display: none !important;
}

body.chs-alt-template .chs-programs-page .chs-programs-other > p,
body.chs-alt-template .chs-programs-page .chs-programs-other > .wp-block-group__inner-container > p {
	width: 100% !important;
	max-width: none !important;
	text-wrap: wrap !important;
	white-space: normal !important;
}
