/*
 * Children's House: Homepage (Redesign Preview)
 *
 * Design system per the approved "3a" homepage design canvas: Poppins
 * throughout, Botany Green primary, paper/ink/sand as the neutral
 * scale, softened corners, no shadows. Entirely scoped under
 * #chc-redesign-homepage so nothing here can leak onto the live
 * homepage (templates/homepage.php, homepage.css) or any other
 * template. Mobile-first: base rules are the 390px layout: 768px
 * promotes curriculum to 2-up; 1024px is the full desktop composition.
 */

#chc-redesign-homepage {
	--chc-green: #3F8A3C;
	--chc-mint: #8FBE8C;
	--chc-mint-pale: #E4F0E3;
	--chc-mint-on-green: #CFE4CD;
	--chc-ink: #2B2724;
	--chc-ink-line: #423C36;
	--chc-ink-line-soft: #3D3833;
	--chc-paper: #FAF6F0;
	--chc-sand: #EAE1D5;
	--chc-sand-line: #DCD1C1;
	--chc-cream: #FFF9EC;
	--chc-red: #C3261F;
	--chc-brown: #754C24;
	--chc-blue: #2B42AC;
	--chc-gold: #FFBA00;
	--chc-body: #5C5648;
	--chc-body-soft: #6B6558;
	--chc-muted: #8A8272;
	--chc-muted-2: #B0A697;
	--chc-border: #D5CBBC;
	--chc-attend-tint: #F1F5F0;
	--chc-mat-tint: #F5F0E9;
	--chc-mat-muted: #A08A5E;

	font-family: Poppins, sans-serif;
	background: var(--chc-paper);
	color: var(--chc-ink);
}

#chc-redesign-homepage * {
	box-sizing: border-box;
}

#chc-redesign-homepage img {
	display: block;
	max-width: 100%;
	height: auto;
}

#chc-redesign-homepage a {
	text-decoration: none;
	color: inherit;
}

/* Shared type helpers */

#chc-redesign-homepage .chc-kicker {
	margin: 0 0 0.75rem;
	font-size: 0.75rem;
	font-weight: 500;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

#chc-redesign-homepage .chc-kicker--green { color: var(--chc-green); }
#chc-redesign-homepage .chc-kicker--red { color: var(--chc-red); }
#chc-redesign-homepage .chc-kicker--mint { color: var(--chc-mint); font-weight: 600; }
#chc-redesign-homepage .chc-kicker--mint-on-green { color: var(--chc-mint-on-green); }

#chc-redesign-homepage .chc-h2 {
	margin: 0;
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.15;
	font-size: 1.75rem;
	color: var(--chc-ink);
}

#chc-redesign-homepage .chc-h2--light {
	color: var(--chc-paper);
}

#chc-redesign-homepage .chc-lede {
	margin: 0.875rem 0 0;
	font-size: 1rem;
	line-height: 1.6;
	color: var(--chc-body);
	max-width: 40em;
}

#chc-redesign-homepage .chc-lede--light {
	color: #C5BEB6;
}

#chc-redesign-homepage .chc-lede--on-green {
	color: #E4F0E3;
}

#chc-redesign-homepage .chc-section-head {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	margin-bottom: 1.75rem;
}

#chc-redesign-homepage .chc-btn {
	display: inline-block;
	text-align: center;
	padding: 0.85rem 1.5rem;
	border-radius: 9px;
	font-size: 0.9375rem;
	font-weight: 500;
	transition: opacity 0.16s ease, background-color 0.16s ease, color 0.16s ease;
}

#chc-redesign-homepage .chc-btn--nowrap { white-space: nowrap; }
#chc-redesign-homepage .chc-btn--green { background: var(--chc-green); color: #fff; }
#chc-redesign-homepage .chc-btn--green:hover { opacity: 0.9; }
#chc-redesign-homepage .chc-btn--ink { background: var(--chc-ink); color: var(--chc-paper); }
#chc-redesign-homepage .chc-btn--ink:hover { opacity: 0.9; }
#chc-redesign-homepage .chc-btn--brown { background: var(--chc-brown); color: #fff; }
#chc-redesign-homepage .chc-btn--brown:hover { opacity: 0.9; }
#chc-redesign-homepage .chc-btn--paper { background: var(--chc-paper); color: var(--chc-ink); }
#chc-redesign-homepage .chc-btn--paper:hover { opacity: 0.9; }
#chc-redesign-homepage .chc-btn--outline { border: 1px solid var(--chc-border); color: var(--chc-ink); }
#chc-redesign-homepage .chc-btn--outline:hover { border-color: var(--chc-green); }

#chc-redesign-homepage .chc-link-arrow {
	display: inline-block;
	font-size: 0.9375rem;
	font-weight: 500;
	color: var(--chc-green);
}

#chc-redesign-homepage .chc-link-arrow--disabled {
	color: var(--chc-muted);
	cursor: default;
}

/* Droppable image placeholder — same footprint as a real photo, no
   layout shift once CHC_Homepage_Redesign_Images::ATTACHMENT_IDS is
   filled in. */
#chc-redesign-homepage .chc-image-slot {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	min-height: 12rem;
	background: repeating-linear-gradient(135deg, var(--chc-sand), var(--chc-sand) 10px, #E4D9C8 10px, #E4D9C8 20px);
	border-radius: inherit;
	color: var(--chc-body-soft);
	font-size: 0.8125rem;
	text-align: center;
	padding: 1rem;
}

/* ---- Hero ---- */

#chc-redesign-homepage .chc-hero {
	position: relative;
}

#chc-redesign-homepage .chc-hero__image {
	width: 100%;
	height: 22rem;
	object-fit: cover;
}

#chc-redesign-homepage .chc-hero__image.chc-image-slot,
#chc-redesign-homepage .chc-hero .chc-image-slot {
	min-height: 22rem;
	border-radius: 0;
}

#chc-redesign-homepage .chc-hero__plate {
	margin-top: -2.125rem;
	position: relative;
	background: var(--chc-paper);
	border-radius: 18px 18px 0 0;
	padding: 1.75rem 1.25rem 2rem;
}

#chc-redesign-homepage .chc-hero__title {
	margin: 0;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.1;
	letter-spacing: -0.02em;
	text-wrap: pretty;
}

#chc-redesign-homepage .chc-hero__body {
	margin: 0.875rem 0 0;
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--chc-body);
}

#chc-redesign-homepage .chc-hero__ctas {
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
	margin-top: 1.375rem;
}

#chc-redesign-homepage .chc-hero__ctas .chc-btn {
	display: block;
}

/* ---- Organisation map ---- */

#chc-redesign-homepage .chc-org-map {
	background: var(--chc-ink);
	color: var(--chc-paper);
	padding: 2rem 1.25rem;
}

#chc-redesign-homepage .chc-org-map__lede {
	margin: 0 0 1.25rem;
	font-size: 1.0625rem;
	font-weight: 500;
	line-height: 1.5;
}

#chc-redesign-homepage .chc-org-map__groups {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

#chc-redesign-homepage .chc-org-map__group {
	padding-top: 0.875rem;
	border-top: 1px solid var(--chc-ink-line);
}

#chc-redesign-homepage .chc-org-map__links {
	display: flex;
	flex-direction: column;
	gap: 0.375rem;
	font-size: 0.9375rem;
	margin-top: 0.5rem;
}

/* ---- Proof strip ---- */

#chc-redesign-homepage .chc-proof {
	background: var(--chc-sand);
	padding: 0.9rem 1.25rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem;
	font-size: 0.8125rem;
	color: #4A443E;
}

#chc-redesign-homepage .chc-proof a {
	color: var(--chc-green);
}

#chc-redesign-homepage .chc-proof__dot {
	color: #C6BBAA;
}

/* ---- Equip: materials ---- */

#chc-redesign-homepage .chc-equip-materials {
	padding: 3rem 1.25rem 2.5rem;
}

#chc-redesign-homepage .chc-equip-materials__lead-image {
	height: 14rem;
	border-radius: 14px;
	overflow: hidden;
	margin-bottom: 2rem;
}

#chc-redesign-homepage .chc-equip-materials__lead-image-img,
#chc-redesign-homepage .chc-equip-materials__lead-image .chc-image-slot {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 14px;
}

#chc-redesign-homepage .chc-curriculum-carousel__eyebrow {
	margin-bottom: 1rem;
}

#chc-redesign-homepage .chc-carousel {
	display: grid;
	grid-template-columns: auto 1fr auto;
	grid-template-rows: auto auto;
	align-items: center;
	gap: 0 0.5rem;
}

#chc-redesign-homepage .chc-carousel__viewport {
	grid-column: 2;
	grid-row: 1;
	overflow: hidden;
}

#chc-redesign-homepage .chc-carousel__track {
	display: flex;
	gap: 1.25rem;
	list-style: none;
	margin: 0;
	padding: 0;
	will-change: transform;
	transition: transform 0.4s ease;
}

#chc-redesign-homepage .chc-carousel__slide {
	flex: 0 0 100%;
	min-width: 0;
}

#chc-redesign-homepage .chc-carousel__control {
	grid-row: 1;
	width: 2.5rem;
	height: 2.5rem;
	flex: none;
	border-radius: 999px;
	border: 1px solid var(--chc-border);
	background: var(--chc-paper);
	color: var(--chc-ink);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: border-color 0.16s ease, color 0.16s ease;
}

#chc-redesign-homepage .chc-carousel__control:hover,
#chc-redesign-homepage .chc-carousel__control:focus-visible {
	border-color: var(--chc-green);
	color: var(--chc-green);
}

#chc-redesign-homepage .chc-carousel__control--prev {
	grid-column: 1;
}

#chc-redesign-homepage .chc-carousel__control--next {
	grid-column: 3;
}

#chc-redesign-homepage .chc-carousel__dots {
	grid-column: 1 / -1;
	grid-row: 2;
	display: flex;
	justify-content: center;
	gap: 0.5rem;
	margin-top: 1.25rem;
}

#chc-redesign-homepage .chc-carousel__dot {
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 999px;
	border: none;
	background: var(--chc-border);
	padding: 0;
	cursor: pointer;
	transition: background-color 0.16s ease, width 0.16s ease;
}

#chc-redesign-homepage .chc-carousel__dot.is-active {
	background: var(--chc-green);
	width: 1.25rem;
}

#chc-redesign-homepage .chc-curriculum-primary__tile {
	display: block;
}

#chc-redesign-homepage .chc-curriculum-primary__image {
	display: block;
	height: 15rem;
	border-radius: 14px;
	overflow: hidden;
}

#chc-redesign-homepage .chc-curriculum-primary__image img,
#chc-redesign-homepage .chc-curriculum-primary__image .chc-image-slot {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 14px;
}

#chc-redesign-homepage .chc-curriculum-primary__meta {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin-top: 0.75rem;
}

#chc-redesign-homepage .chc-curriculum-primary__label {
	font-size: 1.25rem;
	font-weight: 600;
}

#chc-redesign-homepage .chc-curriculum-primary__count {
	font-size: 0.8125rem;
	color: var(--chc-muted);
}

/*
 * "Or by stage" — Final Refinement Round: stronger secondary-nav
 * treatment (was a plain muted label + borderless pills). A sand
 * band with a visible rule separates it clearly from the curriculum
 * carousel above, and the eyebrow now matches the weight/tracking of
 * the section's other kickers instead of reading as an afterthought.
 * Pills stay outline-only (never filled) so they remain visually
 * secondary to the curriculum tiles and CTAs.
 */
#chc-redesign-homepage .chc-stage-pills {
	margin-top: 2rem;
	padding: 1.25rem 1.25rem 1.5rem;
	background: var(--chc-sand);
	border-radius: 14px;
}

#chc-redesign-homepage .chc-stage-pills__head {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin-bottom: 0.875rem;
}

#chc-redesign-homepage .chc-stage-pills__rule {
	width: 1.5rem;
	height: 2px;
	background: var(--chc-muted-2);
	flex: none;
}

#chc-redesign-homepage .chc-stage-pills__label {
	margin: 0;
	color: var(--chc-body);
	font-weight: 600;
	white-space: nowrap;
}

#chc-redesign-homepage .chc-stage-pills__list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.625rem;
}

#chc-redesign-homepage .chc-stage-pill {
	display: inline-block;
	border: 1px solid var(--chc-muted-2);
	border-radius: 999px;
	padding: 0.5rem 1.125rem;
	font-size: 0.8125rem;
	font-weight: 500;
	color: var(--chc-ink);
	background: var(--chc-paper);
	transition: border-color 0.16s ease, color 0.16s ease, background-color 0.16s ease;
}

#chc-redesign-homepage .chc-stage-pill:hover {
	border-color: var(--chc-green);
	color: var(--chc-green);
	background: #fff;
}

/* ---- Featured materials ---- */

#chc-redesign-homepage .chc-featured-products {
	background: var(--chc-sand);
	padding: 2.5rem 1.25rem;
}

#chc-redesign-homepage .chc-featured-products__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

#chc-redesign-homepage .chc-featured-products__hero,
#chc-redesign-homepage .chc-featured-products__card {
	display: block;
	background: #fff;
	border-radius: 14px;
	padding: 1.125rem;
}

/*
 * Featured image sizing (Final Refinement Round fix). Root cause of
 * the "blank space" bug: the container had only a min-height, and the
 * <img> had only a max-height with no width/height pair — so
 * object-fit had no box to actually fit within, and the image
 * rendered at whatever size its own constraint produced, leaving the
 * remainder of the container empty. Both container and image now get
 * an explicit, matching height at every breakpoint, and the image
 * gets width:100%/height:100% so object-fit:contain has a real box to
 * work with — the image now always fills its allotted area (letterboxed,
 * never distorted) instead of floating in unexplained empty space.
 */
#chc-redesign-homepage .chc-featured-products__hero-image,
#chc-redesign-homepage .chc-featured-products__card-image {
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--chc-paper);
	border-radius: 10px;
	overflow: hidden;
	height: 11rem;
}

#chc-redesign-homepage .chc-featured-products__hero-image {
	height: 14rem;
}

#chc-redesign-homepage .chc-featured-products__hero-image img,
#chc-redesign-homepage .chc-featured-products__card-image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

#chc-redesign-homepage .chc-featured-products__cat {
	margin-top: 1rem;
}

#chc-redesign-homepage .chc-featured-products__row {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin-top: 0.5rem;
}

#chc-redesign-homepage .chc-featured-products__name {
	font-size: 1.25rem;
	font-weight: 600;
}

#chc-redesign-homepage .chc-featured-products__price {
	font-size: 1.125rem;
	font-weight: 700;
	color: var(--chc-ink);
}

/*
 * Sale price hierarchy (Final Refinement Round). WooCommerce's own
 * price_html already wraps the original price in <del> and the
 * current/special price in <ins> — restyled here rather than
 * reimplemented, so the underlying data (and WooCommerce's own sale
 * logic) stays authoritative. Regular price shrinks and mutes;
 * special price grows and takes the brand green already used for
 * every other primary CTA on this page, so no new colour is
 * introduced.
 */
#chc-redesign-homepage .chc-featured-products__price del,
#chc-redesign-homepage .chc-featured-products__card-row del {
	font-size: 0.75em;
	font-weight: 400;
	color: var(--chc-muted);
	text-decoration: line-through;
	opacity: 1;
}

#chc-redesign-homepage .chc-featured-products__price ins,
#chc-redesign-homepage .chc-featured-products__card-row ins {
	margin-left: 0.4em;
	font-size: 1.2em;
	font-weight: 700;
	color: var(--chc-green);
	text-decoration: none;
}

#chc-redesign-homepage .chc-featured-products__others {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

#chc-redesign-homepage .chc-featured-products__card-name {
	display: block;
	font-size: 0.9375rem;
	font-weight: 600;
	margin-top: 0.625rem;
}

#chc-redesign-homepage .chc-featured-products__card-row {
	display: flex;
	justify-content: space-between;
	font-size: 0.75rem;
	color: var(--chc-muted);
	margin-top: 0.25rem;
}

/* ---- Equip: art ---- */

#chc-redesign-homepage .chc-equip-art {
	background: var(--chc-cream);
}

#chc-redesign-homepage .chc-equip-art__copy {
	padding: 2.5rem 1.25rem;
}

#chc-redesign-homepage .chc-equip-art__swatches {
	display: flex;
	gap: 0.5rem;
	margin-top: 1rem;
}

#chc-redesign-homepage .chc-swatch {
	width: 22px;
	height: 22px;
	border-radius: 6px;
}

#chc-redesign-homepage .chc-swatch--gold { background: var(--chc-gold); }
#chc-redesign-homepage .chc-swatch--red { background: var(--chc-red); }
#chc-redesign-homepage .chc-swatch--blue { background: var(--chc-blue); }
#chc-redesign-homepage .chc-swatch--green { background: var(--chc-green); }

#chc-redesign-homepage .chc-equip-art .chc-btn {
	margin-top: 1.5rem;
}

#chc-redesign-homepage .chc-equip-art__image {
	min-height: 16rem;
}

#chc-redesign-homepage .chc-equip-art__image img,
#chc-redesign-homepage .chc-equip-art__image .chc-image-slot {
	width: 100%;
	height: 100%;
	min-height: 16rem;
	object-fit: cover;
}

/* ---- Manage ---- */

#chc-redesign-homepage .chc-manage {
	padding: 2.5rem 1.25rem;
}

#chc-redesign-homepage .chc-manage__head {
	margin-bottom: 1.75rem;
}

#chc-redesign-homepage .chc-manage__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

#chc-redesign-homepage .chc-manage__card {
	border-radius: 18px;
	padding: 1.5rem;
	display: flex;
	flex-direction: column;
}

#chc-redesign-homepage .chc-manage__card--attend { background: var(--chc-attend-tint); }
#chc-redesign-homepage .chc-manage__card--mat { background: var(--chc-mat-tint); }

#chc-redesign-homepage .chc-manage__card-kicker {
	margin: 0;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

#chc-redesign-homepage .chc-manage__card--attend .chc-manage__card-kicker { color: var(--chc-green); }
#chc-redesign-homepage .chc-manage__card--mat .chc-manage__card-kicker { color: var(--chc-brown); }

#chc-redesign-homepage .chc-manage__card-title {
	font-size: 1.375rem;
	font-weight: 600;
	margin: 0.75rem 0 0;
	line-height: 1.2;
}

#chc-redesign-homepage .chc-manage__card-body {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--chc-body);
	margin: 0.75rem 0 0;
}

#chc-redesign-homepage .chc-manage__card-image {
	min-height: 10rem;
	margin-top: 1.25rem;
	border-radius: 12px;
	overflow: hidden;
}

#chc-redesign-homepage .chc-manage__card-image img,
#chc-redesign-homepage .chc-manage__card-image .chc-image-slot {
	width: 100%;
	height: 100%;
	min-height: 10rem;
	object-fit: cover;
}

#chc-redesign-homepage .chc-manage__card .chc-btn {
	margin-top: 1.25rem;
	align-self: flex-start;
}

#chc-redesign-homepage .chc-manage__card-url {
	margin: 0.75rem 0 0;
	font-size: 0.75rem;
	color: var(--chc-muted);
}

/* ---- Build ---- */

#chc-redesign-homepage .chc-build {
	position: relative;
}

#chc-redesign-homepage .chc-build__image {
	width: 100%;
	height: 20rem;
	object-fit: cover;
}

#chc-redesign-homepage .chc-build__image.chc-image-slot,
#chc-redesign-homepage .chc-build .chc-image-slot {
	min-height: 20rem;
	border-radius: 0;
}

#chc-redesign-homepage .chc-build__plate-wrap {
	padding: 1.25rem;
	margin-top: -3rem;
	position: relative;
}

#chc-redesign-homepage .chc-build__plate {
	background: var(--chc-ink);
	color: var(--chc-paper);
	border-radius: 18px;
	padding: 1.75rem;
}

#chc-redesign-homepage .chc-build .chc-btn {
	margin-top: 1.25rem;
}

/* ---- Authority ---- */

#chc-redesign-homepage .chc-authority__image {
	min-height: 16rem;
}

#chc-redesign-homepage .chc-authority__image img,
#chc-redesign-homepage .chc-authority__image .chc-image-slot {
	width: 100%;
	height: 100%;
	min-height: 16rem;
	object-fit: cover;
}

#chc-redesign-homepage .chc-authority__copy {
	padding: 2.5rem 1.25rem;
}

#chc-redesign-homepage .chc-authority__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.25rem;
	margin-top: 1.5rem;
	max-width: 30rem;
}

#chc-redesign-homepage .chc-authority__label {
	margin: 0;
	font-size: 1rem;
	font-weight: 600;
	padding-top: 0.875rem;
	border-top: 1px solid var(--chc-sand);
}

#chc-redesign-homepage .chc-authority__desc {
	margin: 0.25rem 0 0;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: var(--chc-body-soft);
}

#chc-redesign-homepage .chc-authority .chc-link-arrow {
	margin-top: 1.5rem;
}

/* ---- Schools CTA ---- */

#chc-redesign-homepage .chc-schools-cta {
	background: var(--chc-green);
	color: #fff;
	padding: 2.5rem 1.25rem;
}

#chc-redesign-homepage .chc-schools-cta__links {
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
	margin-top: 1.75rem;
}

#chc-redesign-homepage .chc-schools-cta__link {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-radius: 11px;
	padding: 1.125rem 1.25rem;
	font-size: 1rem;
	font-weight: 600;
}

#chc-redesign-homepage .chc-schools-cta__link--solid {
	background: var(--chc-paper);
	color: var(--chc-ink);
}

#chc-redesign-homepage .chc-schools-cta__link--solid .chc-schools-cta__arrow {
	color: var(--chc-green);
}

#chc-redesign-homepage .chc-schools-cta__link--outline {
	border: 1px solid rgba(255, 255, 255, 0.5);
	color: #fff;
}

#chc-redesign-homepage .chc-schools-cta__link--disabled {
	opacity: 0.6;
	cursor: default;
}

/* ==== Tablet — 768px ==== */

@media (min-width: 48em) {
	#chc-redesign-homepage .chc-carousel__slide {
		flex-basis: calc(50% - 0.625rem);
	}

	#chc-redesign-homepage .chc-featured-products__hero-image {
		height: 17rem;
	}
}

/* ==== Desktop — 1024px ==== */

@media (min-width: 64em) {
	#chc-redesign-homepage .chc-hero {
		height: 41.25rem;
	}

	#chc-redesign-homepage .chc-hero__image,
	#chc-redesign-homepage .chc-hero__image.chc-image-slot,
	#chc-redesign-homepage .chc-hero .chc-image-slot {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		min-height: 0;
	}

	#chc-redesign-homepage .chc-hero__plate {
		position: absolute;
		left: 3.5rem;
		bottom: 3.5rem;
		width: 40rem;
		margin-top: 0;
		border-radius: 18px;
		padding: 2.75rem;
	}

	#chc-redesign-homepage .chc-hero__title {
		font-size: 3.125rem;
	}

	#chc-redesign-homepage .chc-hero__ctas {
		flex-direction: row;
	}

	#chc-redesign-homepage .chc-hero__ctas .chc-btn {
		display: inline-block;
	}

	#chc-redesign-homepage .chc-org-map,
	#chc-redesign-homepage .chc-equip-materials,
	#chc-redesign-homepage .chc-featured-products,
	#chc-redesign-homepage .chc-manage,
	#chc-redesign-homepage .chc-authority__copy,
	#chc-redesign-homepage .chc-equip-art__copy,
	#chc-redesign-homepage .chc-schools-cta,
	#chc-redesign-homepage .chc-proof {
		padding-left: 3.5rem;
		padding-right: 3.5rem;
	}

	#chc-redesign-homepage .chc-org-map {
		padding-top: 2.5rem;
		padding-bottom: 2.5rem;
	}

	#chc-redesign-homepage .chc-org-map__inner {
		display: grid;
		grid-template-columns: 17rem 1fr;
		gap: 3.5rem;
		align-items: center;
	}

	#chc-redesign-homepage .chc-org-map__lede {
		margin-bottom: 0;
		font-size: 1.125rem;
	}

	#chc-redesign-homepage .chc-org-map__groups {
		flex-direction: row;
	}

	#chc-redesign-homepage .chc-org-map__group {
		flex: 1;
		border-top: none;
		padding-top: 0;
		padding: 0 2.25rem;
		border-left: 1px solid var(--chc-ink-line);
	}

	#chc-redesign-homepage .chc-org-map__group:first-child {
		padding-left: 0;
		border-left: none;
	}

	#chc-redesign-homepage .chc-org-map__links {
		flex-direction: row;
		gap: 1.375rem;
	}

	#chc-redesign-homepage .chc-equip-materials {
		padding-top: 5.5rem;
		padding-bottom: 4.5rem;
	}

	#chc-redesign-homepage .chc-equip-materials__lead-image {
		height: 22rem;
		margin-bottom: 2.5rem;
	}

	#chc-redesign-homepage .chc-section-head {
		flex-direction: row;
		align-items: flex-end;
		justify-content: space-between;
	}

	#chc-redesign-homepage .chc-h2 {
		font-size: 2.5rem;
	}

	#chc-redesign-homepage .chc-carousel__slide {
		flex-basis: calc(33.333% - 0.834rem);
	}

	#chc-redesign-homepage .chc-carousel {
		gap: 0 1rem;
	}

	#chc-redesign-homepage .chc-carousel__control {
		width: 3rem;
		height: 3rem;
	}

	#chc-redesign-homepage .chc-curriculum-primary__image {
		height: 21.25rem;
	}

	#chc-redesign-homepage .chc-stage-pills {
		margin-top: 2.5rem;
		padding: 1.75rem 2rem;
		display: flex;
		align-items: center;
	}

	#chc-redesign-homepage .chc-stage-pills__head {
		margin-bottom: 0;
		margin-right: 1.75rem;
		flex: none;
	}

	#chc-redesign-homepage .chc-featured-products {
		padding-top: 5rem;
		padding-bottom: 5rem;
	}

	#chc-redesign-homepage .chc-featured-products__grid {
		grid-template-columns: 1.25fr 1fr;
		gap: 1.875rem;
	}

	#chc-redesign-homepage .chc-featured-products__hero-image {
		height: 20rem;
	}

	#chc-redesign-homepage .chc-featured-products__card-image {
		height: 12rem;
	}

	#chc-redesign-homepage .chc-equip-art {
		display: grid;
		grid-template-columns: 1fr 1.05fr;
	}

	#chc-redesign-homepage .chc-equip-art__copy {
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding: 5rem 3.5rem;
	}

	#chc-redesign-homepage .chc-equip-art__image {
		padding: 2.25rem 2.25rem 2.25rem 0;
		min-height: 30rem;
	}

	#chc-redesign-homepage .chc-equip-art__image img,
	#chc-redesign-homepage .chc-equip-art__image .chc-image-slot {
		border-radius: 14px;
		min-height: 30rem;
	}

	#chc-redesign-homepage .chc-manage {
		padding-top: 5.5rem;
		padding-bottom: 5rem;
	}

	#chc-redesign-homepage .chc-manage__grid {
		grid-template-columns: 1fr 1fr;
		gap: 1.875rem;
	}

	#chc-redesign-homepage .chc-manage__card {
		padding: 2.5rem;
	}

	#chc-redesign-homepage .chc-build {
		height: 32.5rem;
	}

	#chc-redesign-homepage .chc-build__image,
	#chc-redesign-homepage .chc-build__image.chc-image-slot,
	#chc-redesign-homepage .chc-build .chc-image-slot {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		min-height: 0;
	}

	#chc-redesign-homepage .chc-build__plate-wrap {
		position: absolute;
		inset: 0;
		display: flex;
		align-items: center;
		padding: 0 3.5rem;
		margin-top: 0;
		pointer-events: none;
	}

	#chc-redesign-homepage .chc-build__plate {
		max-width: 35rem;
		padding: 2.75rem;
		pointer-events: auto;
	}

	#chc-redesign-homepage .chc-authority {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	#chc-redesign-homepage .chc-authority__image {
		min-height: 32.5rem;
	}

	#chc-redesign-homepage .chc-authority__image img,
	#chc-redesign-homepage .chc-authority__image .chc-image-slot {
		min-height: 32.5rem;
	}

	#chc-redesign-homepage .chc-authority__copy {
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding: 5.5rem 4rem;
	}

	#chc-redesign-homepage .chc-authority .chc-h2 {
		font-size: 2.625rem;
	}

	#chc-redesign-homepage .chc-schools-cta {
		padding-top: 5rem;
		padding-bottom: 5rem;
	}

	#chc-redesign-homepage .chc-schools-cta__inner,
	#chc-redesign-homepage .chc-schools-cta {
		display: grid;
		grid-template-columns: 1fr 0.9fr;
		gap: 4rem;
		align-items: center;
	}

	#chc-redesign-homepage .chc-schools-cta .chc-h2 {
		font-size: 2.75rem;
	}

	#chc-redesign-homepage .chc-schools-cta__links {
		margin-top: 0;
	}
}
