:root {
	--navy: #102f46;
	--navy-deep: #0a2436;
	--teal: #177c76;
	--green: #75943f;
	--sand: #f2eee7;
	--cream: #faf8f4;
	--white: #fff;
	--ink: #17303e;
	--muted: #5b6b73;
	--line: #dfe5e7;
	--container: 1320px;
	--shadow: 0 18px 45px rgba(10, 36, 54, .16);
	--content-font-size: clamp(1.05rem, 1.25vw, 1.1875rem);
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
	overflow-x: clip;
}

body {
	margin: 0;
	color: var(--ink);
	background: var(--white);
	font-family: Arial, Helvetica, sans-serif;
	font-size: var(--content-font-size);
	line-height: 1.7;
	overflow-x: clip;
	width: 100%;
	max-width: 100vw;
}

.site {
	overflow-x: clip;
	width: 100%;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

a {
	color: var(--teal);
	text-underline-offset: .18em;
}

h1,
h2,
h3,
h4 {
	margin: 0 0 .6em;
	color: var(--navy);
	font-family: Georgia, 'Times New Roman', serif;
	line-height: 1.08;
	font-weight: 500;
}

h1 {
	font-size: clamp(2.8rem, 6vw, 5.7rem);
}

h2 {
	font-size: clamp(1.8rem, 3.5vw, 2.8rem);
}

h3 {
	font-size: clamp(1.35rem, 2vw, 1.8rem);
}

p {
	font-size: var(--content-font-size);
	line-height: 1.7;
	margin: 0 0 1.25em;
}

.container {
	width: min(calc(100% - 40px), var(--container));
	margin-inline: auto;
}

.site-main {
	min-height: 55vh;
}

.entry-content,
.content-layout {
	padding-block: clamp(3rem, 7vw, 6rem);
}

.entry-content>* {
	max-width: 800px;
}

.skip-link {
	position: fixed;
	top: 10px;
	left: 10px;
	z-index: 9999;
	padding: .8rem 1rem;
	background: var(--white);
	transform: translateY(-150%);
}

.skip-link:focus {
	transform: none;
}

.eyebrow {
	margin-bottom: .8rem;
	color: var(--green);
	font-family: "Avenir Next", Avenir, sans-serif;
	font-size: .8rem;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
}

/* ============================================================
   Global Button System (3 Core Styles)
   1. .button / .button--green / .button-green (Global Green)
   2. .button--outline / .button-outline (Global Outline)
   3. .button--white / .button-white / .button--light (Global White)
   ============================================================ */

.button-group {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	margin-top: 2rem;
}

/* 1. Global Green Button */
.button,
.button--green,
.button-green {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .5rem;
	min-height: 50px;
	padding: .75rem 1.4rem;
	border: 1px solid var(--green);
	border-radius: 2px;
	color: var(--white);
	background: var(--green);
	font-family: "Avenir Next", Avenir, "Helvetica Neue", Arial, sans-serif;
	font-size: .95rem;
	font-weight: 500;
	letter-spacing: .04em;
	text-decoration: none;
	text-transform: uppercase;
	transition: .2s ease;
	cursor: pointer;
	line-height: 1;
}

.button:hover,
.button:focus-visible,
.button--green:hover,
.button--green:focus-visible,
.button-green:hover,
.button-green:focus-visible {
	border-color: var(--teal);
	color: var(--white);
	background: var(--teal);
	transform: translateY(-1px);
}

/* 2. Global Outline Button */
.button--outline,
.button-outline {
	border-color: rgba(255, 255, 255, .75);
	color: var(--white);
	background: transparent;
}

.button--outline:hover,
.button--outline:focus-visible,
.button-outline:hover,
.button-outline:focus-visible {
	border-color: var(--teal);
	color: var(--white);
	background: var(--teal);
	transform: translateY(-1px);
}

.button--outline-dark,
.button-outline-dark {
	border-color: rgba(16, 47, 70, .28);
	color: var(--navy);
	background: transparent;
}

.button--outline-dark:hover,
.button--outline-dark:focus-visible,
.button-outline-dark:hover,
.button-outline-dark:focus-visible {
	border-color: var(--teal);
	color: var(--white);
	background: var(--teal);
	transform: translateY(-1px);
}

/* 3. Global White Button (Same .button, background white) */
.button--white,
.button-white,
.button--light {
	border-color: var(--white);
	color: var(--navy);
	background: var(--white);
}

.button--white:hover,
.button--white:focus-visible,
.button-white:hover,
.button-white:focus-visible,
.button--light:hover,
.button--light:focus-visible {
	border-color: var(--teal);
	color: var(--white);
	background: var(--teal);
	transform: translateY(-1px);
}

.button--compact {
	min-height: 42px;
	padding: .55rem 1rem;
}

.text-link {
	display: inline-block;
	color: var(--teal);
	font-size: .82rem;
	font-weight: 800;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.utility-bar {
	color: var(--white);
	background: var(--navy-deep);
	font-size: .76rem;
}

.utility-bar__inner {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	min-height: 38px;
}

.utility-bar p {
	margin: 0;
}

.utility-bar a {
	color: inherit;
}

.utility-bar__phone {
	margin-left: auto;
	text-decoration: none;
}

.navigation-bar {
	position: relative;
	z-index: 100;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 4px 20px rgba(10, 36, 54, .10);
}

.navigation-bar__inner {
	display: flex;
	align-items: center;
	min-height: 108px;
}

.navigation-bar__inner--desktop {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 230px minmax(0, 1fr);
	gap: clamp(1rem, 2.7vw, 2.8rem);
}

.navigation-bar__inner--mobile {
	display: none;
}

.site-branding {
	flex: 0 0 auto;
}

.site-branding--centered {
	display: flex;
	align-items: center;
	justify-content: center;
}

.custom-logo {
	width: auto;
	max-height: 86px;
}

.site-title {
	color: var(--navy);
	font-family: Georgia, serif;
	font-size: 1.4rem;
	font-weight: 700;
	text-decoration: none;
}

.split-navigation>ul {
	display: flex;
	align-items: center;
	gap: clamp(.8rem, 1.6vw, 1.65rem);
	margin: 0;
	padding: 0;
	list-style: none;
}

.split-navigation--left>ul {
	justify-content: flex-end;
}

.split-navigation--right>ul {
	justify-content: flex-start;
}

.split-navigation li {
	position: relative;
}

.split-navigation a {
	display: block;
	padding: 1rem 0;
	color: var(--navy);
	font-size: clamp(.68rem, .75vw, .78rem);
	font-weight: 800;
	letter-spacing: .025em;
	line-height: 1.25;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
}

/* Top-level menu items with a dropdown indicator */
.split-navigation>ul>li.menu-item-has-children>a,
.split-navigation>ul>li.page_item_has_children>a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .3rem;
}

.split-navigation>ul>li.menu-item-has-children>a::before,
.split-navigation>ul>li.page_item_has_children>a::before {
	content: '';
	display: inline-block;
	width: 4.5px;
	height: 4.5px;
	border-right: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: rotate(45deg) translateY(-2px);
	margin-left: .15rem;
	transition: transform .2s ease, opacity .2s ease;
	opacity: .65;
	order: 2;
}

.split-navigation>ul>li.menu-item-has-children:hover>a::before,
.split-navigation>ul>li.menu-item-has-children:focus-within>a::before,
.split-navigation>ul>li.page_item_has_children:hover>a::before,
.split-navigation>ul>li.page_item_has_children:focus-within>a::before {
	transform: rotate(-135deg) translateY(-2px);
	opacity: 1;
}

.split-navigation>ul>li>a::after {
	content: '';
	position: absolute;
	right: 50%;
	bottom: .4rem;
	left: 50%;
	height: 2px;
	background: var(--green);
	transition: left .2s ease, right .2s ease;
}

.split-navigation>ul>li:hover>a::after,
.split-navigation>ul>li:focus-within>a::after,
.split-navigation>ul>.current-menu-item>a::after,
.split-navigation>ul>.current-menu-ancestor>a::after {
	right: 0;
	left: 0;
}

.split-navigation .sub-menu {
	display: none;
	position: absolute;
	top: calc(100% - .35rem);
	left: 50%;
	z-index: 60;
	min-width: 275px;
	margin: 0;
	padding: .7rem 0;
	border-top: 3px solid var(--green);
	background: var(--white);
	box-shadow: var(--shadow);
	list-style: none;
	transform: translateX(-50%);
}

.split-navigation .sub-menu .sub-menu {
	top: -.7rem;
	left: 100%;
	transform: none;
}

.split-navigation .sub-menu a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: .65rem 1.2rem;
	color: var(--ink);
	font-size: .76rem;
	text-align: left;
	text-transform: none;
}

/* Nested 2nd-level submenu items with a right arrow indicator */
.split-navigation .sub-menu li.menu-item-has-children>a::after,
.split-navigation .sub-menu li.page_item_has_children>a::after {
	content: '';
	display: inline-block;
	width: 4.5px;
	height: 4.5px;
	border-right: 1.5px solid currentColor;
	border-top: 1.5px solid currentColor;
	transform: rotate(45deg);
	margin-left: .75rem;
	opacity: .5;
	transition: transform .2s ease, opacity .2s ease;
}

.split-navigation .sub-menu li.menu-item-has-children:hover>a::after,
.split-navigation .sub-menu li.page_item_has_children:hover>a::after {
	transform: rotate(45deg) translateX(2px);
	opacity: 1;
}

.split-navigation .sub-menu a:hover,
.split-navigation .sub-menu a:focus-visible {
	color: var(--teal);
	background: var(--cream);
}

.split-navigation li:hover>.sub-menu,
.split-navigation li:focus-within>.sub-menu {
	display: block;
}

.menu-toggle {
	display: none;
	margin-left: .3rem;
	padding: .5rem;
	border: 0;
	color: var(--navy);
	background: transparent;
}

.menu-toggle__label {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
}

.menu-toggle__icon {
	display: grid;
	gap: 5px;
	width: 27px;
}

.menu-toggle__icon i {
	display: block;
	width: 100%;
	height: 2px;
	background: currentColor;
	transition: transform .2s ease, opacity .2s ease;
}

.menu-toggle[aria-expanded="true"] .menu-toggle__icon i:first-child {
	transform: translateY(7px) rotate(45deg);
}

.menu-toggle[aria-expanded="true"] .menu-toggle__icon i:nth-child(2) {
	opacity: 0;
}

.menu-toggle[aria-expanded="true"] .menu-toggle__icon i:last-child {
	transform: translateY(-7px) rotate(-45deg);
}

.mobile-call,
.mobile-menu-panel,
.mobile-menu-backdrop {
	display: none;
}

.home-hero {
	position: relative;
	display: grid;
	align-items: center;
	min-height: clamp(640px, 80vh, 900px);
	overflow: hidden;
	color: var(--white);
	background: var(--navy) center/cover no-repeat;
}

.home-hero__video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.home-hero__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(7, 31, 47, .88), rgba(7, 31, 47, .55) 48%, rgba(7, 31, 47, .15));
}

.home-hero__content {
	position: relative;
	z-index: 2;
	padding-block: 7rem;
}

.home-hero h1 {
	max-width: 850px;
	color: var(--white);
}

.home-hero__intro {
	max-width: 650px;
	font-size: var(--content-font-size);
	line-height: 1.7;
}

.home-hero .eyebrow {
	color: #c8db8e;
}

.home-trust-bar {
	position: relative;
	z-index: 3;
	border-bottom: 1px solid rgba(16, 47, 70, .1);
	background: var(--white);
	box-shadow: 0 12px 32px rgba(10, 36, 54, .12);
}

.home-trust-bar__inner {
	display: flex;
	align-items: center;
	gap: clamp(1.25rem, 3vw, 3rem);
	min-height: 108px;
	padding-block: 1rem;
}

.home-trust-bar__label {
	margin: 0;
	color: var(--navy);
	font-family: Georgia, serif;
	font-size: clamp(1.35rem, 2vw, 1.8rem);
	white-space: nowrap;
}

.home-trust-bar__google {
	display: flex;
	align-items: center;
	gap: .55rem;
	padding-right: clamp(1.25rem, 3vw, 3rem);
	border-right: 1px solid var(--line);
	color: var(--navy);
	white-space: nowrap;
}

.home-trust-bar__google-mark {
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	color: #4285f4;
	background: #f6f8fb;
	font-size: 1.25rem;
	font-weight: 700;
}

.home-trust-bar__stars,
.reviews-rating__stars {
	color: #f4b400;
	letter-spacing: .06em;
}

.certification-badges--trust-bar {
	flex: 1;
	flex-wrap: nowrap;
	justify-content: flex-end;
	gap: clamp(.75rem, 1.5vw, 1.5rem);
}

.certification-badges--trust-bar .certification-badges__item {
	width: clamp(62px, 7vw, 92px);
	height: 66px;
}

.section {
	padding-block: clamp(4.5rem, 9vw, 8rem);
}

.section--sand {
	background: var(--sand);
}

.section--navy {
	color: var(--white);
	background: var(--navy);
}

.section--teal {
	color: var(--white);
	background: var(--teal);
}

.section--dark,
.section--navy-deep {
	color: var(--white);
	background: var(--navy-deep);
}

.section--navy h1,
.section--navy h2,
.section--navy h3,
.section--navy h4,
.section--teal h1,
.section--teal h2,
.section--teal h3,
.section--teal h4,
.section--dark h1,
.section--dark h2,
.section--dark h3,
.section--dark h4 {
	color: var(--white);
}

.section--navy p,
.section--navy .prose p,
.section--navy .section-heading p,
.section--navy .section-heading>p,
.section--navy .split__content p,
.section--navy .media-feature__content p,
.section--teal p,
.section--teal .prose p,
.section--teal .section-heading p,
.section--teal .section-heading>p,
.section--teal .split__content p,
.section--teal .media-feature__content p,
.section--dark p,
.section--dark .prose p,
.section--dark .section-heading p,
.section--dark .section-heading>p,
.section--dark .split__content p,
.section--dark .media-feature__content p,
.section--cta p,
.section--cta .prose p,
.page-hero p:not(.hero-breadcrumbs) {
	color: rgba(255, 255, 255, 0.92) !important;
}

.section--navy .eyebrow,
.section--teal .eyebrow,
.section--dark .eyebrow,
.section--cta .eyebrow {
	color: #a0dc67;
}

.section--navy strong,
.section--teal strong,
.section--dark strong,
.section--cta strong {
	color: var(--white);
}

.section--navy a:not(.button):not(.text-link),
.section--teal a:not(.button):not(.text-link),
.section--dark a:not(.button):not(.text-link),
.section--cta a:not(.button):not(.text-link) {
	color: #8be4df;
}

.section-heading {
	max-width: 760px;
	margin: 0 auto 3rem;
	text-align: center;
}

.intro-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
	align-items: center;
	gap: clamp(3rem, 7vw, 7rem);
}

@media (max-width: 768px) {
	.intro-grid h2 {
		text-align: center;
	}
}

.split {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
	align-items: stretch;
	gap: clamp(3rem, 7vw, 7rem);
}

	.intro-grid__media,
	.split__media {
		display: flex;
		flex-direction: column;
		width: 100%;
		height: 100%;
	}

	.intro-grid__media img,
	.split__media img {
		width: 100%;
		height: 100%;
		min-height: 480px;
		aspect-ratio: 4/5;
		object-fit: cover;
		object-position: center;
		box-shadow: var(--shadow);
		border-radius: var(--radius);
		flex: 1;
	}

	.split__content {
		display: flex;
		flex-direction: column;
		justify-content: center;
	}

	/* Split Sidebar Layout for Therapy & Clinical Subpages */
	.split--sidebar {
		display: grid;
		grid-template-columns: minmax(0, 1.62fr) minmax(320px, 1fr);
		align-items: stretch;
		gap: clamp(2.5rem, 5vw, 4.5rem);
	}

	.split--sidebar .split__content {
		justify-content: flex-start;
	}

	.split--sidebar .split__content h2 {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: clamp(2rem, 3.5vw, 2.75rem);
		font-weight: 500;
		color: var(--navy);
		line-height: 1.18;
		margin-bottom: 1.25rem;
	}

	.split--sidebar .split__action {
		margin-top: 2rem;
	}

	/* Rich Prose Formatting */
	.prose p {
		font-size: var(--content-font-size);
		color: var(--muted);
		line-height: 1.75;
		margin-bottom: 1.35rem;
	}

	.prose h3 {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: clamp(1.4rem, 2.2vw, 1.8rem);
		font-weight: 500;
		color: var(--navy);
		line-height: 1.25;
		margin-top: 2.25rem;
		margin-bottom: .85rem;
	}

	.prose h4 {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: clamp(1.2rem, 1.8vw, 1.45rem);
		font-weight: 500;
		color: var(--navy);
		line-height: 1.3;
		margin-top: 1.75rem;
		margin-bottom: .6rem;
	}

	.prose ul {
		margin: 0 0 1.75rem 1.25rem;
		padding: 0;
		color: var(--muted);
		line-height: 1.7;
		font-size: 1.02rem;
	}

	.prose li {
		margin-bottom: .6rem;
		padding-left: .25rem;
	}

	.prose strong {
		color: var(--navy);
		font-weight: 700;
	}

	.prose em {
		font-style: italic;
	}

	.prose a:not(.button):not(.resource-card):not(.resource-card__link):not(.infographic-viewer__link) {
		color: var(--teal);
		font-weight: 700;
		text-decoration: underline;
		text-underline-offset: 3px;
		transition: color .2s ease;
	}

	.prose a:not(.button):not(.resource-card):not(.resource-card__link):not(.infographic-viewer__link):hover,
	.prose a:not(.button):not(.resource-card):not(.resource-card__link):not(.infographic-viewer__link):focus-visible {
		color: var(--navy);
	}

	.prose img {
		max-width: 100%;
		height: auto;
		border-radius: 14px;
		margin: 1.75rem 0;
		box-shadow: 0 8px 24px rgba(10, 36, 54, .07);
	}

	/* Clinical Sidebar & Sticky CTA */
	.split__sidebar {
		display: flex;
		flex-direction: column;
		gap: 1.5rem;
		position: relative;
		min-width: 0;
		align-self: stretch;
	}

	.sidebar-card {
		background: var(--white);
		border: 1px solid rgba(16, 47, 70, .08);
		border-radius: 16px;
		padding: 1.75rem;
		box-shadow: 0 8px 24px rgba(10, 36, 54, .10);
	}

	/* Sticky Admissions CTA Card */
	.sidebar-card--sticky-cta {
		position: sticky !important;
		top: 55px !important;
		z-index: 10;
	}

	/* 1. Quick Admissions Card (Option 3B) */
	.sidebar-card--admissions,
	.sidebar-card--helpline {
		background: var(--navy) !important;
		color: #ffffff !important;
		border: 1px solid rgba(255, 255, 255, 0.1) !important;
		border-top: 4px solid var(--green-light, #a4c965) !important;
		box-shadow: 0 12px 34px rgba(10, 36, 54, 0.22) !important;
		border-radius: 14px;
	}

	.sidebar-card--admissions .sidebar-card__header,
	.sidebar-card--helpline .sidebar-card__header {
		display: flex;
		align-items: center;
		gap: 0.85rem;
		margin-bottom: 1rem;
	}

	.sidebar-card--admissions .sidebar-card__icon,
	.sidebar-card--helpline .sidebar-card__icon {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		flex-shrink: 0;
		width: 44px;
		height: 44px;
		border-radius: 10px;
		background: rgba(164, 201, 101, 0.15) !important;
		color: #a4c965 !important;
		line-height: 0;
		margin: 0;
		padding: 0;
	}

	.sidebar-card--admissions .sidebar-card__icon svg,
	.sidebar-card--helpline .sidebar-card__icon svg {
		display: block;
		margin: auto;
	}

	.sidebar-card--admissions .sidebar-card__tag,
	.sidebar-card--helpline .sidebar-card__tag {
		display: block;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: 0.74rem;
		font-weight: 800;
		letter-spacing: 0.08em;
		text-transform: uppercase;
		color: #a4c965 !important;
		margin: 0 0 0.15rem 0;
		line-height: 1.2;
	}

	.sidebar-card--admissions .sidebar-card__title,
	.sidebar-card--helpline .sidebar-card__title {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: 1.25rem;
		font-weight: 600;
		color: #ffffff !important;
		line-height: 1.25;
		margin: 0;
	}

	.sidebar-card--admissions .sidebar-card__text,
	.sidebar-card--helpline .sidebar-card__text {
		font-size: 0.92rem;
		color: #cbd5e1 !important;
		line-height: 1.55;
		margin-bottom: 1.25rem;
	}

	.sidebar-card--admissions .sidebar-card__btn,
	.sidebar-card--helpline .sidebar-card__btn {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 0.5rem;
		text-align: center;
		font-family: "Avenir Next", Avenir, "Helvetica Neue", Arial, sans-serif;
		font-size: 0.95rem;
		font-weight: 500;
		padding: 0.85rem 1.25rem;
		border-radius: 2px;
		margin-bottom: 0.65rem;
		background: var(--green, #75943f) !important;
		border: 1px solid var(--green, #75943f) !important;
		color: #ffffff !important;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		transition: all 0.2s ease;
	}

	.sidebar-card--admissions .sidebar-card__btn:hover,
	.sidebar-card--helpline .sidebar-card__btn:hover {
		background: var(--teal, #177c76) !important;
		border-color: var(--teal, #177c76) !important;
		color: #ffffff !important;
		transform: translateY(-2px);
		box-shadow: 0 4px 14px rgba(23, 124, 118, 0.35);
	}

	.sidebar-card--admissions .sidebar-card__btn svg,
	.sidebar-card--helpline .sidebar-card__btn svg {
		margin-right: 0.25rem;
	}

	.sidebar-card--admissions .sidebar-card__btn--secondary,
	.sidebar-card--helpline .sidebar-card__link {
		display: block;
		text-align: center;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: 0.88rem;
		font-weight: 700;
		color: #ffffff !important;
		text-decoration: underline;
		text-underline-offset: 3px;
		transition: color 0.2s ease;
		background: transparent !important;
		border: none !important;
		padding: 0.25rem 0 !important;
		margin-bottom: 0;
	}

	.sidebar-card--admissions .sidebar-card__btn--secondary:hover,
	.sidebar-card--helpline .sidebar-card__link:hover {
		color: #a4c965 !important;
		background: transparent !important;
		transform: none;
	}

	/* Trust Badges Mini */
	.trust-badges-mini {
		margin-top: 1.25rem;
		padding-top: 1rem;
		border-top: 1px solid rgba(255, 255, 255, 0.12);
		display: flex;
		justify-content: space-around;
		align-items: center;
		font-size: 0.75rem;
		color: #94a3b8;
		font-weight: 600;
	}

	.trust-badges-mini span {
		display: flex;
		align-items: center;
		gap: 0.35rem;
	}

	.trust-badges-mini svg {
		color: #a4c965;
		flex-shrink: 0;
	}

	/* 2. Navigation Card */
	.sidebar-card--nav {
		padding: 1.5rem 1.75rem;
	}

	.sidebar-card__nav-title {
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: 1.15rem;
		font-weight: 800;
		color: var(--navy);
		margin: 0 0 1rem 0;
		padding-bottom: .75rem;
		border-bottom: 1px solid rgba(16, 47, 70, .08);
	}

	.sidebar-nav {
		margin: 0;
		padding: 0;
		list-style: none;
		display: flex;
		flex-direction: column;
		gap: .4rem;
	}

	.sidebar-nav__item {
		margin: 0;
	}

	.sidebar-nav__link {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: .65rem .85rem;
		border-radius: 8px;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .92rem;
		font-weight: 600;
		color: var(--navy);
		text-decoration: none;
		transition: background-color .2s ease, color .2s ease, transform .15s ease;
	}

	.sidebar-nav__arrow {
		font-size: 1.1rem;
		color: var(--teal);
		transition: transform .2s ease;
	}

	.sidebar-nav__link:hover {
		background: var(--sand);
		color: var(--teal);
		transform: translateX(3px);
	}

	.sidebar-nav__link:hover .sidebar-nav__arrow {
		transform: translateX(3px);
	}

	.sidebar-nav__item.is-active .sidebar-nav__link {
		background: rgba(38, 139, 140, .1);
		color: var(--teal);
		font-weight: 800;
		border-left: 3px solid var(--teal);
	}

	.sidebar-nav__item.is-active .sidebar-nav__arrow {
		display: none;
	}

	/* 3. Trust Strip Card */
	.sidebar-card--trust {
		padding: 1.25rem 1.5rem;
		display: flex;
		flex-direction: column;
		gap: .85rem;
		background: rgba(248, 246, 242, .7);
	}

	.sidebar-trust-item {
		display: flex;
		align-items: center;
		gap: .65rem;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .84rem;
		font-weight: 700;
		color: var(--navy);
		line-height: 1.35;
	}

	.sidebar-trust-item svg {
		color: var(--teal);
		flex-shrink: 0;
	}

	@media (max-width: 980px) {
		.split--sidebar {
			grid-template-columns: 1fr;
			gap: 2.5rem;
		}

		.split__sidebar,
		.sidebar-card--sticky-cta {
			position: static;
		}
	}

	.intro-collage {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		grid-auto-rows: 120px;
		gap: .55rem;
	}

	.intro-collage img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.intro-collage img:first-child {
		grid-column: span 2;
		grid-row: span 2;
	}

	.intro-collage img:nth-child(5) {
		grid-row: span 2;
	}

	.feature-list {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: .8rem 1.5rem;
		margin: 2rem 0;
		padding: 0;
		list-style: none;
	}

	.feature-list li {
		position: relative;
		padding-left: 1.5rem;
		font-weight: 700;
	}

	.feature-list li::before {
		content: '✓';
		position: absolute;
		top: 0;
		left: 0;
		color: var(--green);
		font-size: 1.1em;
		font-weight: 900;
	}

	.split--image-right .split__content {
		order: 1;
	}

	.split--image-right .split__media {
		order: 2;
	}

	.split--image-left .split__media {
		order: 1;
	}

	.split--image-left .split__content {
		order: 2;
	}

	.card-grid {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 1.25rem;
	}

	.content-card {
		overflow: hidden;
		border: 1px solid var(--line);
		background: var(--white);
		box-shadow: 0 10px 28px rgba(10, 36, 54, .11);
	}

	.content-card__media img {
		width: 100%;
		aspect-ratio: 4/3;
		object-fit: cover;
	}

	.content-card__body {
		padding: 1.5rem;
	}

	.content-card__body p {
		color: var(--muted);
		font-size: .95rem;
	}

	.section--logos {
		text-align: center;
		background: var(--cream);
	}

	.section--logos h2 {
		font-size: clamp(1.8rem, 3vw, 2.7rem);
	}

	.logo-cloud {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		gap: 2rem 3rem;
		margin-top: 2.5rem;
	}

	.logo-cloud img {
		max-width: 150px;
		max-height: 75px;
		object-fit: contain;
		filter: grayscale(1);
		opacity: .8;
	}

	.section--navy.section--logos h2,
	.section--teal.section--logos h2 {
		color: var(--white);
	}

	.section--navy.section--logos .logo-cloud img,
	.section--teal.section--logos .logo-cloud img {
		filter: none;
		opacity: 1;
	}

	.media-feature {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: center;
		gap: clamp(3rem, 7vw, 7rem);
	}

	.media-feature--left .media-feature__media {
		order: -1;
	}

	.media-feature__media img,
	.media-feature__media video {
		width: 100%;
		max-height: 680px;
		object-fit: cover;
		border-radius: 4px;
		box-shadow: var(--shadow);
	}

	.section--testimonials {
		color: var(--ink);
		background: var(--cream);
	}

	.section--testimonials .section-heading h2 {
		color: var(--navy);
	}

	.testimonial-grid {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 1.25rem;
	}

	.testimonial-card {
		overflow: hidden;
		background: var(--white);
		box-shadow: var(--shadow);
		border-radius: 12px;
	}

	.testimonial-card video {
		display: block;
		width: 100%;
		aspect-ratio: 4/3;
		background: var(--navy);
		object-fit: cover;
	}

	.testimonial-card:nth-child(n+4) video {
		aspect-ratio: 9/13;
	}

	.testimonial-card__body {
		padding: 1.3rem;
	}

	.testimonial-card__body p {
		color: var(--ink);
	}

	.testimonial-card h3 {
		font-size: 1.125rem;
		font-family: var(--font-primary);
		color: var(--navy);
	}

	.section-action {
		margin-top: 2rem;
		text-align: center;
	}

	.section--facility {
		background: var(--cream);
	}

	.facility-gallery {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: .75rem;
	}

	.facility-gallery figure {
		margin: 0;
		overflow: hidden;
	}

	.facility-gallery img {
		width: 100%;
		aspect-ratio: 4/3;
		object-fit: cover;
		transition: transform .35s ease;
	}

	.facility-gallery figure:hover img {
		transform: scale(1.035);
	}

	.facility-video {
		max-width: 950px;
		margin: 2rem auto 0;
	}

	.facility-video video {
		display: block;
		width: 100%;
		background: var(--navy);
		box-shadow: var(--shadow);
	}

	.section--reviews {
		text-align: center;
		background: linear-gradient(180deg, var(--white), var(--sand));
	}

	.reviews-logo img {
		width: min(240px, 60vw);
		margin: 0 auto;
	}

	.reviews-rating {
		margin: 1rem 0 0;
		color: var(--navy);
		font-size: 1.25rem;
	}

	.reviews-rating {
		display: flex;
		align-items: center;
		gap: .7rem;
	}

	.reviews-embed {
		width: 100%;
		min-width: 0;
	}

	.reviews-embed .ti-widget {
		font-family: inherit !important;
	}

	.reviews-embed .ti-widget-container,
	.reviews-embed .ti-widget-container,
	.reviews-embed .ti-review-item {
		border-radius: 12px !important;
	}

	/* Consultation & Form Sections */
	.section--consultation {
		background: var(--sand);
		padding-block: clamp(3.5rem, 6vw, 6rem);
	}

	.admissions-v2-hub {
		width: 100%;
	}

	.admissions-v2-heading {
		text-align: center;
		max-width: 820px;
		margin: 0 auto 2.75rem;
	}

	.admissions-v2-heading .eyebrow {
		display: inline-block;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .8rem;
		font-weight: 700;
		letter-spacing: .14em;
		text-transform: uppercase;
		color: var(--teal) !important;
		margin-bottom: .6rem;
	}

	.admissions-v2-heading h2 {
		font-size: clamp(2rem, 3.5vw, 2.75rem);
		font-weight: 800;
		color: var(--navy) !important;
		line-height: 1.25;
		margin-bottom: .85rem;
	}

	.admissions-v2-intro,
	.admissions-v2-intro p {
		color: var(--muted) !important;
		font-size: var(--content-font-size);
		line-height: 1.65;
		margin: 0 auto;
	}

	/* 3-Card Action Grid */
	.admissions-v2-cards {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 1.5rem;
		margin-bottom: 2.5rem;
	}

	.admissions-v2-card {
		display: flex;
		flex-direction: column;
		padding: 2.2rem 1.85rem;
		background: var(--white);
		border: 1px solid rgba(16, 47, 70, .08);
		border-radius: 16px;
		box-shadow: 0 8px 24px rgba(10, 36, 54, .09);
		transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
		text-align: left;
	}

	.admissions-v2-card:hover {
		transform: translateY(-4px);
		box-shadow: 0 16px 36px rgba(10, 36, 54, .16);
		border-color: rgba(38, 139, 140, .35);
	}

	.admissions-v2-card__icon {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		flex-shrink: 0;
		width: 52px;
		height: 52px;
		border-radius: 12px;
		background: rgba(38, 139, 140, .12);
		color: var(--teal);
		box-sizing: border-box;
		line-height: 0;
		padding: 0;
		margin: 0 0 1.25rem 0;
	}

	.admissions-v2-card__icon svg {
		display: block;
		margin: auto;
	}

	.admissions-v2-card--phone .admissions-v2-card__icon {
		background: rgba(122, 179, 73, .15);
		color: var(--green);
	}

	.admissions-v2-card--contact .admissions-v2-card__icon {
		background: rgba(10, 36, 54, .08);
		color: var(--navy);
	}

	.admissions-v2-card__tag {
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .75rem;
		font-weight: 600;
		letter-spacing: .08em;
		text-transform: uppercase;
		color: var(--teal);
		margin-bottom: .45rem;
	}

	.admissions-v2-card--phone .admissions-v2-card__tag {
		color: var(--green);
	}

	.admissions-v2-card__title {
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: 1.3rem;
		font-weight: 700;
		color: var(--navy);
		line-height: 1.3;
		margin-bottom: .6rem;
	}

	.admissions-v2-card__text {
		font-size: .92rem;
		color: var(--muted);
		line-height: 1.55;
		margin-bottom: 1.75rem;
		flex: 1;
	}

	.admissions-v2-card__btn {
		width: 100%;
		justify-content: center;
		text-align: center;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .92rem;
		font-weight: 700;
		letter-spacing: .04em;
		padding: .85rem 1.25rem;
		border-radius: 2px;
		background: var(--green);
		color: var(--white);
		border: 1px solid var(--green);
		text-transform: uppercase;
		transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
	}

	.admissions-v2-card__btn:hover {
		background: #5f7a35;
		border-color: #5f7a35;
		color: var(--white);
		transform: translateY(-2px);
		box-shadow: 0 6px 16px rgba(112, 142, 66, .35);
	}

	/* Trust Strip */
	.admissions-v2-trust {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		gap: clamp(1rem, 3vw, 2.5rem);
		padding-top: 2rem;
		border-top: 1px solid rgba(16, 47, 70, .08);
	}

	.admissions-v2-trust__item {
		display: flex;
		align-items: center;
		gap: .5rem;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .88rem;
		font-weight: 700;
		color: var(--navy);
	}

	.admissions-v2-trust__item svg {
		color: var(--teal);
		flex-shrink: 0;
	}

	@media (max-width: 960px) {
		.admissions-v2-cards {
			grid-template-columns: 1fr;
			gap: 1.25rem;
		}
	}

	/* Static Card Grid System */
	.card-grid--static {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 1.75rem;
	}

	@media (max-width: 1024px) {
		.card-grid--static {
			grid-template-columns: repeat(2, 1fr);
			gap: 1.5rem;
		}
	}

	@media (max-width: 640px) {
		.card-grid--static {
			grid-template-columns: 1fr;
			gap: 1.25rem;
		}
	}

	.content-card--therapy {
		display: flex;
		flex-direction: column;
		background: var(--white);
		border: 1px solid rgba(16, 47, 70, .08);
		border-radius: 16px;
		box-shadow: 0 8px 24px rgba(10, 36, 54, .09);
		overflow: hidden;
		transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
	}

	.content-card--therapy:hover {
		transform: translateY(-4px);
		box-shadow: 0 16px 36px rgba(10, 36, 54, .16);
		border-color: rgba(38, 139, 140, .35);
	}

	.content-card--therapy .content-card__body {
		display: flex;
		flex-direction: column;
		flex: 1;
		padding: 1.85rem;
	}

	.content-card--therapy .content-card__badge {
		display: inline-block;
		align-self: flex-start;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .72rem;
		font-weight: 600;
		letter-spacing: .08em;
		text-transform: uppercase;
		color: var(--teal);
		background: rgba(38, 139, 140, .1);
		padding: .25rem .65rem;
		border-radius: 4px;
		margin-bottom: .9rem;
	}

	.content-card--therapy .content-card__title {
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: 1.28rem;
		font-weight: 700;
		color: var(--navy);
		line-height: 1.3;
		margin-bottom: .65rem;
	}

	.content-card--therapy .content-card__title-link {
		color: inherit;
		text-decoration: none;
		transition: color .2s ease;
	}

	.content-card--therapy .content-card__title-link:hover,
	.content-card--therapy .content-card__title-link:focus-visible {
		color: var(--teal);
	}

	.content-card--therapy .content-card__text {
		font-size: .92rem;
		color: var(--muted);
		line-height: 1.55;
		margin-bottom: 1.5rem;
		flex: 1;
	}

	.content-card--therapy .content-card__action {
		margin-top: auto;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .88rem;
		font-weight: 800;
		color: var(--teal);
		display: inline-flex;
		align-items: center;
		gap: .5rem;
		text-decoration: none;
		transition: transform .2s ease, color .2s ease;
	}

	.content-card--therapy .content-card__action::after {
		content: '\2192';
		display: inline-block;
		font-size: 1.3rem;
		line-height: .75;
		transition: transform .2s ease;
	}

	.content-card--therapy:hover .content-card__action::after {
		transform: translateX(5px);
	}

	/* WPForms Global Styling System */
	div.wpforms-container-full {
		width: 100%;
		margin: 1.5rem 0 0;
	}

	div.wpforms-container-full .wpforms-form {
		width: 100%;
		margin: 0;
	}

	div.wpforms-container-full .wpforms-form .wpforms-field {
		margin-bottom: 1.4rem !important;
		padding: 0 !important;
		clear: both;
	}

	div.wpforms-container-full .wpforms-form .wpforms-field-label {
		display: block !important;
		font-family: "Avenir Next", Avenir, sans-serif !important;
		font-weight: 700 !important;
		font-size: .92rem !important;
		letter-spacing: .02em !important;
		color: var(--navy) !important;
		margin-bottom: .45rem !important;
	}

	div.wpforms-container-full .wpforms-form .wpforms-required-label {
		color: #e53e3e !important;
		margin-left: .25rem !important;
		font-weight: 700 !important;
	}

	div.wpforms-container-full .wpforms-form .wpforms-field-sublabel {
		display: block !important;
		font-size: .8rem !important;
		color: var(--muted) !important;
		margin-top: .35rem !important;
		font-weight: 400 !important;
	}

	div.wpforms-container-full .wpforms-form input[type="text"],
	div.wpforms-container-full .wpforms-form input[type="email"],
	div.wpforms-container-full .wpforms-form input[type="tel"],
	div.wpforms-container-full .wpforms-form input[type="url"],
	div.wpforms-container-full .wpforms-form input[type="password"],
	div.wpforms-container-full .wpforms-form input[type="number"],
	div.wpforms-container-full .wpforms-form select,
	div.wpforms-container-full .wpforms-form textarea {
		width: 100% !important;
		max-width: 100% !important;
		padding: .85rem 1.1rem !important;
		border: 1.5px solid rgba(16, 47, 70, .18) !important;
		border-radius: 6px !important;
		color: var(--ink) !important;
		background-color: var(--white) !important;
		font-family: inherit !important;
		font-size: 1rem !important;
		line-height: 1.5 !important;
		box-sizing: border-box !important;
		box-shadow: none !important;
		transition: border-color .2s ease, box-shadow .2s ease !important;
	}

	div.wpforms-container-full .wpforms-form textarea {
		min-height: 120px;
	}

	div.wpforms-container-full .wpforms-form input:focus,
	div.wpforms-container-full .wpforms-form select:focus,
	div.wpforms-container-full .wpforms-form textarea:focus {
		border-color: var(--teal) !important;
		box-shadow: 0 0 0 3px rgba(38, 139, 140, .18) !important;
		outline: none !important;
	}

	div.wpforms-container-full .wpforms-field-name .wpforms-field-row {
		display: grid !important;
		grid-template-columns: 1fr 1fr;
		gap: 1rem;
	}

	div.wpforms-container-full .wpforms-field-name .wpforms-field-row-block {
		padding: 0 !important;
		margin: 0 !important;
		width: 100% !important;
	}

	/* WPForms Section Breaks / Section Titles */
	div.wpforms-container-full .wpforms-field-divider {
		margin-top: 2rem !important;
		margin-bottom: 1.5rem !important;
	}

	div.wpforms-container-full .wpforms-field-divider h3,
	div.wpforms-container-full .wpforms-field-divider .wpforms-field-label {
		font-family: 'Playfair Display', serif !important;
		font-size: 1.35rem !important;
		color: var(--navy) !important;
		border-bottom: 2px solid var(--sand) !important;
		padding-bottom: .5rem !important;
		margin-bottom: 1rem !important;
	}

	/* WPForms Submit Button */
	div.wpforms-container-full .wpforms-form button[type="submit"] {
		min-height: 52px !important;
		width: 100% !important;
		padding: .9rem 2rem !important;
		border: none !important;
		border-radius: 6px !important;
		color: var(--white) !important;
		background: var(--green) !important;
		font-family: "Avenir Next", Avenir, "Helvetica Neue", Arial, sans-serif !important;
		font-weight: 500 !important;
		font-size: .95rem !important;
		letter-spacing: .04em !important;
		text-transform: uppercase !important;
		cursor: pointer !important;
		transition: background .2s ease, transform .2s ease, box-shadow .2s ease !important;
		box-shadow: 0 4px 14px rgba(122, 179, 73, .35) !important;
		margin-top: .75rem !important;
	}

	div.wpforms-container-full .wpforms-form button[type="submit"]:hover,
	div.wpforms-container-full .wpforms-form button[type="submit"]:focus {
		background: var(--teal) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 6px 18px rgba(38, 139, 140, .4) !important;
	}

	/* ==========================================================================
   Elevated Contact Experience (Contact & Consultation Hub)
   ========================================================================== */
	.section--contact-v2 {
		position: relative;
		background: radial-gradient(circle at 85% 5%, rgba(38, 139, 140, .07), transparent 45%), var(--sand);
		padding-block: clamp(3rem, 5vw, 5rem);
	}

	/* Quick Action Cards Row */
	.contact-v2-quick-cards {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 1.25rem;
		margin-bottom: 2.25rem;
	}

	.contact-v2-quick-card {
		display: flex;
		align-items: center;
		gap: 1.1rem;
		padding: 1.25rem 1.5rem;
		background: var(--white);
		border: 1px solid rgba(16, 47, 70, .08);
		border-radius: 14px;
		box-shadow: 0 8px 24px rgba(10, 36, 54, .09);
		transition: transform .2s ease, box-shadow .2s ease;
	}

	.contact-v2-quick-card:hover {
		transform: translateY(-2px);
		box-shadow: 0 14px 30px rgba(10, 36, 54, .15);
	}

	.contact-v2-quick-card__icon {
		display: flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
		width: 48px;
		height: 48px;
		border-radius: 12px;
		background: rgba(38, 139, 140, .12);
		color: var(--teal);
		box-sizing: border-box;
		padding: 0;
		margin: 0;
		line-height: 0;
	}

	.contact-v2-quick-card__icon svg {
		display: block;
		margin: auto;
		flex-shrink: 0;
	}

	.contact-v2-quick-card--phone .contact-v2-quick-card__icon {
		background: rgba(122, 179, 73, .15);
		color: var(--green);
	}

	.contact-v2-quick-card__label {
		display: block;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .78rem;
		font-weight: 600;
		letter-spacing: .06em;
		text-transform: uppercase;
		color: var(--muted);
		line-height: 1.25;
	}

	.contact-v2-quick-card__val {
		display: block;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: 1.05rem;
		font-weight: 700;
		color: var(--navy);
		text-decoration: none;
		margin-top: .2rem;
		transition: color .2s ease;
	}

	a.contact-v2-quick-card__val:hover {
		color: var(--teal);
		text-decoration: underline;
	}

	/* Main 2-Column Grid */
	.contact-v2-grid {
		display: grid;
		grid-template-columns: minmax(0, 1.35fr) minmax(340px, .85fr);
		gap: 2rem;
		align-items: start;
		margin-bottom: 3rem;
	}

	/* Form Card */
	.contact-v2-form-card {
		background: var(--white);
		border-radius: 16px;
		padding: clamp(2rem, 4vw, 3.5rem);
		box-shadow: 0 15px 45px rgba(10, 36, 54, .13);
		border: 1px solid rgba(16, 47, 70, .06);
	}

	.contact-v2-form-card__header {
		margin-bottom: 1.75rem;
	}

	.contact-v2-form-card__title {
		font-size: clamp(1.85rem, 3.2vw, 2.5rem);
		color: var(--navy);
		margin-bottom: .6rem;
	}

	.contact-v2-form-card__intro {
		color: var(--muted);
		font-size: 1.02rem;
		line-height: 1.6;
	}

	.contact-v2-form-card__footer {
		display: flex;
		align-items: center;
		gap: .65rem;
		margin-top: 1.75rem;
		padding-top: 1.25rem;
		border-top: 1px solid rgba(16, 47, 70, .08);
		font-size: .82rem;
		color: var(--muted);
		line-height: 1.45;
	}

	.contact-v2-lock-icon {
		font-size: 1rem;
		flex-shrink: 0;
	}

	/* Sidebar */
	.contact-v2-sidebar {
		display: flex;
		flex-direction: column;
		gap: 1.5rem;
	}

	.contact-v2-sidebar-card {
		background: var(--white);
		border-radius: 16px;
		padding: 1.75rem;
		box-shadow: 0 10px 30px rgba(10, 36, 54, .11);
		border: 1px solid rgba(16, 47, 70, .06);
	}

	.contact-v2-sidebar-card--phone {
		background: linear-gradient(135deg, var(--navy-deep), var(--navy));
		color: var(--white);
		border: 1px solid rgba(255, 255, 255, .1);
	}

	.contact-v2-sidebar-card--phone h3 {
		color: var(--white);
		font-size: 1.35rem;
		margin-bottom: .4rem;
	}

	.contact-v2-sidebar-card--phone p {
		color: rgba(255, 255, 255, .8);
		font-size: .9rem;
		line-height: 1.55;
		margin-bottom: 1.25rem;
	}

	.contact-v2-pulse-badge {
		display: inline-flex;
		align-items: center;
		gap: .5rem;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .75rem;
		font-weight: 800;
		letter-spacing: .06em;
		text-transform: uppercase;
		color: #d5e59d;
		margin-bottom: .75rem;
	}

	.contact-v2-pulse-dot {
		width: 8px;
		height: 8px;
		border-radius: 50%;
		background: #7ab349;
		box-shadow: 0 0 0 0 rgba(122, 179, 73, .7);
		animation: contactPulse 2s infinite;
	}

	@keyframes contactPulse {
		0% {
			transform: scale(0.95);
			box-shadow: 0 0 0 0 rgba(122, 179, 73, .7);
		}

		70% {
			transform: scale(1);
			box-shadow: 0 0 0 8px rgba(122, 179, 73, 0);
		}

		100% {
			transform: scale(0.95);
			box-shadow: 0 0 0 0 rgba(122, 179, 73, 0);
		}
	}

	.contact-v2-secondary-phone {
		margin-top: .85rem;
		margin-bottom: 0 !important;
		font-size: .85rem !important;
		color: rgba(255, 255, 255, .7) !important;
		display: flex;
		align-items: center;
		gap: .5rem;
	}

	.contact-v2-secondary-phone a {
		color: #d5e59d;
		font-weight: 700;
		text-decoration: none;
	}

	.contact-v2-secondary-phone a:hover {
		text-decoration: underline;
	}

	/* Info Item in Sidebar */
	.contact-v2-info-item {
		display: flex;
		align-items: flex-start;
		gap: 1.1rem;
	}

	.contact-v2-info-item--divider {
		margin-top: 1.25rem;
		padding-top: 1.25rem;
		border-top: 1px solid rgba(16, 47, 70, .08);
	}

	.contact-v2-info-item__icon {
		display: flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
		width: 40px;
		height: 40px;
		border-radius: 10px;
		background: rgba(38, 139, 140, .1);
		color: var(--teal);
		box-sizing: border-box;
		padding: 0;
		margin: 0;
		line-height: 0;
	}

	.contact-v2-info-item__icon svg {
		display: block;
		margin: auto;
		flex-shrink: 0;
	}

	.contact-v2-info-item h4 {
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .85rem;
		font-weight: 800;
		letter-spacing: .06em;
		text-transform: uppercase;
		color: var(--navy);
		margin-bottom: .35rem;
	}

	.contact-v2-info-item address,
	.contact-v2-info-item p {
		font-style: normal;
		font-size: .9rem;
		color: var(--muted);
		line-height: 1.5;
		margin: 0;
	}

	.contact-v2-directions-link {
		display: inline-block;
		margin-top: .4rem;
		color: var(--teal);
		font-weight: 700;
		font-size: .88rem;
		text-decoration: none;
		transition: color .2s ease;
	}

	.contact-v2-directions-link:hover {
		color: var(--navy);
		text-decoration: underline;
	}

	/* Accreditations Card */
	.contact-v2-sidebar-card--badges h4 {
		font-size: .82rem;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-weight: 800;
		letter-spacing: .08em;
		text-transform: uppercase;
		color: var(--navy);
		margin-bottom: 1rem;
		text-align: center;
	}

	.contact-v2-sidebar-card--badges .certification-badges {
		justify-content: center;
		gap: 1.25rem;
	}

	/* Interactive Map Card */
	.contact-v2-map-card {
		background: var(--white);
		border-radius: 16px;
		padding: clamp(1.75rem, 3.5vw, 2.5rem);
		box-shadow: 0 15px 45px rgba(10, 36, 54, .07);
		border: 1px solid rgba(16, 47, 70, .06);
	}

	.contact-v2-map-card__header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1.5rem;
		margin-bottom: 1.5rem;
		flex-wrap: wrap;
	}

	.contact-v2-map-card__header h3 {
		font-size: clamp(1.4rem, 2.2vw, 1.85rem);
		color: var(--navy);
		margin: 0;
	}

	.contact-v2-map-wrapper {
		min-height: 440px;
		height: 480px;
		border-radius: 12px;
		overflow: hidden;
		border: 1px solid rgba(16, 47, 70, .08);
	}

	.contact-v2-map-wrapper iframe {
		display: block;
		width: 100%;
		height: 100%;
		border: 0;
	}

	@media (max-width: 1024px) {
		.contact-v2-quick-cards {
			grid-template-columns: 1fr;
		}

		.contact-v2-grid {
			grid-template-columns: 1fr;
		}
	}

	/* ==========================================================================
   Dedicated Insurance Verification Experience (CRO-Focused)
   ========================================================================== */
	.section--insurance-v2 {
		position: relative;
		background: radial-gradient(circle at 85% 5%, rgba(38, 139, 140, .07), transparent 45%), var(--sand);
		padding-block: clamp(3rem, 5vw, 5rem);
	}

	/* 3 Core Assurances Bar (Matched to Contact Page Sizing) */
	.insurance-v2-assurances {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 1.25rem;
		margin-bottom: 2.25rem;
	}

	.insurance-v2-assurance-item {
		display: flex;
		align-items: center;
		gap: 1.1rem;
		padding: 1.25rem 1.5rem;
		background: var(--white);
		border: 1px solid rgba(16, 47, 70, .08);
		border-radius: 14px;
		box-shadow: 0 8px 24px rgba(10, 36, 54, .09);
		transition: transform .2s ease, box-shadow .2s ease;
	}

	.insurance-v2-assurance-item:hover {
		transform: translateY(-2px);
		box-shadow: 0 14px 30px rgba(10, 36, 54, .15);
	}

	.insurance-v2-assurance-item__icon {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		flex-shrink: 0;
		width: 48px;
		height: 48px;
		border-radius: 12px;
		background: rgba(38, 139, 140, .12);
		color: var(--teal);
		box-sizing: border-box;
		padding: 0;
		margin: 0;
		line-height: 0;
	}

	.insurance-v2-assurance-item__icon svg {
		display: block;
		margin: auto;
		flex-shrink: 0;
	}

	.insurance-v2-assurance-item__label {
		display: block;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .78rem;
		font-weight: 600;
		letter-spacing: .06em;
		text-transform: uppercase;
		color: var(--muted);
		line-height: 1.25;
	}

	.insurance-v2-assurance-item__val,
	.insurance-v2-assurance-item strong {
		display: block;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: 1.05rem;
		font-weight: 700;
		color: var(--navy);
		line-height: 1.25;
		margin-top: .2rem;
	}

	/* Main Grid */
	.insurance-v2-grid {
		display: grid;
		grid-template-columns: minmax(0, 1.35fr) minmax(340px, .85fr);
		gap: 2rem;
		align-items: start;
	}

	/* Form Card */
	.insurance-v2-form-card {
		background: var(--white);
		border-radius: 16px;
		padding: clamp(2rem, 4vw, 3.5rem);
		box-shadow: 0 15px 45px rgba(10, 36, 54, .13);
		border: 1px solid rgba(16, 47, 70, .06);
	}

	.insurance-v2-form-card__header {
		margin-bottom: 1.75rem;
	}

	.insurance-v2-form-card__title {
		font-size: clamp(1.85rem, 3.2vw, 2.5rem);
		color: var(--navy);
		margin-bottom: .6rem;
	}

	.insurance-v2-form-card__intro {
		color: var(--muted);
		font-size: 1.02rem;
		line-height: 1.6;
	}

	.insurance-v2-form-card__footer {
		display: flex;
		align-items: center;
		gap: .65rem;
		margin-top: 1.75rem;
		padding-top: 1.25rem;
		border-top: 1px solid rgba(16, 47, 70, .08);
		font-size: .82rem;
		color: var(--muted);
		line-height: 1.45;
	}

	.insurance-v2-lock-icon {
		font-size: 1rem;
		flex-shrink: 0;
	}

	/* Sidebar & Cards */
	.insurance-v2-sidebar {
		display: flex;
		flex-direction: column;
		gap: 1.5rem;
	}

	.insurance-v2-sidebar-card {
		background: var(--white);
		border-radius: 16px;
		padding: 1.75rem;
		box-shadow: 0 10px 30px rgba(10, 36, 54, .11);
		border: 1px solid rgba(16, 47, 70, .06);
	}

	.insurance-v2-sidebar-card__header {
		margin-bottom: 1.25rem;
	}

	.insurance-v2-sidebar-card__badge {
		display: inline-block;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .72rem;
		font-weight: 800;
		letter-spacing: .08em;
		text-transform: uppercase;
		color: var(--teal);
		background: rgba(38, 139, 140, .1);
		padding: .25rem .65rem;
		border-radius: 4px;
		margin-bottom: .5rem;
	}

	.insurance-v2-sidebar-card h3 {
		font-size: 1.35rem;
		color: var(--navy);
		margin-bottom: .4rem;
	}

	.insurance-v2-sidebar-card p {
		font-size: .9rem;
		color: var(--muted);
		line-height: 1.5;
		margin: 0;
	}

	/* Logo Grid */
	.insurance-v2-logo-grid {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: .65rem;
		margin-top: 1.25rem;
		margin-bottom: 1.25rem;
	}

	.insurance-v2-logo-grid__item {
		display: grid;
		place-items: center;
		background: var(--navy);
		border: 1px solid rgba(255, 255, 255, .08);
		border-radius: 8px;
		padding: .5rem .75rem;
		height: 56px;
		box-shadow: 0 2px 8px rgba(10, 36, 54, .12);
		transition: transform .2s ease, background-color .2s ease;
	}

	.insurance-v2-logo-grid__item:hover {
		transform: translateY(-2px);
		background: var(--navy-deep);
	}

	.insurance-v2-logo-grid__item img {
		max-height: 34px;
		width: auto;
		object-fit: contain;
		display: block;
	}

	.insurance-v2-sidebar-card__subtext {
		font-size: .8rem !important;
		color: var(--muted) !important;
		line-height: 1.45 !important;
	}

	/* 24/7 Phone Card */
	.insurance-v2-sidebar-card--phone {
		background: linear-gradient(135deg, var(--navy-deep), var(--navy));
		color: var(--white);
		border: 1px solid rgba(255, 255, 255, .1);
	}

	.insurance-v2-sidebar-card--phone h3 {
		color: var(--white);
		font-size: 1.35rem;
		margin-bottom: .4rem;
	}

	.insurance-v2-sidebar-card--phone p {
		color: rgba(255, 255, 255, .8);
		margin-bottom: 1.25rem;
	}

	.insurance-v2-pulse-badge {
		display: inline-flex;
		align-items: center;
		gap: .5rem;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .75rem;
		font-weight: 800;
		letter-spacing: .06em;
		text-transform: uppercase;
		color: #d5e59d;
		margin-bottom: .75rem;
	}

	.insurance-v2-pulse-dot {
		width: 8px;
		height: 8px;
		border-radius: 50%;
		background: #7ab349;
		box-shadow: 0 0 0 0 rgba(122, 179, 73, .7);
		animation: insurancePulse 2s infinite;
	}

	@keyframes insurancePulse {
		0% {
			transform: scale(0.95);
			box-shadow: 0 0 0 0 rgba(122, 179, 73, .7);
		}

		70% {
			transform: scale(1);
			box-shadow: 0 0 0 8px rgba(122, 179, 73, 0);
		}

		100% {
			transform: scale(0.95);
			box-shadow: 0 0 0 0 rgba(122, 179, 73, 0);
		}
	}

	.button--phone {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: .6rem;
		width: 100%;
		min-height: 50px;
		background: var(--green) !important;
		border: 1px solid var(--green) !important;
		color: var(--white) !important;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-weight: 800;
		font-size: .95rem;
		letter-spacing: .04em;
		text-decoration: none;
		border-radius: 2px;
		transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
	}

	.button--phone:hover,
	.button--phone:focus-visible {
		background: var(--teal) !important;
		border-color: var(--teal) !important;
		transform: translateY(-1px);
		box-shadow: 0 6px 18px rgba(38, 139, 140, .4);
	}

	/* Badges Card */
	.insurance-v2-sidebar-card--badges h4 {
		font-size: .82rem;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-weight: 800;
		letter-spacing: .08em;
		text-transform: uppercase;
		color: var(--navy);
		margin-bottom: 1rem;
		text-align: center;
	}

	.insurance-v2-sidebar-card--badges .certification-badges {
		justify-content: center;
		gap: 1.25rem;
	}

	@media (max-width: 1024px) {
		.insurance-v2-assurances {
			grid-template-columns: repeat(2, 1fr);
		}

		.insurance-v2-grid {
			grid-template-columns: 1fr;
		}

		.insurance-v2-logo-grid {
			grid-template-columns: repeat(4, 1fr);
		}
	}

	@media (max-width: 640px) {
		.insurance-v2-assurances {
			grid-template-columns: 1fr;
		}

		.insurance-v2-logo-grid {
			grid-template-columns: repeat(2, 1fr);
		}
	}

	.section--cta {
		position: relative;
		color: var(--white);
		background: var(--navy) center/cover no-repeat;
		text-align: center;
	}

	.section--cta__overlay {
		position: absolute;
		inset: 0;
		background: rgba(10, 36, 54, .82);
	}

	.section--cta__inner {
		position: relative;
		max-width: 800px;
	}

	.section--cta h2 {
		color: var(--white);
	}

	/* Team Preview */
	.section--team-preview {
		padding-block: 5rem;
		background: var(--off-white);
	}

	.team-preview-grid {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
		gap: 2rem;
		margin-top: 3rem;
	}

	.team-card {
		background: var(--white);
		border-radius: var(--radius);
		overflow: hidden;
		box-shadow: var(--shadow);
		display: flex;
		flex-direction: column;
		text-align: center;
	}

	.team-card__image {
		aspect-ratio: 1;
		overflow: hidden;
	}

	.team-card__image img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.team-card__content {
		padding: 2rem;
		flex: 1;
		display: flex;
		flex-direction: column;
	}

	.team-card__content h3 {
		font-size: clamp(1.4rem, 2vw, 1.6rem);
		margin-bottom: 0.3rem;
	}

	.team-card__content h3 a {
		color: inherit;
		text-decoration: none;
	}

	.team-card__content h3 a:hover {
		color: var(--teal);
	}

	.team-card__role {
		color: var(--teal);
		font-weight: 700;
		margin-bottom: 1.5rem;
		font-size: 0.95rem;
	}

	.team-card__link {
		margin-top: auto;
		color: var(--navy);
		font-weight: 700;
		font-size: 0.9rem;
		text-transform: uppercase;
		letter-spacing: 0.05em;
	}

	.team-card__link:hover {
		color: var(--teal);
	}

	.page-hero {
		color: var(--white);
		background: var(--navy);
	}

	.page-hero--compact {
		padding-block: clamp(4rem, 8vw, 7rem);
	}

	.page-hero h1 {
		color: var(--white);
		font-size: clamp(2.5rem, 5vw, 4.5rem);
		margin-bottom: 0;
	}

	.page-hero__description {
		max-width: 680px;
		margin-top: 1.15rem;
	}

	.page-hero__description p {
		color: rgba(255, 255, 255, 0.85);
		font-size: var(--content-font-size);
		line-height: 1.7;
		margin: 0;
	}

	/* Compact Hero with Featured Image */
	.page-hero--has-image .page-hero__inner {
		display: grid;
		grid-template-columns: 1.15fr 0.85fr;
		gap: 3.5rem;
		align-items: center;
	}

	.page-hero__media {
		display: flex;
		justify-content: flex-end;
	}

	.page-hero__image {
		width: 100%;
		max-width: 500px;
		height: 320px;
		object-fit: cover;
		border-radius: 18px;
		box-shadow: 0 20px 48px rgba(0, 0, 0, 0.35);
		border: 1px solid rgba(255, 255, 255, 0.15);
		transition: transform 0.3s ease, box-shadow 0.3s ease;
	}

	.page-hero__image:hover {
		transform: translateY(-4px);
		box-shadow: 0 24px 56px rgba(0, 0, 0, 0.45);
	}

	@media (max-width: 980px) {
		.page-hero--has-image .page-hero__inner {
			grid-template-columns: 1fr;
			gap: 2.25rem;
		}

		.page-hero__media {
			justify-content: flex-start;
		}

		.page-hero__image {
			max-width: 100%;
			height: auto;
			max-height: 280px;
		}
	}

	/* ==========================================================================
   BREADCRUMBS SYSTEM (Global Standard)
   ========================================================================== */
	.site-breadcrumbs,
	.hero-breadcrumbs,
	.page-breadcrumbs,
	.article-breadcrumbs,
	.breadcrumb,
	#breadcrumbs {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 0.35rem 0.5rem;
		font-family: "Avenir Next", Avenir, "Helvetica Neue", Arial, sans-serif;
		font-size: 0.8125rem;
		font-weight: 500;
		line-height: 1.5;
		letter-spacing: 0.02em;
		margin-top: 0;
		margin-bottom: 1.25rem;
		padding: 0;
		list-style: none;
	}

	.site-breadcrumbs a,
	.hero-breadcrumbs a,
	.page-breadcrumbs a,
	.article-breadcrumbs a,
	.breadcrumb a,
	#breadcrumbs a {
		color: inherit;
		text-decoration: none;
		transition: color 0.15s ease, opacity 0.15s ease;
	}

	.site-breadcrumbs a:hover,
	.hero-breadcrumbs a:hover,
	.page-breadcrumbs a:hover,
	.article-breadcrumbs a:hover,
	.breadcrumb a:hover,
	#breadcrumbs a:hover {
		text-decoration: underline;
	}

	.site-breadcrumbs .breadcrumb-sep,
	.hero-breadcrumbs .breadcrumb-sep,
	.page-breadcrumbs .breadcrumb-sep,
	.article-breadcrumbs .breadcrumb-sep,
	.breadcrumb .breadcrumb__sep,
	#breadcrumbs .breadcrumb-sep {
		opacity: 0.5;
		font-size: 0.85em;
		user-select: none;
	}

	.site-breadcrumbs .breadcrumb-current,
	.hero-breadcrumbs .breadcrumb-current,
	.page-breadcrumbs .breadcrumb-current,
	.article-breadcrumbs .breadcrumb-current,
	.breadcrumb .breadcrumb__current,
	#breadcrumbs .breadcrumb-current {
		font-weight: 600;
	}

	/* Dark Heroes */
	.hero-breadcrumbs,
	.page-hero .site-breadcrumbs,
	.page-hero .hero-breadcrumbs,
	.page-hero #breadcrumbs,
	.blog-hero .site-breadcrumbs,
	.blog-hero .hero-breadcrumbs,
	.blog-hero #breadcrumbs {
		color: rgba(255, 255, 255, 0.75);
	}

	.hero-breadcrumbs a,
	.page-hero .site-breadcrumbs a,
	.page-hero .hero-breadcrumbs a,
	.page-hero #breadcrumbs a,
	.blog-hero .site-breadcrumbs a,
	.blog-hero .hero-breadcrumbs a,
	.blog-hero #breadcrumbs a {
		color: rgba(255, 255, 255, 0.92);
	}

	.hero-breadcrumbs a:hover,
	.page-hero .site-breadcrumbs a:hover,
	.page-hero .hero-breadcrumbs a:hover,
	.page-hero #breadcrumbs a:hover,
	.blog-hero .site-breadcrumbs a:hover,
	.blog-hero .hero-breadcrumbs a:hover,
	.blog-hero #breadcrumbs a:hover {
		color: #ffffff;
	}

	/* Light Backgrounds */
	.article-breadcrumbs,
	.article-header .site-breadcrumbs,
	.article-header .article-breadcrumbs,
	.article-header #breadcrumbs,
	.page-breadcrumbs,
	.site-main--article .site-breadcrumbs,
	.site-main--guide .site-breadcrumbs {
		color: #64748b;
		justify-content: center;
	}

	.article-breadcrumbs a,
	.article-header .site-breadcrumbs a,
	.article-header .article-breadcrumbs a,
	.article-header #breadcrumbs a,
	.page-breadcrumbs a,
	.site-main--article .site-breadcrumbs a,
	.site-main--guide .site-breadcrumbs a {
		color: var(--navy);
	}

	.article-breadcrumbs a:hover,
	.article-header .site-breadcrumbs a:hover,
	.article-header .article-breadcrumbs a:hover,
	.article-header #breadcrumbs a:hover,
	.page-breadcrumbs a:hover,
	.site-main--article .site-breadcrumbs a:hover,
	.site-main--guide .site-breadcrumbs a:hover {
		color: var(--teal);
	}

	.article-breadcrumbs .breadcrumb-current,
	.article-header .breadcrumb-current,
	.page-breadcrumbs .breadcrumb-current {
		color: var(--navy);
	}

	.site-footer {
		color: rgba(255, 255, 255, .8);
		background: var(--navy-deep);
	}

	.site-footer a:not(.button) {
		color: inherit;
	}

	.site-footer__cta {
		color: var(--white);
		background: linear-gradient(135deg, #6e8d39 0%, #4f6824 100%);
		border-top: 1px solid rgba(255, 255, 255, 0.2);
		border-bottom: 1px solid rgba(0, 0, 0, 0.15);
	}

	.site-footer__cta-inner {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 2.5rem;
		padding-block: 3.5rem;
	}

	.site-footer__cta .eyebrow {
		color: #ffffff !important;
		background: rgba(255, 255, 255, 0.22) !important;
		padding: 0.22rem 0.75rem;
		border-radius: 50px;
		display: inline-block;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .8rem;
		font-weight: 700;
		letter-spacing: .14em;
		text-transform: uppercase;
		margin-bottom: .65rem;
	}

	.site-footer__cta h2 {
		margin-bottom: .35em;
		color: #ffffff !important;
		font-family: Georgia, 'Times New Roman', serif;
		font-size: clamp(1.85rem, 3.2vw, 2.65rem);
		line-height: 1.22;
		font-weight: 600;
	}

	.site-footer__cta p {
		color: #f1f8eb !important;
		font-size: 1.05rem;
		line-height: 1.6;
		margin-bottom: 0;
	}

	.site-footer__cta-actions {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: .85rem;
		flex-shrink: 0;
	}

	.site-footer__cta .button {
		font-weight: 500;
		font-size: .95rem;
	}

	.site-footer__cta .button--outline:hover {
		background: rgba(255, 255, 255, 0.22) !important;
		border-color: #ffffff !important;
		color: #ffffff !important;
		transform: translateY(-2px);
	}

	.site-footer__grid {
		display: grid;
		grid-template-columns: 1.35fr 1.2fr .8fr .8fr;
		gap: 3rem;
		padding-block: 5rem;
	}

	.site-footer__brand .custom-logo {
		margin-bottom: 1.5rem;
		filter: brightness(0) invert(1);
	}

	.site-footer__title {
		color: var(--white);
		font-family: Arial, sans-serif;
		font-size: .78rem;
		font-weight: 800;
		letter-spacing: .1em;
		text-transform: uppercase;
	}

	.site-footer ul {
		display: grid;
		gap: .5rem;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.site-footer__bottom {
		padding-block: 1rem;
		border-top: 1px solid rgba(255, 255, 255, .12);
		font-size: .75rem;
		color: rgba(255, 255, 255, .65);
		line-height: 1.5;
	}

	.site-footer__bottom-inner {
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: .75rem 1.75rem;
	}

	.site-footer__bottom p,
	.site-footer__copyright,
	.site-footer__credit {
		margin: 0;
		font-size: .75rem;
		color: rgba(255, 255, 255, .65);
	}

	.site-footer__bottom a {
		font-size: .75rem;
		color: rgba(255, 255, 255, .75);
		text-decoration: none;
		transition: color .2s ease;
	}

	.site-footer__bottom a:hover,
	.site-footer__bottom a:focus-visible {
		color: var(--green-light, #a4c965);
		text-decoration: underline;
		text-underline-offset: 2px;
	}

	.site-footer__legal-links {
		display: inline-flex;
		align-items: center;
		gap: .65rem;
		font-size: .75rem;
	}

	.site-footer__legal-links a {
		font-size: .75rem;
	}

	.site-footer__sep {
		color: rgba(255, 255, 255, .35);
		font-size: .7em;
	}

	.site-footer__credit a {
		color: rgba(255, 255, 255, .9);
		font-weight: 600;
	}

	@media (max-width: 768px) {
		.site-footer__bottom-inner {
			flex-direction: column;
			justify-content: center;
			text-align: center;
			gap: .6rem;
		}

		.site-footer__legal-links {
			justify-content: center;
		}
	}

	@media (max-width: 1024px) {
		body.menu-is-open {
			overflow: hidden;
		}

		.navigation-bar__inner--desktop {
			display: none;
		}

		.navigation-bar__inner--mobile {
			display: flex;
			min-height: 82px;
		}

		.navigation-bar__inner--mobile .site-branding {
			margin-right: auto;
		}

		.navigation-bar__inner--mobile .custom-logo {
			max-width: 215px;
			max-height: 64px;
		}

		.menu-toggle {
			display: inline-flex;
		}

		.mobile-call {
			display: inline-grid;
			place-items: center;
			width: 42px;
			height: 42px;
			margin-left: auto;
			border: 1px solid var(--line);
			border-radius: 50%;
			color: var(--teal);
			text-decoration: none;
		}

		.mobile-menu-panel {
			position: absolute;
			top: 100%;
			left: 0;
			z-index: 55;
			display: none;
			width: 100%;
			max-height: calc(100vh - 120px);
			overflow-y: auto;
			border-top: 1px solid var(--line);
			background: var(--white);
			box-shadow: var(--shadow);
		}

		.mobile-menu-panel.is-open {
			display: block;
		}

		.mobile-menu-panel__inner {
			padding-block: 1.2rem 2rem;
		}

		.mobile-navigation ul {
			margin: 0;
			padding: 0;
			list-style: none;
		}

		.mobile-navigation li {
			position: relative;
			border-bottom: 1px solid var(--line);
		}

		.mobile-navigation a {
			display: block;
			padding: .9rem 3rem .9rem 0;
			color: var(--navy);
			font-size: .9rem;
			font-weight: 800;
			letter-spacing: .03em;
			text-decoration: none;
			text-transform: uppercase;
		}

		.mobile-navigation .sub-menu {
			display: none;
			padding: 0 0 .6rem 1rem;
		}

		.mobile-navigation .sub-menu li {
			border: 0;
		}

		.mobile-navigation .sub-menu a {
			padding: .55rem 2.8rem .55rem 0;
			color: var(--muted);
			font-size: .82rem;
			text-transform: none;
		}

		.mobile-navigation .submenu-is-open>.sub-menu {
			display: block;
		}

		.submenu-toggle {
			position: absolute;
			top: .55rem;
			right: 0;
			display: grid;
			place-items: center;
			width: 38px;
			height: 38px;
			border: 0;
			color: var(--teal);
			background: transparent;
			font-size: 1.4rem;
		}

		.mobile-menu-panel__actions {
			display: grid;
			gap: 1rem;
			margin-top: 1.5rem;
		}

		.mobile-menu-panel__phone {
			color: var(--navy);
			font-family: Georgia, serif;
			font-size: 1.5rem;
			text-align: center;
			text-decoration: none;
		}

		.card-grid {
			grid-template-columns: repeat(2, 1fr);
		}

		.testimonial-grid {
			grid-template-columns: repeat(2, 1fr);
		}

		.facility-gallery {
			grid-template-columns: repeat(3, 1fr);
		}

		.site-footer__grid {
			grid-template-columns: repeat(2, 1fr);
		}
	}

	@media (max-width: 720px) {
		.home-trust-bar__inner {
			flex-wrap: wrap;
			justify-content: center;
			padding-block: 1.35rem;
			text-align: center;
		}

		.home-trust-bar__google {
			padding-right: 0;
			border-right: 0;
		}

		.certification-badges--trust-bar {
			flex-basis: 100%;
			justify-content: center;
			overflow: hidden;
		}

		.certification-badges--trust-bar .certification-badges__item {
			width: 58px;
			height: 52px;
		}

		body {
			font-size: 16px;
		}

		.container {
			width: min(calc(100% - 28px), var(--container));
		}

		.utility-bar p {
			display: none;
		}

		.navigation-bar__inner--mobile {
			min-height: 74px;
		}

		.custom-logo {
			max-width: 205px;
			max-height: 54px;
		}

		.home-hero {
			min-height: 670px;
		}

		.home-hero__overlay {
			background: rgba(7, 31, 47, .72);
		}

		.intro-grid,
		.split,
		.media-feature,
		.consultation-grid {
			grid-template-columns: 1fr;
			gap: 2.5rem;
		}

		.split__content,
		.split__media {
			order: initial !important;
		}

		.split__media img {
			min-height: 260px;
			aspect-ratio: 16/10;
		}


		.feature-list,
		.card-grid,
		.testimonial-grid {
			grid-template-columns: 1fr;
		}

		.facility-gallery {
			grid-template-columns: repeat(2, 1fr);
		}

		.consultation-grid {
			gap: 0;
		}

		.consultation-grid__media img {
			min-height: 320px;
		}

		.site-footer__cta-inner {
			display: grid;
		}

		.site-footer__grid {
			grid-template-columns: 1fr;
			gap: 2rem;
		}
	}

	@media (prefers-reduced-motion: reduce) {

		*,
		*::before,
		*::after {
			scroll-behavior: auto !important;
			transition: none !important;
		}

		.home-hero__video {
			display: none;
		}
	}

	/* Accessible, dependency-free section carousels. */
	.jcr-slider {
		position: relative;
	}

	.jcr-slider__viewport {
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}

	.jcr-slider__viewport::-webkit-scrollbar {
		display: none;
	}

	.jcr-slider__track {
		display: grid;
		grid-auto-flow: column;
		grid-template-columns: none;
		grid-auto-columns: calc((100% - 3.75rem) / 4);
		gap: 1.25rem;
		margin: 0;
	}

	.jcr-slider__track>* {
		min-width: 0;
		scroll-snap-align: start;
	}

	.jcr-slider__arrow {
		position: absolute;
		top: 50%;
		z-index: 4;
		display: grid;
		place-items: center;
		width: 48px;
		height: 48px;
		padding: 0;
		border: 1px solid rgba(16, 47, 70, .14);
		border-radius: 50%;
		color: var(--navy);
		background: var(--white);
		box-shadow: 0 8px 25px rgba(10, 36, 54, .16);
		font-size: 1.25rem;
		cursor: pointer;
		transform: translateY(-50%);
		transition: opacity .2s ease, transform .2s ease;
	}

	.jcr-slider__arrow:hover,
	.jcr-slider__arrow:focus-visible {
		transform: translateY(-50%) scale(1.06);
	}

	.jcr-slider__arrow:disabled {
		opacity: .28;
		cursor: default;
	}

	.jcr-slider__arrow--prev {
		left: -24px;
	}

	.jcr-slider__arrow--next {
		right: -24px;
	}

	@media (max-width: 1400px) {
		.jcr-slider__arrow--prev {
			left: -8px;
		}

		.jcr-slider__arrow--next {
			right: -8px;
		}
	}

	@media (max-width: 768px) {
		.jcr-slider__arrow--prev {
			left: 0;
		}

		.jcr-slider__arrow--next {
			right: 0;
		}
	}

	.jcr-slider__pagination {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: .55rem;
		min-height: 1.5em;
		margin-top: 1.25rem;
	}

	.jcr-slider__dot {
		width: 10px;
		height: 10px;
		padding: 0;
		border: 0;
		border-radius: 999px;
		background: rgba(23, 48, 62, .24);
		cursor: pointer;
		transition: width .2s ease, background-color .2s ease, transform .2s ease;
	}

	.jcr-slider__dot:hover,
	.jcr-slider__dot:focus-visible {
		background: var(--teal);
		transform: scale(1.15);
	}

	.jcr-slider__dot.is-active {
		width: 26px;
		background: var(--green);
	}

	.jcr-slider--logos {
		margin-top: 2.5rem;
	}

	.jcr-slider--logos .logo-cloud {
		flex-wrap: nowrap;
		margin-top: 0;
	}

	.jcr-slider--logos .jcr-slider__track {
		grid-auto-columns: calc((100% - 10rem) / 6);
		gap: 2rem;
	}

	.jcr-slider--logos .jcr-slider__slide {
		display: grid;
		place-items: center;
		min-height: 110px;
	}

	.jcr-slider--logos .jcr-slider__arrow {
		width: 42px;
		height: 42px;
	}

	.jcr-slider--cards {
		margin-top: 2rem;
	}

	.jcr-slider--cards .jcr-slider__track {
		grid-auto-columns: calc((100% - 2.5rem) / 3);
		gap: 1.25rem;
	}

	.jcr-slider--cards .content-card {
		height: 100%;
		display: flex;
		flex-direction: column;
	}

	.jcr-slider--cards .content-card__body {
		display: flex;
		flex-direction: column;
		flex-grow: 1;
	}

	.jcr-slider--cards .content-card__action {
		margin-top: auto;
		padding-top: 1rem;
	}

	@media (max-width: 1024px) {
		.jcr-slider--cards .jcr-slider__track {
			grid-auto-columns: calc((100% - 1.25rem) / 2);
		}
	}

	@media (max-width: 640px) {
		.jcr-slider--cards .jcr-slider__track {
			grid-auto-columns: 85%;
		}
	}

	.jcr-slider--testimonials .jcr-slider__track {
		grid-auto-columns: calc((100% - 2rem) / 3);
		gap: 1rem;
	}

	.jcr-slider--testimonials .jcr-slider__pagination {
		display: none;
	}

	.section--testimonials .jcr-slider__arrow {
		border-color: rgba(255, 255, 255, .3);
		color: var(--white);
		background: rgba(7, 31, 47, .9);
	}

	.section--testimonials .jcr-slider__pagination {
		color: rgba(255, 255, 255, .7);
	}

	.jcr-slider--facility .jcr-slider__track {
		grid-auto-columns: calc((100% - 1.6rem) / 3);
	}

	.facility-gallery__open {
		display: block;
		width: 100%;
		padding: 0;
		overflow: hidden;
		border: 0;
		border-radius: 8px;
		background: transparent;
		cursor: zoom-in;
	}

	.facility-gallery__open img {
		width: 100%;
		aspect-ratio: 16/10;
		object-fit: cover;
	}

	.image-lightbox {
		width: min(1100px, calc(100% - 32px));
		max-width: none;
		padding: 0;
		overflow: visible;
		border: 0;
		background: transparent;
	}

	.image-lightbox::backdrop {
		background: rgba(4, 17, 26, .9);
	}

	.image-lightbox img {
		width: 100%;
		max-height: 86vh;
		border-radius: 6px;
		object-fit: contain;
	}

	.image-lightbox__close {
		position: absolute;
		top: -46px;
		right: 0;
		width: 40px;
		height: 40px;
		border: 1px solid rgba(255, 255, 255, .5);
		border-radius: 50%;
		color: var(--white);
		background: rgba(0, 0, 0, .35);
		font-size: 1.8rem;
		line-height: 1;
		cursor: pointer;
	}

	@media (max-width: 1024px) {
		.jcr-slider__track {
			grid-auto-columns: calc((100% - 1.25rem) / 2);
		}

		.jcr-slider--logos .jcr-slider__track {
			grid-auto-columns: calc((100% - 4rem) / 3);
		}

		.jcr-slider--testimonials .jcr-slider__track,
		.jcr-slider--facility .jcr-slider__track {
			grid-auto-columns: calc((100% - 1rem) / 2);
		}
	}

	@media (max-width: 720px) {

		.jcr-slider__track,
		.jcr-slider--testimonials .jcr-slider__track,
		.jcr-slider--facility .jcr-slider__track {
			display: grid;
			grid-auto-columns: 86%;
			overflow: visible;
			padding: .2rem 0 .8rem;
		}

		.jcr-slider--testimonials .jcr-slider__pagination {
			display: flex;
		}

		.jcr-slider--logos .jcr-slider__track {
			grid-auto-columns: calc((100% - 1.25rem) / 2);
			gap: 1.25rem;
		}

		.jcr-slider__arrow {
			top: calc(50% - 18px);
			width: 42px;
			height: 42px;
		}

		.jcr-slider__arrow--prev {
			left: -8px;
		}

		.jcr-slider__arrow--next {
			right: -8px;
		}

		.jcr-slider--logos .jcr-slider__arrow {
			display: none;
		}

		.testimonial-grid {
			overflow: visible;
		}

		.testimonial-card {
			flex: initial;
		}
	}

	/* Homepage visual refinement. */
	:root {
		--shadow-soft: 0 12px 34px rgba(10, 36, 54, .09);
		--radius: 12px;
	}

	body {
		font-family: "Avenir Next", Avenir, "Helvetica Neue", Arial, sans-serif;
		-webkit-font-smoothing: antialiased;
	}

	h1,
	h2,
	h3,
	h4 {
		letter-spacing: -.025em;
	}

	.eyebrow {
		margin-bottom: .9rem;
		font-size: .8rem;
		font-weight: 700;
		letter-spacing: .14em;
	}

	.home-hero {
		min-height: 80vh;
	}

	.home-hero__content {
		padding-block: 5.5rem;
	}

	.home-hero__overlay {
		background: linear-gradient(90deg, rgba(7, 31, 47, .9) 0%, rgba(7, 31, 47, .64) 48%, rgba(7, 31, 47, .18) 80%);
	}

	.home-hero h1 {
		max-width: 760px;
		font-size: clamp(3.6rem, 6.3vw, 5.5rem);
		text-wrap: balance;
	}

	.home-hero__intro {
		max-width: 660px;
		font-size: var(--content-font-size);
		line-height: 1.7;
	}

	.section {
		position: relative;
		padding-block: clamp(5rem, 8vw, 7.5rem);
	}

	.section-heading {
		margin-bottom: clamp(2.5rem, 5vw, 4rem);
	}

	.section-heading>p {
		color: var(--muted);
		font-size: var(--content-font-size);
		line-height: 1.7;
	}

	.intro-grid__media img,
	.split__media img {
		border-radius: var(--radius);
	}

	.intro-collage {
		grid-auto-rows: 130px;
		gap: .65rem;
		padding: .65rem;
		border-radius: var(--radius);
		background: var(--white);
		box-shadow: var(--shadow);
	}

	.intro-collage img {
		border-radius: 5px;
	}

	.section--cards {
		background: linear-gradient(180deg, var(--white), var(--cream));
	}

	.card-grid {
		gap: 1.35rem;
	}

	.content-card {
		display: flex;
		flex-direction: column;
		border-color: rgba(16, 47, 70, .09);
		border-radius: var(--radius);
		box-shadow: var(--shadow-soft);
		transition: transform .25s ease, box-shadow .25s ease;
	}

	.content-card:hover {
		box-shadow: var(--shadow);
		transform: translateY(-5px);
	}

	.content-card__body {
		display: flex;
		flex: 1;
		flex-direction: column;
		padding: 1.6rem;
	}

	.content-card__body .text-link {
		margin-top: auto;
	}

	.section--logos {
		padding-block: clamp(3.5rem, 6vw, 5.5rem);
	}

	.logo-cloud {
		gap: 2rem clamp(2rem, 4vw, 4rem);
	}

	.logo-cloud img {
		max-width: 155px;
		max-height: 82px;
	}

	.media-feature__content {
		max-width: 580px;
	}

	.media-feature__content .prose {
		font-size: 1.04rem;
	}

	.media-feature__media {
		position: relative;
	}

	.media-feature__media::before {
		content: '';
		position: absolute;
		top: -18px;
		right: -18px;
		z-index: 0;
		width: 42%;
		height: 42%;
		border-radius: 50%;
		background: rgba(117, 148, 63, .18);
	}

	.media-feature__media img,
	.media-feature__media video {
		position: relative;
		z-index: 1;
		max-height: 650px;
		border-radius: var(--radius);
	}

	@media (max-width: 768px) {

		/* Centered Eyebrows & Headings across landing and homepage blocks on mobile */
		.section-heading .eyebrow,
		.home-hero .eyebrow,
		.facility-intro .eyebrow,
		.reviews-showcase .eyebrow,
		.section--intro .eyebrow,
		.section--insurance .eyebrow,
		.section--cards .eyebrow,
		.consultation-grid .eyebrow,
		.site-footer__cta .eyebrow {
			text-align: center !important;
			margin-inline: auto !important;
			display: block !important;
		}

		.section-heading h2,
		.home-hero h1,
		.facility-intro__content h2,
		.reviews-showcase__intro h2,
		.section--insurance h2,
		.insurance-providers-title,
		.section--cards h2,
		.section--cta h2,
		.consultation-grid h2,
		.admissions-v2-heading h2,
		.faq-heading h2,
		.site-footer__cta h2 {
			text-align: center !important;
			margin-inline: auto !important;
		}

		.section-heading,
		.section-heading p,
		.home-hero__content,
		.home-hero__intro,
		.facility-intro__content,
		.reviews-showcase__intro,
		.reviews-showcase__intro>p,
		.insurance-intro__content,
		.insurance-intro__content>p,
		.site-footer__cta,
		.site-footer__cta p,
		.consultation-grid,
		.consultation-grid p {
			text-align: center !important;
			margin-inline: auto !important;
		}

		/* Article & Editorial Pages: Left-Aligned Headings and Copy on Mobile */
		.site-main--article,
		.site-main--article h1,
		.site-main--article h2,
		.site-main--article h3,
		.site-main--article h4,
		.site-main--article h5,
		.site-main--article h6,
		.site-main--article p,
		.article-header,
		.article-header h1,
		.article-header__title,
		.article-header p,
		.article-header .article-header__meta,
		.article-body,
		.article-body h1,
		.article-body h2,
		.article-body h3,
		.article-body h4,
		.article-body h5,
		.article-body h6,
		.article-body p,
		.entry-content,
		.entry-content h1,
		.entry-content h2,
		.entry-content h3,
		.entry-content h4,
		.entry-content h5,
		.entry-content h6,
		.entry-content p,
		.entry-content--legal,
		.entry-content--legal h1,
		.entry-content--legal h2,
		.entry-content--legal h3,
		.split--sidebar .split__content,
		.split--sidebar .split__content h1,
		.split--sidebar .split__content h2,
		.split--sidebar .split__content h3,
		.split--sidebar .split__content h4,
		.split--sidebar .split__content p,
		.page-content-wrapper,
		.page-content-wrapper h1,
		.page-content-wrapper h2,
		.page-content-wrapper h3,
		.page-content-wrapper h4,
		.page-content-wrapper p,
		.single-post h1,
		.single-post h2,
		.single-post h3,
		.single-post h4,
		.single-post p,
		.single h1,
		.single h2,
		.single h3,
		.single h4,
		.single p,
		.article-content,
		.article-content h1,
		.article-content h2,
		.article-content h3,
		.article-content h4,
		.article-content p {
			text-align: left !important;
			margin-inline: 0 !important;
		}

		/* Full-Width and Text-Centered Buttons on Mobile */
		.button-group {
			display: flex !important;
			flex-direction: column !important;
			width: 100% !important;
			gap: .75rem !important;
			align-items: stretch !important;
			justify-content: center !important;
			margin-inline: auto !important;
		}

		.button,
		a.button,
		button.button,
		.btn,
		input[type="submit"],
		.button-group .button,
		.section-action .button,
		.media-feature .button,
		.home-hero .button,
		.facility-intro .button,
		.insurance-intro__action .button,
		.consultation-grid .button,
		.site-footer__cta .button,
		.guide-cta-banner .button,
		.prose .button {
			width: 100% !important;
			max-width: 100% !important;
			display: flex !important;
			align-items: center !important;
			justify-content: center !important;
			text-align: center !important;
			box-sizing: border-box !important;
			margin-inline: 0 !important;
		}

		/* Mobile Flow for Media Feature Block */
		.media-feature {
			display: flex !important;
			flex-direction: column !important;
			align-items: center !important;
			text-align: center !important;
			gap: 0 !important;
		}

		.media-feature__content {
			display: contents !important;
			max-width: 100% !important;
			text-align: center !important;
		}

		.media-feature__content>.eyebrow {
			order: 1;
			margin-bottom: .5rem;
			text-align: center !important;
			width: 100%;
		}

		.media-feature__content>h2 {
			order: 2;
			margin-bottom: 1.25rem;
			text-align: center !important;
			width: 100%;
		}

		.media-feature__content>.prose {
			display: contents !important;
			text-align: center !important;
		}

		.media-feature__content>.prose>h3 {
			order: 3;
			margin-top: 0;
			margin-bottom: .35rem;
			text-align: center !important;
			width: 100%;
		}

		.media-feature__content>.prose>p:first-of-type {
			order: 4;
			margin-bottom: 1.25rem;
			text-align: center !important;
			width: 100%;
		}

		.media-feature__media {
			order: 5 !important;
			margin-block: .25rem 1.5rem !important;
			width: 100%;
		}

		.media-feature__content>.prose>*:not(h3):not(p:first-of-type) {
			order: 6;
			margin-bottom: 1.25rem;
			text-align: center !important;
			width: 100%;
		}

		.media-feature__content>.button-group,
		.media-feature__content>.button {
			order: 7;
			margin-top: .5rem;
			width: 100%;
		}
	}

	.testimonial-grid {
		grid-template-columns: repeat(5, 1fr);
		align-items: start;
		gap: 1rem;
	}

	.testimonial-card {
		border: 1px solid rgba(255, 255, 255, .12);
		border-radius: var(--radius);
	}

	.testimonial-card video,
	.testimonial-card:nth-child(n+4) video {
		aspect-ratio: 9/12;
		object-fit: cover;
	}

	.facility-gallery {
		gap: .8rem;
	}

	.facility-gallery img {
		border-radius: 6px;
	}

	.facility-video video {
		aspect-ratio: 16/9;
		border-radius: var(--radius);
		object-fit: cover;
	}

	.reviews-rating {
		font-family: Georgia, serif;
		font-size: 1.45rem;
	}

	.section--cta {
		display: grid;
		align-items: center;
		min-height: 540px;
	}

	.section--cta__overlay {
		background: linear-gradient(180deg, rgba(10, 36, 54, .85), rgba(10, 36, 54, .58));
	}

	.consultation-grid {
		border-radius: var(--radius);
		box-shadow: 0 28px 70px rgba(0, 0, 0, .24);
	}

	.consultation-grid__form {
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding: clamp(2.5rem, 5vw, 4.8rem);
	}

	@media (max-width: 1024px) {
		.testimonial-grid {
			grid-template-columns: repeat(3, 1fr);
		}
	}

	@media (max-width: 720px) {
		.home-hero h1 {
			font-size: clamp(2.35rem, 11.5vw, 2.9rem);
			line-height: 1.15;
			letter-spacing: -0.02em;
		}

		.section {
			padding-block: 4.5rem;
		}

		.intro-collage {
			grid-auto-rows: 105px;
		}

		.testimonial-grid {
			display: flex;
			gap: 1rem;
			overflow-x: auto;
			padding: .25rem 1px 1rem;
			scroll-snap-type: x mandatory;
		}

		.testimonial-card {
			flex: 0 0 82%;
			scroll-snap-align: start;
		}

		.facility-gallery {
			grid-template-columns: repeat(2, 1fr);
		}

		.section--cta {
			min-height: 460px;
		}
	}

	/* Keep slider layout authoritative over the legacy static-grid rules above. */
	.jcr-slider .jcr-slider__track {
		display: grid;
		grid-template-columns: none;
	}

	@media (max-width: 720px) {
		.jcr-slider .jcr-slider__track {
			display: grid;
			overflow: visible;
		}

		.jcr-slider .testimonial-card {
			flex: initial;
		}
	}

	/* Header typography and stronger utility actions. */
	.button {
		font-weight: 500;
	}

	.utility-bar {
		background: linear-gradient(90deg, var(--navy-deep), #123e52);
		font-size: .85rem;
	}

	.utility-bar__inner {
		min-height: 42px;
		gap: 1.25rem;
	}

	.utility-bar__inner>p {
		font-weight: 500;
		font-size: .85rem;
		letter-spacing: .01em;
		opacity: .95;
	}

	.utility-bar__donate,
	.utility-bar__phone {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		line-height: 1.2;
		text-decoration: none;
		border-radius: 999px;
		white-space: nowrap;
		transition: transform .2s ease, background-color .2s ease;
	}

	.utility-bar__donate {
		font-size: .82rem !important;
		font-weight: 700 !important;
		letter-spacing: .02em;
		min-height: 28px !important;
		padding: .25rem .85rem !important;
		color: var(--navy-deep) !important;
		background: #d8e995;
		flex-shrink: 0;
	}

	.utility-bar__donate::before {
		content: '♥';
		margin-right: .35rem;
		font-size: .82rem;
		color: #6d8733;
	}

	.utility-bar__phone {
		font-size: .85rem !important;
		min-height: 28px !important;
		padding: .25rem .95rem !important;
		border: 1px solid rgba(255, 255, 255, .38);
		background: rgba(255, 255, 255, .1);
		margin-left: auto;
		flex-shrink: 0;
	}

	.utility-bar__phone::before {
		content: '☎';
		margin-right: .45rem;
		font-size: .85rem;
		color: #d8e995;
	}

	.utility-bar__donate:hover,
	.utility-bar__phone:hover {
		transform: translateY(-1px);
	}

	@media (max-width: 991px) {
		.utility-bar__inner {
			display: flex !important;
			align-items: center !important;
			justify-content: space-between !important;
			min-height: 42px;
			gap: .75rem;
		}

		.utility-bar p,
		.utility-bar__inner>p,
		.utility-bar__phone-label {
			display: none !important;
		}

		.utility-bar__donate {
			margin: 0 !important;
			font-size: .8rem !important;
			min-height: 28px !important;
			padding: .22rem .75rem !important;
		}

		.utility-bar__phone {
			margin: 0 !important;
			font-size: .82rem !important;
			min-height: 28px !important;
			padding: .22rem .8rem !important;
		}
	}

	@media (max-width: 480px) {
		.utility-bar__inner {
			min-height: 38px;
			gap: .4rem;
		}

		.utility-bar__donate {
			font-size: .75rem !important;
			padding: .18rem .6rem !important;
			min-height: 25px !important;
		}

		.utility-bar__donate::before {
			margin-right: .25rem;
			font-size: .75rem;
		}

		.utility-bar__phone {
			font-size: .76rem !important;
			padding: .18rem .6rem !important;
			min-height: 25px !important;
		}

		.utility-bar__phone::before {
			margin-right: .3rem;
			font-size: .76rem;
		}
	}

	.split-navigation a {
		font-weight: 500;
		letter-spacing: .01em;
		text-transform: none;
	}

	.mobile-navigation a {
		font-weight: 500;
		letter-spacing: .01em;
		text-transform: none;
	}

	.split-navigation .sub-menu a {
		font-weight: 400;
	}

	/* About Us image carousel and feature icons. */
	.jcr-slider--intro {
		min-width: 0;
	}

	.jcr-slider--intro .intro-collage {
		display: grid;
		grid-auto-columns: 100%;
		grid-auto-rows: auto;
		gap: 0;
		padding: 0;
		overflow: visible;
		background: transparent;
		box-shadow: var(--shadow);
	}

	.jcr-slider--intro .intro-collage figure {
		width: 100%;
		margin: 0;
		overflow: hidden;
		border-radius: var(--radius);
	}

	.jcr-slider--intro .intro-collage img,
	.jcr-slider--intro .intro-collage img:first-child,
	.jcr-slider--intro .intro-collage img:nth-child(5) {
		width: 100%;
		height: clamp(420px, 48vw, 620px);
		border-radius: var(--radius);
		object-fit: cover;
	}

	.jcr-slider--intro .jcr-slider__pagination {
		margin-top: .8rem;
	}

	.feature-list li {
		display: flex;
		align-items: flex-start;
		gap: .7rem;
		padding-left: 0;
		font-weight: 500;
	}

	.feature-list li::before {
		display: none;
	}

	.feature-list svg {
		flex: 0 0 25px;
		width: 25px;
		height: 25px;
		margin-top: .1rem;
		padding: 5px;
		border-radius: 50%;
		color: var(--white);
		background: var(--green);
		stroke: currentColor;
		stroke-width: 2.4;
		fill: none;
	}

	@media (max-width: 720px) {
		.utility-bar__inner {
			min-height: 46px;
		}

		.utility-bar__donate {
			margin-left: auto;
		}

		.utility-bar__donate::before {
			margin-right: .3rem;
		}

		.jcr-slider--intro .intro-collage {
			grid-auto-columns: 100%;
		}

		.jcr-slider--intro .intro-collage img,
		.jcr-slider--intro .intro-collage img:first-child,
		.jcr-slider--intro .intro-collage img:nth-child(5) {
			height: 430px;
		}
	}

	/* Illustrated About Us benefits, inspired by the original icon treatment. */
	.feature-list--illustrated {
		gap: 1.35rem 1.75rem;
		margin-block: 2.25rem;
	}

	.feature-list--illustrated li {
		display: grid;
		grid-template-columns: 64px minmax(0, 1fr);
		align-items: center;
		gap: 1rem;
		min-height: 64px;
		color: var(--navy);
		font-family: Georgia, 'Times New Roman', serif;
		font-size: clamp(1.05rem, 1.45vw, 1.3rem);
		font-weight: 600;
		line-height: 1.25;
	}

	.feature-list--illustrated .feature-list__icon {
		display: grid;
		place-items: center;
		width: 64px;
		height: 64px;
		border-radius: 50%;
		color: var(--white);
		background: linear-gradient(145deg, #759447, #52783f);
		box-shadow: 0 9px 22px rgba(82, 120, 63, .2);
	}

	.feature-list--illustrated svg {
		width: 35px;
		height: 35px;
		margin: 0;
		padding: 0;
		border-radius: 0;
		color: inherit;
		background: none;
		fill: currentColor;
		stroke: none;
	}

	.feature-list--illustrated svg .icon-cutout {
		fill: var(--green);
	}

	.feature-list--illustrated svg .icon-stroke {
		fill: none;
		stroke: var(--green);
		stroke-width: 4;
		stroke-linecap: round;
		stroke-linejoin: round;
	}

	@media (max-width: 720px) {
		.feature-list--illustrated {
			grid-template-columns: 1fr;
			gap: 1rem;
		}

		.feature-list--illustrated li {
			grid-template-columns: 58px minmax(0, 1fr);
			min-height: 58px;
			font-size: 1.08rem;
		}

		.feature-list--illustrated .feature-list__icon {
			width: 58px;
			height: 58px;
		}

		.feature-list--illustrated svg {
			width: 31px;
			height: 31px;
		}
	}

	/* More generous site-wide action sizing. */
	.button {
		min-height: 56px;
		padding: .9rem 1.75rem;
		font-size: .95rem;
		line-height: 1.2;
	}

	.button--compact {
		min-height: 48px;
		padding: .72rem 1.3rem;
		font-size: .9rem;
	}

	.text-link {
		font-size: .9rem;
	}

	.utility-bar__donate,
	.utility-bar__phone {
		min-height: 38px;
		padding: .48rem 1.15rem;
		font-size: .86rem;
	}

	@media (max-width: 720px) {
		.button {
			min-height: 54px;
			padding: .85rem 1.45rem;
			font-size: .92rem;
		}
	}

	/* Larger header navigation labels. */
	.split-navigation a {
		font-size: .9rem;
		line-height: 1.3;
	}

	.split-navigation .sub-menu a {
		font-size: .84rem;
	}

	.mobile-navigation a {
		font-size: 1rem;
	}

	.mobile-navigation .sub-menu a {
		font-size: .9rem;
	}

	/* Final desktop navigation scale and card-style About Us benefits. */
	@media (min-width: 1025px) {
		.split-navigation>ul>li>a {
			font-size: 1rem;
		}

		.page-id-8 .jcr-slider--cards .jcr-slider__viewport {
			overflow: visible;
		}

		.page-id-8 .jcr-slider--cards .jcr-slider__track {
			grid-template-columns: repeat(4, 1fr);
		}

		.page-id-8 .jcr-slider--cards .jcr-slider__arrow,
		.page-id-8 .jcr-slider--cards .jcr-slider__pagination {
			display: none !important;
		}
	}

	.feature-list--illustrated {
		gap: .9rem;
		margin-block: 2.25rem;
	}

	.feature-list--illustrated li {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		min-height: 178px;
		padding: 1.35rem;
		border: 1px solid rgba(16, 47, 70, .09);
		border-radius: 14px;
		color: var(--green);
		background: var(--white);
		box-shadow: 0 9px 26px rgba(10, 36, 54, .07);
		font-family: "Avenir Next", Avenir, "Helvetica Neue", Arial, sans-serif;
		font-size: clamp(1.05rem, 1.3vw, 1.22rem);
		font-weight: 650;
		line-height: 1.3;
		transition: transform .22s ease, box-shadow .22s ease;
	}

	.feature-list--illustrated li:hover {
		box-shadow: 0 15px 34px rgba(10, 36, 54, .12);
		transform: translateY(-3px);
	}

	.feature-list--illustrated .feature-list__icon {
		width: 52px;
		height: 52px;
		margin-bottom: .45rem;
		border-radius: 14px;
		color: var(--green);
		background: #eef5e9;
		box-shadow: none;
	}

	.feature-list--illustrated li:nth-child(2) .feature-list__icon {
		color: #b87a28;
		background: #fff3e1;
	}

	.feature-list--illustrated li:nth-child(3) .feature-list__icon {
		color: var(--teal);
		background: #e9f4f4;
	}

	.feature-list--illustrated li:nth-child(4) .feature-list__icon {
		color: #426f9f;
		background: #ebf1f9;
	}

	.feature-list--illustrated svg {
		width: 28px;
		height: 28px;
	}

	.feature-list--illustrated svg .icon-cutout {
		fill: #eef5e9;
	}

	.feature-list--illustrated svg .icon-stroke {
		stroke: #eef5e9;
	}

	.feature-list--illustrated li:nth-child(2) svg .icon-cutout {
		fill: #fff3e1;
	}

	.feature-list--illustrated li:nth-child(2) svg .icon-stroke {
		stroke: #fff3e1;
	}

	.feature-list--illustrated li:nth-child(3) svg .icon-cutout {
		fill: #e9f4f4;
	}

	.feature-list--illustrated li:nth-child(3) svg .icon-stroke {
		stroke: #e9f4f4;
	}

	.feature-list--illustrated li:nth-child(4) svg .icon-cutout {
		fill: #ebf1f9;
	}

	.feature-list--illustrated li:nth-child(4) svg .icon-stroke {
		stroke: #ebf1f9;
	}

	@media (max-width: 720px) {
		.feature-list--illustrated {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}

		.feature-list--illustrated li {
			min-height: 155px;
			padding: 1.1rem;
			font-size: .98rem;
		}

		.feature-list--illustrated .feature-list__icon {
			width: 48px;
			height: 48px;
		}

		.feature-list--illustrated svg {
			width: 26px;
			height: 26px;
		}
	}

	@media (max-width: 430px) {
		.feature-list--illustrated {
			grid-template-columns: 1fr;
		}

		.feature-list--illustrated li {
			min-height: 0;
		}
	}

	/* About Us remains a simple list; only the icon tiles use the reference style. */
	.feature-list--illustrated {
		gap: 1.35rem 1.75rem;
	}

	.feature-list--illustrated li {
		display: grid;
		grid-template-columns: 54px minmax(0, 1fr);
		align-items: center;
		min-height: 54px;
		padding: 0;
		border: 0;
		border-radius: 0;
		color: var(--navy);
		background: transparent;
		box-shadow: none;
		font-size: clamp(1.05rem, 1.35vw, 1.22rem);
		font-weight: 600;
	}

	.feature-list--illustrated li:hover {
		box-shadow: none;
		transform: none;
	}

	.feature-list--illustrated .feature-list__icon {
		width: 52px;
		height: 52px;
		margin: 0;
	}

	@media (max-width: 720px) {
		.feature-list--illustrated {
			grid-template-columns: 1fr;
			gap: 1rem;
		}

		.feature-list--illustrated li {
			grid-template-columns: 50px minmax(0, 1fr);
			min-height: 50px;
			padding: 0;
			font-size: 1.05rem;
		}

		.feature-list--illustrated .feature-list__icon {
			width: 48px;
			height: 48px;
		}
	}

	/* Expanded insurance and coverage section. */
	.section--insurance {
		padding-block: clamp(5.5rem, 9vw, 8rem);
		color: var(--white);
		background: radial-gradient(circle at 88% 10%, rgba(45, 137, 142, .35), transparent 34%), linear-gradient(135deg, #092536, #123f52);
		text-align: left;
	}

	.section--insurance::before {
		content: '';
		position: absolute;
		top: -130px;
		right: -100px;
		width: 360px;
		height: 360px;
		border: 1px solid rgba(255, 255, 255, .08);
		border-radius: 50%;
	}

	.insurance-intro {
		position: relative;
		display: grid;
		grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
		align-items: end;
		gap: clamp(2.5rem, 7vw, 7rem);
	}

	.insurance-intro__content {
		max-width: 760px;
	}

	.section--insurance .eyebrow {
		color: #cfe28e;
	}

	.section--insurance h2 {
		max-width: 700px;
		margin-bottom: .45em;
		color: var(--white);
		font-size: clamp(1.8rem, 3.5vw, 2.8rem);
		text-wrap: balance;
	}

	.insurance-intro__content>p:last-child {
		max-width: 700px;
		margin-bottom: 0;
		color: rgba(255, 255, 255, .8);
		font-size: clamp(1.05rem, 1.5vw, 1.22rem);
		line-height: 1.7;
	}

	.insurance-intro__action {
		padding: 1.7rem;
		border: 1px solid rgba(255, 255, 255, .17);
		border-radius: 16px;
		background: rgba(255, 255, 255, .08);
		backdrop-filter: blur(8px);
	}

	.insurance-intro__action .button {
		width: 100%;
		color: var(--navy-deep);
		background: #d9e99a;
		border-color: #d9e99a;
	}

	.insurance-intro__action .button:hover {
		color: var(--white);
	}

	.insurance-intro__action p {
		margin: .85rem 0 0;
		color: rgba(255, 255, 255, .7);
		font-size: .86rem;
		text-align: center;
	}

	.insurance-assurances {
		display: flex;
		flex-wrap: wrap;
		gap: .8rem 2rem;
		margin-top: 2.5rem;
		padding-block: 1.4rem;
		border-top: 1px solid rgba(255, 255, 255, .14);
		border-bottom: 1px solid rgba(255, 255, 255, .14);
	}

	.insurance-assurances span {
		position: relative;
		padding-left: 1.5rem;
		color: rgba(255, 255, 255, .88);
		font-size: .92rem;
	}

	.insurance-assurances span::before {
		content: '✓';
		position: absolute;
		left: 0;
		color: #cfe28e;
		font-weight: 800;
	}

	.insurance-providers-title {
		margin: 3rem 0 0;
		color: var(--white);
		font-family: "Avenir Next", Avenir, "Helvetica Neue", Arial, sans-serif;
		font-size: 1rem;
		font-weight: 500;
		letter-spacing: .08em;
		text-align: center;
		text-transform: uppercase;
	}

	.section--insurance .jcr-slider--logos {
		margin-top: 1.5rem;
		padding: 1.1rem 1.5rem;
		border: 1px solid rgba(255, 255, 255, .12);
		border-radius: 18px;
		background: rgba(255, 255, 255, .07);
	}

	.section--insurance .jcr-slider--logos .jcr-slider__slide {
		min-height: 125px;
		padding: 1rem;
	}

	.section--insurance .logo-cloud img {
		max-width: 175px;
		max-height: 88px;
		filter: none;
		opacity: 1;
	}

	.section--insurance .jcr-slider__arrow {
		border-color: rgba(255, 255, 255, .25);
		color: var(--white);
		background: #163f51;
	}

	@media (max-width: 800px) {
		.insurance-intro {
			grid-template-columns: 1fr;
			align-items: start;
			gap: 2rem;
		}

		.insurance-intro__action {
			max-width: 430px;
		}
	}

	@media (max-width: 720px) {
		.section--insurance {
			padding-block: 4.75rem;
		}

		.insurance-assurances {
			display: grid;
			gap: .7rem;
		}

		.section--insurance .jcr-slider--logos {
			padding: .75rem;
		}

		.section--insurance .jcr-slider--logos .jcr-slider__slide {
			min-height: 100px;
		}
	}

	/* Light, editorial insurance treatment with a five-up, one-at-a-time carousel. */
	.section--insurance {
		color: var(--ink);
		background: linear-gradient(180deg, #fbfaf7, #f2f0ea);
	}

	.section--insurance::before {
		top: -180px;
		right: -140px;
		width: 430px;
		height: 430px;
		border-color: rgba(82, 120, 63, .11);
	}

	.insurance-intro {
		align-items: center;
	}

	.section--insurance .eyebrow {
		color: var(--green);
	}

	.section--insurance h2 {
		color: var(--navy);
	}

	.insurance-intro__content>p:last-child {
		color: var(--muted);
	}

	.insurance-intro__action {
		border-color: rgba(82, 120, 63, .16);
		background: #eaf2e4;
		backdrop-filter: none;
		box-shadow: 0 14px 38px rgba(10, 36, 54, .08);
	}

	.insurance-intro__action .button {
		color: var(--white);
		background: var(--green);
		border-color: var(--green);
	}

	.insurance-intro__action .button:hover {
		background: var(--teal);
		border-color: var(--teal);
	}

	.insurance-intro__action p {
		color: #53664b;
	}

	.insurance-assurances {
		border-color: rgba(16, 47, 70, .12);
	}

	.insurance-assurances span {
		color: var(--ink);
	}

	.insurance-assurances span::before {
		color: var(--green);
	}

	.insurance-providers-title {
		color: var(--navy);
	}

	.section--insurance .jcr-slider--logos {
		padding: 1.35rem 1.7rem;
		border-color: rgba(255, 255, 255, .08);
		background: linear-gradient(135deg, #0b2c3e, #164b5c);
		box-shadow: 0 18px 45px rgba(10, 36, 54, .15);
	}

	.section--insurance .jcr-slider--logos .jcr-slider__track {
		grid-auto-columns: calc((100% - 5rem) / 5);
		gap: 1.25rem;
	}

	.section--insurance .jcr-slider__arrow {
		border-color: rgba(16, 47, 70, .12);
		color: var(--navy);
		background: var(--white);
	}

	@media (max-width: 1024px) {
		.section--insurance .jcr-slider--logos .jcr-slider__track {
			grid-auto-columns: calc((100% - 2.5rem) / 3);
		}
	}

	@media (max-width: 720px) {
		.section--insurance .jcr-slider--logos .jcr-slider__track {
			grid-auto-columns: calc((100% - 1.25rem) / 2);
		}
	}

	/* Static provider wall: all accepted plans remain visible without carousel UI. */
	.section--insurance {
		padding-block: clamp(4.75rem, 7vw, 6.5rem);
	}

	.insurance-intro {
		grid-template-columns: minmax(0, 1.5fr) minmax(250px, .5fr);
		gap: clamp(2rem, 5vw, 5rem);
	}

	.insurance-intro__action {
		padding: 1.35rem;
		border-radius: 12px;
		box-shadow: none;
	}

	.insurance-providers-title {
		margin-top: 2.5rem;
	}

	.insurance-logo-grid {
		display: grid;
		grid-template-columns: repeat(6, minmax(0, 1fr));
		margin-top: 1.25rem;
		overflow: hidden;
		border-radius: 14px;
		background: linear-gradient(135deg, #0b2c3e, #164b5c);
		box-shadow: 0 16px 38px rgba(10, 36, 54, .13);
	}

	.insurance-logo-grid__item {
		display: grid;
		place-items: center;
		min-height: 130px;
		padding: 1.35rem;
		border-right: 1px solid rgba(255, 255, 255, .1);
		border-bottom: 1px solid rgba(255, 255, 255, .1);
	}

	.insurance-logo-grid__item:nth-child(6n) {
		border-right: 0;
	}

	.insurance-logo-grid__item:nth-last-child(-n+6) {
		border-bottom: 0;
	}

	.insurance-logo-grid__item img {
		width: auto;
		max-width: 145px;
		max-height: 78px;
		object-fit: contain;
		filter: none;
		opacity: 1;
	}

	@media (max-width: 1024px) {
		.insurance-logo-grid {
			grid-template-columns: repeat(3, minmax(0, 1fr));
		}

		.insurance-logo-grid__item:nth-child(6n) {
			border-right: 1px solid rgba(255, 255, 255, .1);
		}

		.insurance-logo-grid__item:nth-child(3n) {
			border-right: 0;
		}

		.insurance-logo-grid__item:nth-last-child(-n+6) {
			border-bottom: 1px solid rgba(255, 255, 255, .1);
		}

		.insurance-logo-grid__item:nth-last-child(-n+3) {
			border-bottom: 0;
		}
	}

	@media (max-width: 800px) {
		.insurance-intro {
			grid-template-columns: 1fr;
		}
	}

	@media (max-width: 720px) {
		.insurance-logo-grid {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}

		.insurance-logo-grid__item {
			min-height: 105px;
			padding: 1rem;
		}

		.insurance-logo-grid__item:nth-child(3n) {
			border-right: 1px solid rgba(255, 255, 255, .1);
		}

		.insurance-logo-grid__item:nth-child(2n) {
			border-right: 0;
		}

		.insurance-logo-grid__item:nth-last-child(-n+3) {
			border-bottom: 1px solid rgba(255, 255, 255, .1);
		}

		.insurance-logo-grid__item:nth-last-child(-n+2) {
			border-bottom: 0;
		}
	}

	/* Unified blue insurance section with an unboxed verification action. */
	.section--insurance {
		color: var(--white);
		background: linear-gradient(135deg, #09293c 0%, #0f4358 58%, #17616c 100%);
	}

	.section--insurance::before {
		border-color: rgba(255, 255, 255, .08);
	}

	.section--insurance .eyebrow {
		color: #d5e59d;
	}

	.section--insurance h2,
	.insurance-providers-title {
		color: var(--white);
	}

	.insurance-intro__content>p:last-child {
		color: rgba(255, 255, 255, .8);
	}

	.insurance-intro__action {
		align-self: end;
		padding: 0;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
	}

	.insurance-intro__action .button {
		width: auto;
		min-width: 245px;
		color: var(--navy-deep);
		background: #d9e99a;
		border-color: #d9e99a;
	}

	.insurance-intro__action .button:hover {
		color: var(--white);
		background: var(--green);
		border-color: var(--green);
	}

	.insurance-intro__action p {
		color: rgba(255, 255, 255, .7);
		text-align: left;
	}

	.insurance-assurances {
		border-color: rgba(255, 255, 255, .15);
	}

	.insurance-assurances span {
		color: rgba(255, 255, 255, .88);
	}

	.insurance-assurances span::before {
		color: #d5e59d;
	}

	.insurance-logo-grid {
		border: 1px solid rgba(255, 255, 255, .13);
		background: rgba(255, 255, 255, .04);
		box-shadow: none;
	}

	@media (max-width: 800px) {
		.insurance-intro__action {
			align-self: start;
		}
	}

	@media (min-width: 801px) {
		.insurance-intro {
			grid-template-columns: minmax(0, 1fr) auto;
			gap: clamp(2rem, 4vw, 4rem);
		}

		.insurance-intro__content {
			max-width: none;
		}

		.section--insurance h2 {
			max-width: none;
		}

		.insurance-intro__action {
			width: 270px;
		}
	}

	/* Shared accreditation badges in the Guided by Faith section and footer. */
	.media-feature__certifications {
		margin: 2rem 0 1.75rem;
		padding-top: 1.5rem;
		border-top: 1px solid rgba(16, 47, 70, .12);
	}

	.media-feature__certifications-label {
		margin-bottom: 1rem;
		color: var(--navy);
		font-size: .76rem;
		font-weight: 650;
		letter-spacing: .12em;
		text-transform: uppercase;
	}

	.certification-badges {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: .85rem;
	}

	.certification-badges__item {
		display: grid;
		place-items: center;
		width: 88px;
		height: 76px;
		padding: .55rem;
		border: 1px solid rgba(16, 47, 70, .09);
		border-radius: 10px;
		background: var(--white);
	}

	.certification-badges__item img {
		width: auto;
		max-width: 100%;
		max-height: 100%;
		object-fit: contain;
	}

	.certification-badges__item--legitscript {
		transition: transform .2s ease, box-shadow .2s ease;
	}

	.certification-badges__item--legitscript:hover {
		box-shadow: var(--shadow-soft);
		transform: translateY(-2px);
	}

	.certification-badges--footer {
		gap: .55rem;
		margin-top: 1.5rem;
	}

	.certification-badges--footer .certification-badges__item {
		width: 62px;
		height: 56px;
		padding: .4rem;
		border-color: rgba(255, 255, 255, .16);
		background: rgba(255, 255, 255, .94);
	}

	.certification-badges .certification-badges__item {
		padding: 0;
		border: 0;
		border-radius: 0;
		background: transparent;
	}

	.certification-badges__item--legitscript:hover {
		box-shadow: none;
	}

	/* Consistent primary body copy across homepage sections. */
	.home-hero__intro,
	.section .prose,
	.section .prose p,
	.section-heading>p,
	.content-card__body>p,
	.testimonial-card__body>p,
	.section--cta .section--cta__inner>p,
	.consultation-grid__form>p,
	.insurance-intro__content>p:last-child {
		font-size: var(--content-font-size);
		line-height: 1.7;
	}

	/* Guided by Faith content details and full-width trust row. */
	.guided-values {
		display: flex;
		flex-wrap: wrap;
		gap: .65rem;
		margin: 1.5rem 0 .5rem;
	}

	.guided-values span {
		position: relative;
		padding: .5rem .8rem .5rem 2rem;
		border: 1px solid rgba(82, 120, 63, .17);
		border-radius: 999px;
		color: var(--navy);
		background: rgba(117, 148, 71, .08);
		font-size: .82rem;
		font-weight: 600;
	}

	.guided-values span::before {
		content: '✓';
		position: absolute;
		left: .78rem;
		color: var(--green);
		font-weight: 800;
	}

	.media-feature__certifications {
		margin-top: 1.65rem;
	}

	.certification-badges--content {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		width: 100%;
		gap: clamp(.75rem, 1.5vw, 1.15rem);
	}

	.certification-badges--content .certification-badges__item {
		width: 100%;
		height: 90px;
	}

	.certification-badges--content .certification-badges__item img {
		max-width: 90%;
		max-height: 82px;
	}

	@media (max-width: 720px) {
		.certification-badges--content {
			grid-template-columns: repeat(4, minmax(0, 1fr));
			gap: .5rem;
		}

		.certification-badges--content .certification-badges__item {
			width: 100%;
			height: 68px;
		}
	}

	/* Light testimonial section following the Guided by Faith content. */
	.section--testimonials {
		color: var(--ink);
		background: linear-gradient(180deg, #f8f7f3, #f1efe9);
	}

	.section--testimonials h2,
	.section--testimonials h3 {
		color: var(--navy);
	}

	.section--testimonials .section-heading>p {
		color: var(--muted);
	}

	.section--testimonials .testimonial-card {
		border-color: rgba(16, 47, 70, .1);
		background: var(--white);
		box-shadow: var(--shadow-soft);
	}

	.section--testimonials .testimonial-card video {
		background: var(--navy-deep);
	}

	.section--testimonials .testimonial-card__body>p {
		color: var(--muted);
	}

	.section--testimonials .jcr-slider__arrow {
		border-color: rgba(16, 47, 70, .14);
		color: var(--navy);
		background: var(--white);
	}

	.section--testimonials .jcr-slider__pagination {
		color: var(--muted);
	}

	/* Facility overview: content and video above a full-width photo carousel. */
	.section--facility {
		background: linear-gradient(180deg, #f8f7f3, #efeee8);
	}

	.facility-intro {
		display: grid;
		grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr);
		align-items: center;
		gap: clamp(2.5rem, 5vw, 5rem);
		width: 100%;
	}

	.facility-intro__content {
		max-width: 680px;
	}

	.facility-intro__content h2 {
		font-size: clamp(1.8rem, 3.5vw, 2.8rem);
		text-wrap: balance;
	}

	.facility-intro__content .prose {
		margin-bottom: 1.8rem;
		color: var(--muted);
	}

	.facility-intro .facility-video {
		width: 100%;
		max-width: none;
		margin: 0;
	}

	.facility-intro .facility-video video {
		width: 100%;
		aspect-ratio: 16/9;
		border-radius: 14px;
		object-fit: cover;
		box-shadow: var(--shadow);
	}

	.section--facility .jcr-slider--facility {
		margin-top: clamp(3.5rem, 6vw, 5.5rem);
	}

	.section--facility .jcr-slider--facility .jcr-slider__track {
		grid-auto-columns: calc((100% - 1.6rem) / 3);
	}

	.section--facility .facility-gallery__open,
	.section--facility .facility-gallery__open img {
		border-radius: 12px;
	}

	.section--facility .facility-gallery__open img {
		aspect-ratio: 16/10;
	}

	@media (max-width: 900px) {
		.facility-intro {
			grid-template-columns: 1fr;
			gap: 2.5rem;
		}

		.facility-intro__content {
			max-width: 680px;
		}

		.section--facility .jcr-slider--facility .jcr-slider__track {
			grid-auto-columns: calc((100% - 1rem) / 2);
		}
	}

	@media (max-width: 720px) {
		.section--facility .jcr-slider--facility {
			margin-top: 3rem;
		}

		.section--facility .jcr-slider--facility .jcr-slider__track {
			grid-auto-columns: 88%;
		}
	}

	@media (max-width: 720px) {
		.certification-badges__item {
			width: 76px;
			height: 68px;
		}
	}

	/* Consistent eyebrow typography and contrast. */
	.eyebrow,
	.section-heading>.eyebrow,
	.reviews-showcase__intro .eyebrow,
	.admissions-v2-heading .eyebrow,
	.site-footer__cta .eyebrow,
	.section--insurance .eyebrow,
	.media-feature .eyebrow,
	.facility-intro .eyebrow,
	.home-hero .eyebrow {
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .8rem !important;
		font-weight: 700 !important;
		letter-spacing: .14em !important;
		text-transform: uppercase !important;
		line-height: 1.4;
	}

	.section--teal .eyebrow,
	.section--green .eyebrow,
	.site-footer__cta .eyebrow {
		color: var(--white);
	}

	/* Our Services alignment with the site's shared section language. */
	.section--cards {
		background: var(--sand);
	}

	.section--cards .section-heading>.eyebrow {
		color: var(--green);
	}

	.content-card__badge {
		display: inline-block;
		align-self: flex-start;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .72rem;
		font-weight: 800;
		letter-spacing: .08em;
		text-transform: uppercase;
		color: var(--teal);
		background: rgba(38, 139, 140, .1);
		padding: .25rem .65rem;
		border-radius: 4px;
		margin-bottom: .85rem;
	}

	.content-card__body h3 {
		font-size: 1.25rem;
		margin-bottom: .6rem;
		color: var(--navy);
		line-height: 1.3;
	}

	.content-card__body p {
		color: var(--muted);
		font-size: .92rem;
		line-height: 1.55;
		margin-bottom: 1.25rem;
	}

	.section--cards .content-card__title-link {
		color: inherit;
		text-decoration: none;
		transition: color .2s ease;
	}

	.section--cards .content-card__title-link:hover,
	.section--cards .content-card__title-link:focus-visible {
		color: var(--teal);
	}

	.section--cards .text-link {
		display: inline-flex;
		align-items: center;
		gap: .7rem;
		font-weight: 700;
		text-decoration: none;
		color: var(--teal);
		font-size: .9rem;
	}

	.section--cards .text-link::after {
		content: '\2192';
		display: inline-block;
		font-size: 1.4rem;
		font-weight: 400;
		line-height: .75;
		letter-spacing: -.08em;
		transition: transform .2s ease;
	}

	.section--cards .text-link:hover::after,
	.section--cards .text-link:focus-visible::after {
		transform: translateX(5px);
	}

	.section-action--cards {
		margin-top: 3.25rem;
		text-align: center;
	}

	.section-action--cards .text-link--services {
		display: inline-flex;
		align-items: center;
		gap: .75rem;
		font-size: 1rem;
		font-weight: 600;
		letter-spacing: .04em;
		text-transform: capitalize;
		color: var(--teal);
		padding: .5rem 1rem;
		transition: color .2s ease, transform .2s ease;
	}

	.section-action--cards .text-link--services:hover,
	.section-action--cards .text-link--services:focus-visible {
		color: var(--navy-deep);
	}

	/* Keep insurance verification aligned with the shared primary-button palette. */
	.section--insurance .insurance-intro__action .button {
		color: var(--white);
		background: var(--green);
		border-color: var(--green);
	}

	.section--insurance .insurance-intro__action .button:hover,
	.section--insurance .insurance-intro__action .button:focus-visible {
		color: var(--white);
		background: var(--teal);
		border-color: var(--teal);
	}

	/* Preserve the facility video's native portrait composition. */
	.facility-intro .facility-video {
		display: flex;
		justify-content: flex-end;
	}

	.facility-intro .facility-video video {
		width: min(100%, 390px);
		max-height: 700px;
		aspect-ratio: 9/16;
		object-fit: cover;
	}

	@media (max-width: 720px) {
		.jcr-slider--testimonials .jcr-slider__track {
			grid-auto-columns: 100%;
		}
	}

	/* Live Google review showcase powered by Trustindex. */
	.section--reviews {
		padding-block: clamp(4.5rem, 7vw, 6.5rem);
		background: #ffffff;
		text-align: left;
	}

	.section--reviews .reviews-showcase {
		display: grid;
		grid-template-columns: minmax(280px, .85fr) minmax(0, 1.75fr);
		align-items: center;
		justify-items: stretch;
		gap: clamp(2.5rem, 5vw, 5rem);
		text-align: left;
	}

	.reviews-showcase__intro {
		max-width: 460px;
	}

	.reviews-showcase__intro .eyebrow {
		margin-bottom: 1.15rem;
		color: #8da676;
		font-size: .8rem;
		font-weight: 700;
		letter-spacing: .14em;
		text-transform: uppercase;
	}

	.reviews-showcase__intro h2 {
		margin-bottom: .65em;
		color: var(--navy);
		font-family: Georgia, 'Times New Roman', serif;
		font-size: clamp(1.8rem, 3.5vw, 2.8rem);
		font-weight: 400;
		line-height: 1.12;
		text-wrap: balance;
	}

	.reviews-showcase__intro>p:not(.eyebrow) {
		color: #64748b;
		font-size: 1.05rem;
		line-height: 1.65;
	}

	.reviews-showcase__rating {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: .35rem;
		margin-top: 2rem;
		color: var(--navy);
	}

	.reviews-showcase__rating .reviews-rating__stars {
		font-size: 1.5rem;
		color: #f59e0b;
		letter-spacing: 2px;
	}

	.reviews-showcase__rating strong {
		font-size: .95rem;
		font-weight: 700;
		color: var(--navy);
	}

	.section--reviews .reviews-embed {
		grid-column: auto;
		width: 100%;
	}

	.reviews-embed .ti-widget .ti-widget-container {
		margin: 0 !important;
	}

	.reviews-embed .ti-widget .ti-reviews-container-wrapper {
		padding-block: 8px !important;
	}

	.reviews-embed .ti-widget .ti-review-item>.ti-inner {
		min-height: 340px !important;
		padding: clamp(1.35rem, 2vw, 1.85rem) !important;
		border: 1px solid #e2e8f0 !important;
		border-radius: 12px !important;
		background: #ffffff !important;
		box-shadow: 0 4px 16px rgba(10, 36, 54, .04) !important;
	}

	.reviews-embed .ti-widget .ti-review-content {
		color: #4a5568 !important;
		font-family: inherit !important;
		font-size: .98rem !important;
		line-height: 1.65 !important;
	}

	.reviews-embed .ti-widget .ti-name {
		color: var(--navy) !important;
		font-family: inherit !important;
		font-size: 1.05rem !important;
		font-weight: 700 !important;
	}

	.reviews-embed__footer {
		display: flex;
		justify-content: flex-end;
		margin-top: 1.15rem;
	}

	.reviews-embed__link {
		display: inline-flex;
		align-items: center;
		gap: .4rem;
		color: var(--navy);
		font-size: .95rem;
		font-weight: 600;
		text-decoration: underline;
		text-underline-offset: 3px;
		transition: color .2s ease;
	}

	.reviews-embed__link:hover {
		color: var(--teal);
	}

	.reviews-embed__link svg {
		transition: transform .2s ease;
	}

	.reviews-embed__link:hover svg {
		transform: translate(2px, -2px);
	}

	@media (max-width: 900px) {
		.section--reviews .reviews-showcase {
			grid-template-columns: 1fr;
			gap: 2.75rem;
		}

		.reviews-showcase__intro {
			max-width: 680px;
		}
	}

	@media (max-width: 720px) {
		.section--reviews {
			padding-block: 3.5rem;
		}

		.section--reviews .reviews-showcase {
			justify-items: stretch;
			text-align: center;
		}

		.reviews-showcase__intro {
			text-align: center;
		}

		.reviews-showcase__rating {
			align-items: center;
		}

		.reviews-embed .ti-widget .ti-review-item>.ti-inner {
			min-height: 0 !important;
		}
	}

	/* Refined conversion-focused trust bar. */
	.home-trust-bar__inner {
		display: grid;
		grid-template-columns: minmax(190px, .58fr) minmax(0, 1.42fr);
		gap: clamp(1.5rem, 3vw, 3rem);
	}

	.home-trust-bar__reviews {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: .3rem;
		padding-right: clamp(1.5rem, 3vw, 3rem);
		border-right: 1px solid var(--line);
	}

	.home-trust-bar__label {
		font-size: clamp(1.2rem, 1.7vw, 1.55rem);
	}

	.home-trust-bar__google {
		flex-wrap: wrap;
		gap: .3rem .65rem;
		padding-right: 0;
		border-right: 0;
	}

	.home-trust-bar__credentials {
		display: grid;
		grid-template-columns: minmax(180px, 230px) auto;
		align-items: center;
		justify-content: end;
		justify-self: end;
		gap: clamp(1rem, 1.6vw, 1.5rem);
		width: 100%;
		min-width: 0;
	}

	.home-trust-bar__credentials-copy {
		display: flex;
		flex-direction: column;
		gap: .25rem;
		width: 100%;
		max-width: 230px;
		color: var(--navy);
	}

	.home-trust-bar__credentials-copy strong {
		font-size: 1rem;
		font-weight: 600;
		line-height: 1.25;
	}

	.home-trust-bar__credentials-copy span {
		color: var(--muted);
		font-size: .78rem;
		line-height: 1.35;
	}

	.certification-badges--trust-bar {
		display: grid;
		grid-template-columns: repeat(4, 78px);
		justify-content: end;
		width: auto;
		min-width: 0;
		gap: .65rem;
	}

	.certification-badges--trust-bar .certification-badges__item {
		width: 78px;
		min-width: 0;
		height: 62px;
	}

	.certification-badges--trust-bar .certification-badges__item img {
		width: 100%;
		height: 100%;
		max-width: 76px;
		max-height: 54px;
		object-fit: contain;
	}


	.reviews-embed .ti-widget .ti-review-header {
		overflow: visible !important;
	}

	.reviews-embed .ti-widget .ti-profile-img {
		flex: 0 0 64px !important;
		width: 64px !important;
		height: 64px !important;
		min-width: 64px !important;
		overflow: visible !important;
	}

	#jcr-google-reviews .ti-widget .ti-review-item .ti-inner .ti-review-header .ti-profile-img {
		margin-top: 0 !important;
		transform: none !important;
	}

	.reviews-embed .ti-widget .ti-profile-img trustindex-image,
	.reviews-embed .ti-widget .ti-profile-img img {
		display: block !important;
		width: 64px !important;
		height: 64px !important;
		border-radius: 50% !important;
		object-fit: cover !important;
		overflow: hidden !important;
	}

	.reviews-embed .ti-widget .ti-profile-details {
		min-width: 0 !important;
		padding-left: .85rem !important;
	}

	@media (max-width: 1024px) {
		.home-trust-bar__inner {
			grid-template-columns: 1fr;
			gap: 1.2rem;
			padding-block: 1.35rem;
		}

		.home-trust-bar__reviews {
			align-items: center;
			padding-right: 0;
			padding-bottom: 1rem;
			border-right: 0;
			border-bottom: 1px solid var(--line);
			text-align: center;
		}
	}

	@media (max-width: 720px) {
		.home-trust-bar__credentials {
			grid-template-columns: 1fr;
			justify-self: stretch;
			text-align: center;
		}

		.home-trust-bar__credentials-copy {
			align-items: center;
		}

		.certification-badges--trust-bar {
			grid-template-columns: repeat(4, minmax(0, 1fr));
			justify-content: stretch;
			width: 100%;
			flex-basis: auto;
			overflow: visible;
		}

		.certification-badges--trust-bar .certification-badges__item {
			width: 100%;
			height: 54px;
		}

		.certification-badges--trust-bar .certification-badges__item img {
			max-width: 62px;
			max-height: 46px;
		}
	}

	/* One shared primary menu with a scalable desktop header. */
	.navigation-bar__inner--desktop {
		display: grid;
		grid-template-columns: minmax(190px, 235px) minmax(0, 1fr) auto;
		gap: clamp(1.25rem, 2vw, 2.25rem);
		min-height: 100px;
	}

	.site-branding--left {
		display: flex;
		align-items: center;
		justify-content: flex-start;
	}

	.site-branding--left .custom-logo {
		max-width: 230px;
		max-height: 84px;
	}

	.primary-navigation {
		min-width: 0;
	}

	.primary-navigation>ul {
		justify-content: flex-end;
		gap: 1.5rem;
	}

	.primary-navigation>ul>li>a {
		padding-inline: 0;
		font-size: 1rem;
		white-space: nowrap;
	}

	.navigation-bar__cta {
		flex: 0 0 auto;
		min-height: 46px;
		padding-inline: 1.15rem;
		white-space: nowrap;
	}

	@media (max-width: 1180px) {
		.navigation-bar__inner--desktop {
			grid-template-columns: minmax(150px, 180px) minmax(0, 1fr) auto;
			gap: 1rem;
		}

		.site-branding--left .custom-logo {
			max-width: 175px;
		}

		.primary-navigation>ul {
			gap: .9rem;
		}

		.primary-navigation>ul>li>a {
			font-size: .9rem;
		}

		.navigation-bar__cta {
			padding-inline: .9rem;
			font-size: .82rem;
		}
	}

	@media (max-width: 1024px) {
		.navigation-bar__inner--desktop {
			display: none;
		}

		.navigation-bar__inner--mobile {
			display: flex;
		}
	}

	.utility-bar__phone strong {
		margin-left: .3rem;
	}

	/* ==========================================================================
   Elevated Donation & Scholarship Giving Experience
   ========================================================================== */
	.section--donate-v2 {
		position: relative;
		background: radial-gradient(circle at 85% 5%, rgba(38, 139, 140, .07), transparent 45%), var(--sand);
		padding-block: clamp(3rem, 5vw, 5rem);
	}

	/* 3 Core Assurances Bar */
	.donate-v2-assurances {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 1.25rem;
		margin-bottom: 2.25rem;
	}

	.donate-v2-assurance-item {
		display: flex;
		align-items: center;
		gap: 1rem;
		padding: 1.1rem 1.35rem;
		background: var(--white);
		border: 1px solid rgba(16, 47, 70, .08);
		border-radius: 14px;
		box-shadow: 0 4px 14px rgba(10, 36, 54, .04);
	}

	.donate-v2-assurance-item__icon {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		flex-shrink: 0;
		width: 44px;
		height: 44px;
		border-radius: 12px;
		background: rgba(38, 139, 140, .12);
		color: var(--teal);
		box-sizing: border-box;
		padding: 0;
		margin: 0;
		line-height: 0;
	}

	.donate-v2-assurance-item__icon svg {
		display: block;
		margin: auto;
		flex-shrink: 0;
	}

	.donate-v2-assurance-item strong {
		display: block;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .9rem;
		font-weight: 800;
		color: var(--navy);
		line-height: 1.25;
	}

	.donate-v2-assurance-item div span,
	.donate-v2-assurance-item strong+span {
		display: block;
		font-size: .8rem;
		color: var(--muted);
		line-height: 1.35;
		margin-top: .15rem;
	}

	/* 2-Column Donation Grid */
	.donate-v2-grid {
		display: grid;
		grid-template-columns: minmax(0, 1.35fr) minmax(340px, .85fr);
		gap: 2rem;
		align-items: start;
	}

	/* Left Form Card */
	.donate-v2-form-card {
		background: var(--white);
		border-radius: 16px;
		padding: clamp(2rem, 4vw, 3.5rem);
		box-shadow: 0 15px 45px rgba(10, 36, 54, .07);
		border: 1px solid rgba(16, 47, 70, .06);
	}

	.donate-v2-form-card__header {
		margin-bottom: 1.75rem;
	}

	.donate-v2-form-card__title {
		font-size: clamp(1.85rem, 3.2vw, 2.5rem);
		color: var(--navy);
		margin-bottom: .6rem;
	}

	.donate-v2-form-card__intro {
		color: var(--muted);
		font-size: 1.02rem;
		line-height: 1.6;
	}

	/* Donation Box Container */
	.donate-v2-container-box {
		background: #fbfbfd;
		border: 1px solid rgba(16, 47, 70, .08);
		border-radius: 14px;
		padding: clamp(1.5rem, 3vw, 2rem);
		margin-top: 1.25rem;
	}

	.donate-v2-selector {
		display: flex;
		flex-direction: column;
		gap: 1.25rem;
	}

	.donate-v2-frequency-toggle {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: .5rem;
		background: rgba(16, 47, 70, .06);
		padding: .35rem;
		border-radius: 10px;
	}

	.donate-v2-freq-btn {
		padding: .65rem 1rem;
		border: none;
		background: transparent;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-weight: 700;
		font-size: .88rem;
		color: var(--navy);
		border-radius: 7px;
		cursor: pointer;
		transition: background .2s ease, color .2s ease, box-shadow .2s ease;
	}

	.donate-v2-freq-btn.is-active {
		background: var(--white);
		color: var(--navy);
		box-shadow: 0 2px 8px rgba(10, 36, 54, .08);
	}

	.donate-v2-amount-grid {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: .65rem;
	}

	.donate-v2-amount-btn {
		padding: .75rem .5rem;
		border: 2px solid rgba(16, 47, 70, .12);
		background: var(--white);
		color: var(--navy);
		font-family: "Avenir Next", Avenir, sans-serif;
		font-weight: 800;
		font-size: 1.15rem;
		border-radius: 10px;
		cursor: pointer;
		transition: all .2s ease;
	}

	.donate-v2-amount-btn:hover {
		border-color: var(--teal);
		background: rgba(38, 139, 140, .04);
	}

	.donate-v2-amount-btn.is-active {
		border-color: var(--green);
		background: rgba(122, 179, 73, .1);
		color: var(--navy);
	}

	.donate-v2-custom-amount {
		position: relative;
		display: flex;
		align-items: center;
	}

	.donate-v2-currency-symbol {
		position: absolute;
		left: 1rem;
		font-weight: 800;
		font-size: 1.1rem;
		color: var(--muted);
		pointer-events: none;
	}

	.donate-v2-amount-input {
		width: 100%;
		min-height: 48px;
		padding-left: 2rem !important;
		border: 2px solid rgba(16, 47, 70, .12) !important;
		border-radius: 8px !important;
		font-size: 1rem !important;
		font-weight: 700 !important;
	}

	.donate-v2-amount-input:focus {
		border-color: var(--teal) !important;
		box-shadow: 0 0 0 3px rgba(38, 139, 140, .18) !important;
		outline: none !important;
	}

	.donate-v2-amount-impact {
		background: rgba(38, 139, 140, .08);
		border-left: 3px solid var(--teal);
		padding: .85rem 1rem;
		border-radius: 0 8px 8px 0;
		font-size: .88rem;
		color: var(--navy);
		line-height: 1.45;
	}

	/* PayPal Button */
	.button--paypal-donate {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: .65rem;
		width: 100%;
		min-height: 54px;
		background: #ffc439 !important;
		border: 1px solid #f2ba36 !important;
		color: #003087 !important;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-weight: 800;
		font-size: 1.05rem;
		letter-spacing: .02em;
		text-decoration: none;
		border-radius: 8px;
		box-shadow: 0 4px 14px rgba(242, 186, 54, .35);
		cursor: pointer;
		transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease;
	}

	.button--paypal-donate:hover,
	.button--paypal-donate:focus-visible {
		background: #f2ba36 !important;
		transform: translateY(-1px);
		box-shadow: 0 6px 18px rgba(242, 186, 54, .45);
		color: #003087 !important;
	}

	.button--paypal-donate svg {
		fill: #003087;
	}

	/* Accepted Methods */
	.donate-v2-methods {
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: .65rem;
		font-size: .78rem;
		color: var(--muted);
		padding-top: .5rem;
	}

	.donate-v2-methods-list {
		display: flex;
		align-items: center;
		gap: .4rem;
		flex-wrap: wrap;
	}

	.donate-v2-method-pill {
		display: inline-block;
		background: var(--sand);
		border: 1px solid rgba(16, 47, 70, .08);
		border-radius: 4px;
		padding: .2rem .5rem;
		font-size: .72rem;
		font-weight: 700;
		color: var(--navy);
	}

	/* 501(c)(3) Nonprofit Disclosure Notice */
	.donate-v2-nonprofit-notice {
		background: rgba(38, 139, 140, .06);
		border: 1px solid rgba(38, 139, 140, .18);
		border-radius: 12px;
		padding: 1.15rem 1.25rem;
		margin-top: 1.5rem;
	}

	.donate-v2-nonprofit-notice__inner {
		display: flex;
		align-items: flex-start;
		gap: .85rem;
	}

	.donate-v2-nonprofit-notice__icon {
		font-size: 1.35rem;
		line-height: 1;
		flex-shrink: 0;
		margin-top: .1rem;
	}

	.donate-v2-nonprofit-notice p {
		font-size: .84rem;
		color: var(--navy);
		line-height: 1.5;
		margin: 0;
	}

	.donate-v2-form-card__footer {
		display: flex;
		align-items: center;
		gap: .65rem;
		margin-top: 1.5rem;
		padding-top: 1.15rem;
		border-top: 1px solid rgba(16, 47, 70, .08);
		font-size: .82rem;
		color: var(--muted);
		line-height: 1.45;
	}

	.donate-v2-lock-icon {
		font-size: 1rem;
		flex-shrink: 0;
	}

	/* Sidebar */
	.donate-v2-sidebar {
		display: flex;
		flex-direction: column;
		gap: 1.5rem;
	}

	.donate-v2-sidebar-card {
		background: var(--white);
		border-radius: 16px;
		padding: 1.75rem;
		box-shadow: 0 10px 30px rgba(10, 36, 54, .06);
		border: 1px solid rgba(16, 47, 70, .06);
	}

	.donate-v2-sidebar-card__header {
		margin-bottom: 1.25rem;
	}

	.donate-v2-sidebar-card__badge {
		display: inline-block;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .72rem;
		font-weight: 800;
		letter-spacing: .08em;
		text-transform: uppercase;
		color: var(--teal);
		background: rgba(38, 139, 140, .1);
		padding: .25rem .65rem;
		border-radius: 4px;
		margin-bottom: .5rem;
	}

	.donate-v2-sidebar-card h3 {
		font-size: 1.35rem;
		color: var(--navy);
		margin-bottom: .4rem;
	}

	.donate-v2-sidebar-quote {
		color: var(--teal) !important;
		font-size: .95rem !important;
		line-height: 1.55 !important;
		margin-top: .6rem !important;
	}

	/* Impact List */
	.donate-v2-impact-list {
		list-style: none;
		padding: 0;
		margin: 0;
		display: grid;
		gap: 1.1rem;
	}

	.donate-v2-impact-list li {
		display: flex;
		align-items: flex-start;
		gap: .85rem;
	}

	.donate-v2-check-svg {
		flex-shrink: 0;
		width: 22px;
		height: 22px;
		display: block;
		margin-top: .15rem;
	}

	.donate-v2-impact-list strong {
		display: block;
		font-size: .9rem;
		color: var(--navy);
		margin-bottom: .15rem;
	}

	.donate-v2-impact-list span {
		display: block;
		font-size: .82rem;
		color: var(--muted);
		line-height: 1.45;
	}

	/* Contact Links */
	.donate-v2-contact-links {
		display: grid;
		gap: .85rem;
		margin-top: 1.25rem;
	}

	.donate-v2-email-link {
		display: block;
		text-align: center;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-weight: 700;
		font-size: .9rem;
		color: var(--teal);
		text-decoration: none;
		padding: .6rem;
		border: 1px solid rgba(16, 47, 70, .1);
		border-radius: 6px;
		transition: background-color .2s ease;
	}

	.donate-v2-email-link:hover {
		background: var(--sand);
		text-decoration: underline;
	}

	/* Accreditations */
	.donate-v2-sidebar-card--badges h4 {
		font-size: .82rem;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-weight: 800;
		letter-spacing: .08em;
		text-transform: uppercase;
		color: var(--navy);
		margin-bottom: 1rem;
		text-align: center;
	}

	.donate-v2-sidebar-card--badges .certification-badges {
		justify-content: center;
		gap: 1.25rem;
	}

	@media (max-width: 1024px) {
		.donate-v2-assurances {
			grid-template-columns: 1fr;
		}

		.donate-v2-grid {
			grid-template-columns: 1fr;
		}

		.donate-v2-amount-grid {
			grid-template-columns: repeat(2, 1fr);
		}
	}

	/* ==========================================================================
   Filterable Gallery Grid Component
   ========================================================================== */

	.section--gallery-grid {
		background: var(--cream);
		padding-block: clamp(4rem, 7vw, 6.5rem);
	}

	.gallery-grid__heading {
		max-width: 820px;
		margin-bottom: 2.5rem;
	}

	.gallery-grid__intro {
		color: var(--muted);
		font-size: var(--content-font-size);
		line-height: 1.7;
		margin-top: 1rem;
	}

	/* Category Filter Tabs */
	.gallery-filter {
		margin: 0 auto 3rem;
		display: flex;
		justify-content: center;
	}

	.gallery-filter__list {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		gap: .65rem;
		list-style: none;
		padding: .35rem;
		margin: 0;
		background: var(--sand);
		border-radius: 40px;
		border: 1px solid rgba(16, 47, 70, .08);
	}

	.gallery-filter__btn {
		display: inline-flex;
		align-items: center;
		gap: .5rem;
		padding: .65rem 1.35rem;
		border-radius: 30px;
		border: none;
		background: transparent;
		color: var(--navy);
		font-family: inherit;
		font-size: .92rem;
		font-weight: 600;
		cursor: pointer;
		transition: all .22s cubic-bezier(.2, 0, 0, 1);
	}

	.gallery-filter__btn:hover {
		color: var(--teal);
		background: rgba(255, 255, 255, .6);
	}

	.gallery-filter__btn.is-active {
		background: var(--navy);
		color: var(--white);
		box-shadow: 0 4px 14px rgba(10, 36, 54, .18);
	}

	.gallery-filter__count {
		display: inline-grid;
		place-items: center;
		min-width: 22px;
		height: 22px;
		padding: 0 6px;
		border-radius: 12px;
		background: rgba(16, 47, 70, .08);
		color: inherit;
		font-size: .75rem;
		font-weight: 700;
	}

	.gallery-filter__btn.is-active .gallery-filter__count {
		background: var(--teal);
		color: var(--white);
	}

	/* Gallery Photo Mosaic */
	.gallery-mosaic {
		display: grid;
		grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
		gap: 1.75rem;
	}

	.gallery-card {
		border-radius: 16px;
		overflow: hidden;
		background: var(--white);
		box-shadow: 0 8px 26px rgba(10, 36, 54, .11);
		transition: transform .3s cubic-bezier(.2, 0, 0, 1), box-shadow .3s cubic-bezier(.2, 0, 0, 1), opacity .3s ease;
	}

	.gallery-card.is-hidden {
		display: none;
	}

	.gallery-card:hover {
		transform: translateY(-5px);
		box-shadow: 0 18px 40px rgba(10, 36, 54, .18);
	}

	.gallery-card__trigger {
		display: block;
		width: 100%;
		height: 100%;
		padding: 0;
		border: none;
		background: none;
		cursor: pointer;
		text-align: left;
	}

	.gallery-card__media {
		position: relative;
		width: 100%;
		aspect-ratio: 4 / 3;
		overflow: hidden;
		background: var(--sand);
	}

	.gallery-card__img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform .45s cubic-bezier(.2, 0, 0, 1);
	}

	.gallery-card:hover .gallery-card__img {
		transform: scale(1.06);
	}

	.gallery-card__overlay {
		position: absolute;
		inset: 0;
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		padding: 1.5rem;
		background: linear-gradient(to top, rgba(10, 36, 54, .88) 0%, rgba(10, 36, 54, .3) 45%, transparent 85%);
		opacity: 0.95;
		transition: opacity .25s ease;
	}

	.gallery-card__badge {
		position: absolute;
		top: 1rem;
		left: 1rem;
		padding: .32rem .75rem;
		border-radius: 20px;
		background: rgba(23, 124, 118, .92);
		backdrop-filter: blur(6px);
		color: var(--white);
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .72rem;
		font-weight: 700;
		letter-spacing: .06em;
		text-transform: uppercase;
	}

	.gallery-card__title {
		color: var(--white);
		font-family: Georgia, 'Times New Roman', serif;
		font-size: 1.18rem;
		font-weight: 500;
		line-height: 1.3;
		padding-right: 2.5rem;
	}

	.gallery-card__zoom-icon {
		position: absolute;
		right: 1.25rem;
		bottom: 1.25rem;
		display: grid;
		place-items: center;
		width: 36px;
		height: 36px;
		border-radius: 50%;
		background: rgba(255, 255, 255, .2);
		backdrop-filter: blur(8px);
		color: var(--white);
		transition: transform .2s ease, background .2s ease;
	}

	.gallery-card:hover .gallery-card__zoom-icon {
		transform: scale(1.1);
		background: var(--teal);
	}

	/* Lightbox Modal */
	.gallery-lightbox {
		position: fixed;
		inset: 0;
		width: 100vw;
		height: 100vh;
		max-width: none;
		max-height: none;
		margin: 0;
		padding: 0;
		border: none;
		background: rgba(10, 36, 54, .94);
		backdrop-filter: blur(16px);
		z-index: 99999;
		display: none;
		place-items: center;
	}

	.gallery-lightbox[open] {
		display: grid;
	}

	.gallery-lightbox__wrapper {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 90vw;
		max-width: 1200px;
		height: 85vh;
	}

	.gallery-lightbox__content {
		display: flex;
		flex-direction: column;
		align-items: center;
		max-width: 100%;
		max-height: 100%;
	}

	.gallery-lightbox__img {
		max-width: 82vw;
		max-height: 72vh;
		object-fit: contain;
		border-radius: 12px;
		box-shadow: 0 20px 60px rgba(0, 0, 0, .5);
	}

	.gallery-lightbox__meta {
		margin-top: 1rem;
		text-align: center;
		color: var(--white);
	}

	.gallery-lightbox__category {
		display: inline-block;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .78rem;
		font-weight: 700;
		letter-spacing: .08em;
		text-transform: uppercase;
		color: #9fe266;
		margin-bottom: .35rem;
	}

	.gallery-lightbox__caption {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: 1.25rem;
		color: var(--white);
		margin: 0;
	}

	.gallery-lightbox__close {
		position: absolute;
		top: -10px;
		right: 0;
		width: 44px;
		height: 44px;
		border-radius: 50%;
		border: 1px solid rgba(255, 255, 255, .2);
		background: rgba(255, 255, 255, .1);
		color: var(--white);
		font-size: 1.8rem;
		line-height: 1;
		cursor: pointer;
		display: grid;
		place-items: center;
		transition: background .2s ease;
		z-index: 10;
	}

	.gallery-lightbox__close:hover {
		background: rgba(255, 255, 255, .25);
	}

	.gallery-lightbox__nav {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		width: 52px;
		height: 52px;
		border-radius: 50%;
		border: 1px solid rgba(255, 255, 255, .2);
		background: rgba(255, 255, 255, .12);
		backdrop-filter: blur(8px);
		color: var(--white);
		font-size: 1.5rem;
		cursor: pointer;
		display: grid;
		place-items: center;
		transition: all .2s ease;
		z-index: 10;
	}

	.gallery-lightbox__nav:hover {
		background: var(--teal);
		border-color: var(--teal);
		transform: translateY(-50%) scale(1.08);
	}

	.gallery-lightbox__nav--prev {
		left: -20px;
	}

	.gallery-lightbox__nav--next {
		right: -20px;
	}

	@media (max-width: 768px) {
		.gallery-mosaic {
			grid-template-columns: 1fr;
			gap: 1.25rem;
		}

		.gallery-lightbox__nav--prev {
			left: 10px;
		}

		.gallery-lightbox__nav--next {
			right: 10px;
		}

		.gallery-lightbox__close {
			top: 10px;
			right: 10px;
		}
	}

	/* ==========================================================================
   FAQ Accordion Section Component
   ========================================================================== */

	.section--faq-accordion {
		background: var(--cream);
		padding-block: clamp(4rem, 7vw, 6.5rem);
	}

	.faq-layout {
		display: grid;
		grid-template-columns: minmax(0, 1.8fr) minmax(300px, 1.1fr);
		gap: clamp(2.5rem, 5vw, 4.5rem);
		align-items: start;
	}

	.faq-heading {
		margin-bottom: 2.25rem;
	}

	.faq-heading h2 {
		font-family: Georgia, 'Times New Roman', serif;
		color: var(--navy);
		font-size: clamp(2rem, 3.5vw, 2.75rem);
		font-weight: 500;
		line-height: 1.2;
		margin-bottom: .85rem;
	}

	.faq-intro {
		color: var(--muted);
		font-size: var(--content-font-size);
		line-height: 1.7;
	}

	.faq-accordion-list {
		display: flex;
		flex-direction: column;
		gap: 1.15rem;
	}

	.faq-item {
		border-radius: 14px;
		border: 1px solid rgba(16, 47, 70, .09);
		background: var(--white);
		box-shadow: 0 4px 18px rgba(10, 36, 54, .04);
		overflow: hidden;
		transition: border-color .25s ease, box-shadow .25s ease;
	}

	.faq-item[open] {
		border-color: var(--teal);
		box-shadow: 0 8px 25px rgba(23, 124, 118, .1);
	}

	.faq-item__summary {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
		padding: 1.35rem 1.75rem;
		cursor: pointer;
		list-style: none;
		user-select: none;
	}

	.faq-item__summary::-webkit-details-marker {
		display: none;
	}

	.faq-item__question {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: 1.22rem;
		font-weight: 600;
		color: var(--navy);
		line-height: 1.35;
		transition: color .2s ease;
	}

	.faq-item[open] .faq-item__question {
		color: var(--teal);
	}

	.faq-item__icon {
		display: grid;
		place-items: center;
		width: 32px;
		height: 32px;
		border-radius: 50%;
		background: var(--sand);
		color: var(--navy);
		flex-shrink: 0;
		transition: transform .3s cubic-bezier(.2, 0, 0, 1), background .25s ease, color .25s ease;
	}

	.faq-item[open] .faq-item__icon {
		transform: rotate(45deg);
		background: var(--teal);
		color: var(--white);
	}

	.faq-item__content {
		padding: .25rem 1.75rem 1.5rem;
		border-top: 1px solid rgba(16, 47, 70, .06);
	}

	.faq-item__content .prose p {
		font-size: 1.05rem;
		line-height: 1.75;
		color: var(--ink);
		margin-bottom: 1rem;
	}

	.faq-item__content .prose p:last-child {
		margin-bottom: 0;
	}

	.faq-item__content .prose ol,
	.faq-item__content .prose ul {
		margin: 1rem 0;
		padding-left: 1.5rem;
	}

	.faq-item__content .prose li {
		margin-bottom: .6rem;
		line-height: 1.65;
		color: var(--ink);
	}

	/* Sticky Sidebar Card */
	.faq-sidebar {
		position: sticky;
		top: 110px;
	}

	.faq-sidebar__card {
		padding: 2.25rem 2rem;
		border-radius: 20px;
		background: var(--sand);
		border: 1px solid rgba(16, 47, 70, .1);
		box-shadow: 0 12px 35px rgba(10, 36, 54, .07);
		text-align: center;
	}

	.faq-sidebar__icon {
		display: grid;
		place-items: center;
		width: 56px;
		height: 56px;
		border-radius: 50%;
		background: var(--teal);
		color: var(--white);
		margin: 0 auto 1.25rem;
		box-shadow: 0 6px 18px rgba(23, 124, 118, .25);
	}

	.faq-sidebar__card h3 {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: 1.5rem;
		color: var(--navy);
		font-weight: 500;
		margin-bottom: .75rem;
	}

	.faq-sidebar__card p {
		color: var(--muted);
		font-size: 1rem;
		line-height: 1.6;
		margin-bottom: 1.5rem;
	}

	.faq-sidebar__actions {
		display: flex;
		flex-direction: column;
		gap: .75rem;
		margin-bottom: 1.75rem;
	}

	.faq-sidebar__btn {
		width: 100%;
		justify-content: center;
	}

	.faq-sidebar__trust {
		display: flex;
		flex-direction: column;
		gap: .45rem;
		text-align: left;
		padding-top: 1.25rem;
		border-top: 1px solid rgba(16, 47, 70, .1);
		font-size: .88rem;
		font-weight: 600;
		color: var(--ink);
	}

	.faq-sidebar__trust-item {
		display: flex;
		align-items: center;
		gap: .5rem;
	}

	@media (max-width: 1024px) {
		.faq-layout {
			grid-template-columns: 1fr;
			gap: 3rem;
		}

		.faq-sidebar {
			position: static;
		}
	}

	/* ==========================================================================
   Video Spotlight Section (Distinct Video Formats)
   ========================================================================== */

	.section--video-spotlight {
		padding-block: clamp(4rem, 7vw, 6.5rem);
		background: var(--white);
	}

	.video-spotlight-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: clamp(2rem, 4vw, 3.5rem);
		max-width: 980px;
		margin: 0 auto;
		align-items: stretch;
	}

	.video-spotlight-card {
		border-radius: 20px;
		overflow: hidden;
		background: var(--sand);
		border: 1px solid rgba(16, 47, 70, .1);
		box-shadow: 0 10px 30px rgba(10, 36, 54, .06);
		transition: transform .3s ease, box-shadow .3s ease;
		display: flex;
		flex-direction: column;
		height: 100%;
	}

	.video-spotlight-card:hover {
		transform: translateY(-4px);
		box-shadow: 0 18px 42px rgba(10, 36, 54, .12);
	}

	.video-spotlight-card__media {
		position: relative;
		background: var(--navy);
		overflow: hidden;
		height: 430px;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
	}

	.video-spotlight-card__badge {
		position: absolute;
		top: 14px;
		left: 14px;
		background: var(--teal);
		color: var(--white);
		font-size: .8rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: .08em;
		padding: .35rem .85rem;
		border-radius: 50px;
		z-index: 2;
		box-shadow: 0 4px 12px rgba(0, 0, 0, .25);
	}

	.video-spotlight-card__player {
		width: 100%;
		height: 100%;
		display: block;
		object-fit: cover;
		background: var(--navy);
	}

	.video-spotlight-card__body {
		padding: 1.5rem 1.75rem;
		text-align: left;
		background: var(--sand);
		flex: 1 1 auto;
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
	}

	.video-spotlight-card__body h3 {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: 1.35rem;
		color: var(--navy);
		margin-bottom: .4rem;
		font-weight: 600;
	}

	.video-spotlight-card__body p {
		color: var(--muted);
		font-size: 1rem;
		line-height: 1.6;
		margin: 0;
	}

	@media (max-width: 768px) {
		.video-spotlight-grid {
			grid-template-columns: 1fr;
			max-width: 480px;
		}
	}

	/* ==========================================================================
   BLOG ARCHIVE & ARTICLES
   ========================================================================== */

	.site-main--blog {
		background-color: var(--sand);
	}

	.blog-hero {
		text-align: center;
		padding-top: clamp(3rem, 6vw, 5rem);
		padding-bottom: clamp(2rem, 4vw, 3.5rem);
		background: #ffffff;
		border-bottom: 1px solid var(--border-soft);
	}

	.blog-hero__inner {
		max-width: 820px;
		margin: 0 auto;
	}

	.blog-hero .hero-breadcrumbs {
		margin-bottom: 1.25rem;
		justify-content: center;
	}

	.blog-hero h1 {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: clamp(2.25rem, 4.5vw, 3.25rem);
		color: var(--navy);
		line-height: 1.2;
		margin-top: .5rem;
		margin-bottom: 1rem;
		font-weight: 600;
	}

	.blog-hero__desc {
		font-size: clamp(1.05rem, 1.8vw, 1.2rem);
		color: var(--muted);
		line-height: 1.65;
		margin: 0 auto;
	}

	/* Category Filter Bar */
	.blog-filter-bar {
		background: #ffffff;
		border-bottom: 1px solid var(--border-soft);
		padding: .85rem 0;
		position: sticky;
		top: 0px;
		z-index: 20;
		box-shadow: 0 4px 12px rgba(17, 35, 56, .03);
	}

	.blog-filter-list {
		display: flex;
		align-items: center;
		gap: .65rem;
		list-style: none;
		margin: 0;
		padding: .25rem 0;
		overflow-x: auto;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}

	.blog-filter-list::-webkit-scrollbar {
		display: none;
	}

	.blog-filter-pill {
		display: inline-flex;
		align-items: center;
		white-space: nowrap;
		padding: .45rem 1rem;
		border-radius: 9999px;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .88rem;
		font-weight: 600;
		color: var(--text);
		background: var(--sand);
		border: 1px solid var(--border-soft);
		text-decoration: none;
		transition: all .2s ease;
	}

	.blog-filter-pill:hover {
		background: #e7e4dc;
		color: var(--navy);
		border-color: #dcd7cd;
	}

	.blog-filter-pill.is-active {
		background: var(--navy);
		color: #ffffff;
		border-color: var(--navy);
	}

	/* Section Blog Grid */
	.section--blog-grid {
		padding-top: clamp(2.5rem, 5vw, 4rem);
		padding-bottom: clamp(3.5rem, 7vw, 5.5rem);
	}

	/* Featured Card (Page 1) */
	.blog-featured-card {
		display: grid;
		grid-template-columns: 1.15fr .85fr;
		background: #ffffff;
		border-radius: 16px;
		overflow: hidden;
		border: 1px solid var(--border-soft);
		box-shadow: 0 10px 30px rgba(17, 35, 56, .06);
		margin-bottom: clamp(2.5rem, 5vw, 3.5rem);
		transition: transform .25s ease, box-shadow .25s ease;
	}

	.blog-featured-card:hover {
		transform: translateY(-4px);
		box-shadow: 0 16px 40px rgba(17, 35, 56, .1);
	}

	.blog-featured-card__media {
		position: relative;
		display: block;
		overflow: hidden;
		min-height: 380px;
		background: var(--navy);
	}

	.blog-featured-card__img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform .4s ease;
	}

	.blog-featured-card:hover .blog-featured-card__img {
		transform: scale(1.03);
	}

	.blog-featured-card__body {
		padding: clamp(2rem, 3.5vw, 3rem);
		display: flex;
		flex-direction: column;
		justify-content: center;
	}

	.blog-featured-card__tag {
		color: var(--green);
		font-family: "Avenir Next", Avenir, sans-serif;
		font-weight: 700;
		font-size: .82rem;
		text-transform: uppercase;
		letter-spacing: .08em;
	}

	.blog-featured-card__title {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: clamp(1.6rem, 2.5vw, 2.1rem);
		line-height: 1.25;
		color: var(--navy);
		margin-top: .75rem;
		margin-bottom: 1rem;
		font-weight: 600;
	}

	.blog-featured-card__title a {
		color: inherit;
		text-decoration: none;
		transition: color .2s ease;
	}

	.blog-featured-card__title a:hover {
		color: var(--green);
	}

	.blog-featured-card__excerpt {
		font-size: 1.05rem;
		color: var(--muted);
		line-height: 1.65;
		margin-bottom: 1.75rem;
	}

	.blog-featured-card__footer {
		margin-top: auto;
	}

	/* Grid of Article Cards */
	.blog-grid {
		display: grid;
		grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
		gap: clamp(1.5rem, 2.5vw, 2.25rem);
	}

	.blog-card {
		display: flex;
		flex-direction: column;
		background: #ffffff;
		border-radius: 12px;
		overflow: hidden;
		border: 1px solid var(--border-soft);
		box-shadow: 0 8px 24px rgba(10, 36, 54, .09);
		transition: transform .25s ease, box-shadow .25s ease;
		height: 100%;
	}

	.blog-card:hover {
		transform: translateY(-4px);
		box-shadow: 0 16px 36px rgba(10, 36, 54, .16);
	}

	.blog-card__media {
		position: relative;
		display: block;
		aspect-ratio: 16 / 10;
		overflow: hidden;
		background: var(--navy);
	}

	.blog-card__img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform .35s ease;
	}

	.blog-card:hover .blog-card__img {
		transform: scale(1.05);
	}

	.blog-card__placeholder {
		width: 100%;
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		color: rgba(255, 255, 255, .3);
	}

	.blog-card__badge {
		position: absolute;
		top: 1rem;
		left: 1rem;
		background: rgba(17, 35, 56, .85);
		backdrop-filter: blur(4px);
		-webkit-backdrop-filter: blur(4px);
		color: #ffffff;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .75rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: .06em;
		padding: .35rem .75rem;
		border-radius: 6px;
		pointer-events: none;
	}

	.blog-card__body {
		padding: 1.5rem 1.75rem;
		display: flex;
		flex-direction: column;
		flex: 1 1 auto;
	}

	.blog-card__meta {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: .4rem;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .82rem;
		font-weight: 500;
		color: var(--muted);
		margin-bottom: .6rem;
	}

	.blog-card__separator {
		color: #c7c2b6;
	}

	.blog-card__title {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: 1.28rem;
		line-height: 1.35;
		color: var(--navy);
		margin-bottom: .75rem;
		font-weight: 600;
	}

	.blog-card__title a {
		color: inherit;
		text-decoration: none;
		transition: color .2s ease;
	}

	.blog-card__title a:hover {
		color: var(--green);
	}

	.blog-card__excerpt {
		font-size: .95rem;
		color: var(--muted);
		line-height: 1.6;
		margin-bottom: 1.25rem;
	}

	.blog-card__footer {
		margin-top: auto;
		padding-top: .75rem;
		border-top: 1px solid var(--sand);
	}

	.blog-card__link {
		display: inline-flex;
		align-items: center;
		gap: .4rem;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .88rem;
		font-weight: 700;
		color: var(--navy);
		text-decoration: none;
		transition: gap .2s ease, color .2s ease;
	}

	.blog-card__link svg {
		transition: transform .2s ease;
	}

	.blog-card__link:hover {
		color: var(--green);
	}

	.blog-card__link:hover svg {
		transform: translateX(3px);
	}

	/* Blog Pagination */
	.blog-pagination {
		margin-top: clamp(2.5rem, 5vw, 4rem);
		display: flex;
		justify-content: center;
	}

	.blog-pagination .nav-links {
		display: flex;
		align-items: center;
		gap: .5rem;
		flex-wrap: wrap;
	}

	.blog-pagination .page-numbers {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 42px;
		height: 42px;
		padding: 0 .75rem;
		border-radius: 8px;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .92rem;
		font-weight: 600;
		background: #ffffff;
		color: var(--text);
		border: 1px solid var(--border-soft);
		text-decoration: none;
		transition: all .2s ease;
	}

	.blog-pagination .page-numbers:hover {
		background: var(--sand);
		color: var(--navy);
		border-color: #dcd7cd;
	}

	.blog-pagination .page-numbers.current {
		background: var(--navy);
		color: #ffffff;
		border-color: var(--navy);
	}

	.blog-empty-state {
		text-align: center;
		padding: 4rem 1.5rem;
		background: #ffffff;
		border-radius: 12px;
		border: 1px solid var(--border-soft);
		box-shadow: 0 8px 24px rgba(10, 36, 54, .08);
	}

	/* ==========================================================================
   SINGLE ARTICLE TEMPLATE
   ========================================================================== */

	.site-main--article {
		background: #ffffff;
	}

	/* Article Hero Header */
	.article-header {
		padding-top: clamp(3rem, 5vw, 4.5rem);
		padding-bottom: clamp(2rem, 4vw, 3rem);
		background: var(--sand);
		border-bottom: 1px solid var(--border-soft);
	}

	.article-header__container {
		max-width: 860px;
		margin: 0 auto;
		text-align: center;
	}

	.article-header .article-breadcrumbs {
		margin-bottom: 1.25rem;
		justify-content: center;
	}

	.article-header__badge {
		display: inline-block;
		background: var(--navy);
		color: #ffffff;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .78rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: .08em;
		padding: .4rem .9rem;
		border-radius: 9999px;
		text-decoration: none;
		margin-bottom: 1rem;
		transition: background .2s ease;
	}

	.article-header__badge:hover {
		background: var(--green);
	}

	.article-header__title {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: clamp(2rem, 4.2vw, 3.1rem);
		line-height: 1.2;
		color: var(--navy);
		margin-bottom: 1.25rem;
		font-weight: 600;
	}

	.article-header__meta {
		display: flex;
		align-items: center;
		justify-content: center;
		flex-wrap: wrap;
		gap: .6rem;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .92rem;
		color: var(--muted);
		font-weight: 500;
	}

	.article-header__author {
		display: flex;
		align-items: center;
		gap: .4rem;
		color: var(--navy);
		font-weight: 600;
	}

	.article-header__avatar {
		display: flex;
		align-items: center;
		color: var(--green);
	}

	.article-header__sep {
		color: #c7c2b6;
	}

	/* Article Wrapper & Layout */
	.article-wrapper {
		padding-top: clamp(2.5rem, 5vw, 4rem);
		padding-bottom: clamp(3.5rem, 7vw, 5.5rem);
	}

	.article-layout {
		display: grid;
		grid-template-columns: minmax(0, 1.62fr) minmax(320px, 1fr);
		gap: clamp(2.5rem, 5vw, 4.5rem);
		align-items: flex-start;
	}

	/* Main Content */
	.article-content {
		min-width: 0;
	}

	.article-featured-image {
		margin: 0 0 2.5rem 0;
		border-radius: 12px;
		overflow: hidden;
		box-shadow: 0 8px 24px rgba(17, 35, 56, .08);
		background: var(--sand);
	}

	.article-featured-image__img {
		width: 100%;
		height: auto;
		display: block;
		max-height: 520px;
		object-fit: cover;
	}

	.article-featured-image__caption {
		padding: .75rem 1rem;
		font-size: .85rem;
		color: var(--muted);
		font-style: italic;
		background: var(--sand);
		text-align: center;
	}

	/* Prose Typography for Article */
	.article-body.prose {
		font-size: 1.125rem;
		line-height: 1.8;
		color: #2b3036;
	}

	.article-body.prose p {
		margin-bottom: 1.5rem;
	}

	.article-body.prose h2 {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: clamp(1.6rem, 2.5vw, 2rem);
		line-height: 1.3;
		color: var(--navy);
		margin-top: 2.5rem;
		margin-bottom: 1rem;
		font-weight: 600;
		border-bottom: 2px solid var(--sand);
		padding-bottom: .5rem;
	}

	.article-body.prose h3 {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: clamp(1.3rem, 2vw, 1.55rem);
		line-height: 1.35;
		color: var(--navy);
		margin-top: 2rem;
		margin-bottom: .75rem;
		font-weight: 600;
	}

	.article-body.prose ul,
	.article-body.prose ol {
		margin-bottom: 1.75rem;
		padding-left: 1.5rem;
	}

	.article-body.prose li {
		margin-bottom: .5rem;
	}

	.article-body.prose blockquote {
		margin: 2rem 0;
		padding: 1.25rem 1.75rem;
		background: var(--sand);
		border-left: 4px solid var(--green);
		border-radius: 0 8px 8px 0;
		font-family: Georgia, 'Times New Roman', serif;
		font-style: italic;
		font-size: 1.2rem;
		line-height: 1.6;
		color: var(--navy);
	}

	.article-body.prose a:not(.button):not(.resource-card):not(.resource-card__link):not(.infographic-viewer__link) {
		color: var(--green);
		text-decoration: underline;
		text-underline-offset: 3px;
		font-weight: 600;
		transition: color .2s ease;
	}

	.article-body.prose a:not(.button):not(.resource-card):not(.resource-card__link):not(.infographic-viewer__link):hover {
		color: var(--navy);
	}

	/* Article Tags Footer */
	.article-footer {
		margin-top: 2.5rem;
		padding-top: 1.5rem;
		border-top: 1px solid var(--border-soft);
	}

	.article-tags {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: .6rem;
	}

	.article-tags__label {
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .88rem;
		font-weight: 700;
		color: var(--navy);
		text-transform: uppercase;
		letter-spacing: .06em;
	}

	.article-tags__list {
		display: flex;
		flex-wrap: wrap;
		gap: .5rem;
		list-style: none;
		margin: 0;
		padding: 0;
	}

	.article-tags__list a {
		display: inline-block;
		background: var(--sand);
		color: var(--navy);
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .82rem;
		font-weight: 600;
		padding: .35rem .75rem;
		border-radius: 6px;
		text-decoration: none;
		transition: all .2s ease;
	}

	.article-tags__list a:hover {
		background: var(--navy);
		color: #ffffff;
	}

	/* Author / About Card */
	.article-author-card {
		display: flex;
		align-items: flex-start;
		gap: 1.25rem;
		margin-top: 2.5rem;
		padding: 1.75rem;
		background: var(--sand);
		border-radius: 12px;
		border: 1px solid var(--border-soft);
	}

	.article-author-card__badge {
		flex-shrink: 0;
		width: 52px;
		height: 52px;
		border-radius: 50%;
		background: var(--navy);
		color: #ffffff;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.article-author-card__content h4 {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: 1.25rem;
		color: var(--navy);
		margin-bottom: .5rem;
		font-weight: 600;
	}

	.article-author-card__content p {
		font-size: .95rem;
		color: var(--muted);
		line-height: 1.6;
		margin-bottom: 1rem;
	}

	/* Post Navigation (Prev / Next) */
	.article-nav {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 1.5rem;
		margin-top: 2.5rem;
		padding-top: 2rem;
		border-top: 1px solid var(--border-soft);
	}

	.article-nav__col {
		display: flex;
		flex-direction: column;
	}

	.article-nav__col--next {
		text-align: right;
	}

	.article-nav__label {
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .8rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: .06em;
		color: var(--muted);
		margin-bottom: .35rem;
	}

	.article-nav__title {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: 1.05rem;
		color: var(--navy);
		font-weight: 600;
		line-height: 1.35;
		text-decoration: none;
		transition: color .2s ease;
	}

	.article-nav__title:hover {
		color: var(--green);
	}

	/* Sidebar */
	.article-sidebar {
		min-width: 0;
		position: relative;
		align-self: stretch;
	}

	.article-sidebar__sticky {
		display: flex;
		flex-direction: column;
		gap: 1.5rem;
		min-height: 100%;
	}

	.sidebar-card {
		background: #ffffff;
		border-radius: 12px;
		padding: 1.75rem;
		border: 1px solid var(--border-soft);
		box-shadow: 0 8px 24px rgba(10, 36, 54, .09);
	}

	.sidebar-card__heading {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: 1.15rem;
		color: var(--navy);
		margin-bottom: 1rem;
		font-weight: 600;
		border-bottom: 1px solid var(--sand);
		padding-bottom: .5rem;
	}

	.sidebar-card__list {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
		gap: .5rem;
	}

	.sidebar-card__list a {
		display: flex;
		align-items: center;
		justify-content: space-between;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .9rem;
		font-weight: 600;
		color: var(--text);
		text-decoration: none;
		padding: .35rem 0;
		transition: color .2s ease;
	}

	.sidebar-card__list a:hover {
		color: var(--green);
	}

	.sidebar-card__count {
		font-size: .8rem;
		color: var(--muted);
		font-weight: 500;
	}

	.sidebar-card__recent {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
		gap: .85rem;
	}

	.sidebar-recent-item {
		display: flex;
		flex-direction: column;
		gap: .25rem;
		padding-bottom: .85rem;
		border-bottom: 1px solid var(--sand);
	}

	.sidebar-recent-item:last-child {
		padding-bottom: 0;
		border-bottom: none;
	}

	.sidebar-recent-item__title {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: .95rem;
		line-height: 1.35;
		color: var(--navy);
		font-weight: 600;
		text-decoration: none;
		transition: color .2s ease;
	}

	.sidebar-recent-item__title:hover {
		color: var(--green);
	}

	.sidebar-recent-item__date {
		font-family: "Avenir Next", Avenir, sans-serif;
		font-size: .78rem;
		color: var(--muted);
	}

	/* Related Articles Section */
	.section--related-articles {
		background: var(--sand);
		padding-top: clamp(3rem, 6vw, 4.5rem);
		padding-bottom: clamp(3.5rem, 6vw, 5rem);
		border-top: 1px solid var(--border-soft);
	}

	.section--related-articles .section-heading {
		text-align: center;
		margin-bottom: clamp(2rem, 4vw, 3rem);
	}

	/* Media Queries */
	@media (max-width: 991px) {
		.blog-featured-card {
			grid-template-columns: 1fr;
		}

		.blog-featured-card__media {
			min-height: 280px;
		}

		.article-layout {
			grid-template-columns: 1fr;
		}

		.article-sidebar__sticky {
			position: static;
			margin-top: 2.5rem;
		}
	}

	@media (max-width: 600px) {
		.blog-grid {
			grid-template-columns: 1fr;
		}

		.article-nav {
			grid-template-columns: 1fr;
			gap: 1rem;
		}

		.article-nav__col--next {
			text-align: left;
		}
	}

	/* Article Accordions */
	.article-accordion {
		margin: 1.5rem 0;
		background: #ffffff;
		border-radius: 10px;
		border: 1px solid var(--border-soft);
		overflow: hidden;
		box-shadow: 0 2px 8px rgba(17, 35, 56, .03);
	}

	.article-accordion__title {
		padding: 1.15rem 1.4rem;
		font-family: Georgia, 'Times New Roman', serif;
		font-size: 1.15rem;
		color: var(--navy);
		cursor: pointer;
		user-select: none;
		background: var(--sand);
		border-bottom: 1px solid transparent;
		transition: background .2s ease, color .2s ease;
	}

	.article-accordion__title:hover {
		color: var(--green);
	}

	.article-accordion[open] .article-accordion__title {
		background: #ffffff;
		border-bottom-color: var(--border-soft);
	}

	.article-accordion__body {
		padding: 1.25rem 1.4rem;
		font-size: 1.05rem;
		line-height: 1.7;
		color: #2b3036;
	}

	/* ==========================================================================
   Clean Legal & Privacy Policy Page Styling
   ========================================================================== */
	.entry-content--legal {
		max-width: 860px;
		margin: 3rem auto 5rem;
		padding: 0 1.5rem;
		font-size: 1.0625rem;
		line-height: 1.8;
		color: #2c3338;
	}

	.entry-content--legal h2 {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: 1.65rem;
		color: var(--navy);
		margin: 2.75rem 0 1rem;
		padding-bottom: 0.5rem;
		border-bottom: 1px solid var(--border-soft);
	}

	.entry-content--legal h3 {
		font-size: 1.25rem;
		color: var(--navy);
		margin: 1.5rem 0 0.75rem;
	}

	.entry-content--legal p {
		margin-bottom: 1.25rem;
	}

	.entry-content--legal ul {
		margin: 1rem 0 1.5rem 1.5rem;
		padding: 0;
	}

	.entry-content--legal li {
		margin-bottom: 0.6rem;
		line-height: 1.7;
	}

	.legal-notice-box {
		background: #fff9f0;
		border-left: 4px solid var(--gold);
		border-radius: 0 8px 8px 0;
		padding: 1.5rem 1.75rem;
		margin-bottom: 2.5rem;
		box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
	}

	.legal-notice-box h3 {
		margin-top: 0;
		margin-bottom: 0.5rem;
		color: #8a5712;
		font-size: 1.2rem;
	}

	.legal-notice-box p:last-child {
		margin-bottom: 0;
	}

	.legal-contact-card {
		background: var(--sand);
		border: 1px solid var(--border-soft);
		border-radius: 8px;
		padding: 1.5rem 1.75rem;
		margin: 1.5rem 0 2rem;
	}

	.legal-contact-card p {
		margin-bottom: 0.4rem;
	}

	.legal-contact-card p:last-child {
		margin-bottom: 0;
	}

	/* ==========================================================================
   Page Content Wrapper (Standard Pages & Guides with Sidebar)
   ========================================================================== */
	.page-content-wrapper {
		padding: 3.5rem 0 5rem;
	}

	.page-content-wrapper .article-body {
		font-size: 1.0625rem;
		line-height: 1.8;
		color: #2c3338;
	}

	.page-content-wrapper .article-body h2 {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: 1.65rem;
		color: var(--navy);
		margin: 2.5rem 0 1rem;
		padding-bottom: 0.5rem;
		border-bottom: 1px solid var(--border-soft);
	}

	.page-content-wrapper .article-body h3 {
		font-size: 1.25rem;
		color: var(--navy);
		margin: 1.5rem 0 0.75rem;
	}

	.page-content-wrapper .article-body p {
		margin-bottom: 1.25rem;
	}

	.page-content-wrapper .article-body ul {
		margin: 1rem 0 1.5rem 1.5rem;
		padding: 0;
	}

	.page-content-wrapper .article-body li {
		margin-bottom: 0.6rem;
		line-height: 1.7;
	}

	/* ==========================================================================
   Guide, Pillar & Infographic Page Styling
   ========================================================================== */
	.guide-summary-card {
		background: #f4f8fa;
		border-left: 4px solid var(--navy);
		border-radius: 0 8px 8px 0;
		padding: 1.5rem 1.75rem;
		margin: 1.5rem 0 2.5rem;
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
	}

	.guide-summary-card__badge {
		display: inline-block;
		background: var(--navy);
		color: #ffffff;
		font-size: 0.75rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.06em;
		padding: 0.3rem 0.75rem;
		border-radius: 4px;
		margin-bottom: 0.75rem;
	}

	.guide-summary-card__text {
		font-size: 1.125rem;
		line-height: 1.65;
		color: #1e2832;
		margin: 0;
	}

	/* Infographic Viewer */
	.infographic-viewer {
		margin: 2.5rem auto 3rem;
		text-align: center;
	}

	.infographic-viewer__frame {
		position: relative;
		background: #ffffff;
		border: 1px solid var(--border-soft);
		border-radius: 12px;
		overflow: hidden;
		box-shadow: 0 6px 24px rgba(0, 0, 0, 0.08);
		transition: box-shadow 0.3s ease, transform 0.3s ease;
	}

	.infographic-viewer__frame:hover {
		box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12);
		transform: translateY(-2px);
	}

	.infographic-viewer__link {
		display: block;
		position: relative;
		text-decoration: none;
	}

	.infographic-viewer__img {
		width: 100%;
		height: auto;
		display: block;
		margin: 0 auto;
	}

	.infographic-viewer__overlay {
		position: absolute;
		inset: 0;
		background: rgba(13, 31, 56, 0.35);
		opacity: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		transition: opacity 0.25s ease;
	}

	.infographic-viewer__frame:hover .infographic-viewer__overlay {
		opacity: 1;
	}

	.infographic-viewer__btn {
		display: inline-flex;
		align-items: center;
		gap: 0.5rem;
		background: #ffffff;
		color: var(--navy);
		font-weight: 700;
		font-size: 0.95rem;
		padding: 0.75rem 1.4rem;
		border-radius: 50px;
		box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
	}

	.infographic-viewer__caption {
		font-size: 0.9rem;
		color: #64748b;
		margin-top: 0.75rem;
		font-style: italic;
	}

	/* Resource Grid & Cards */
	.resource-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.25rem;
		margin: 2rem 0 3rem;
	}

	@media (max-width: 768px) {
		.resource-grid {
			grid-template-columns: 1fr;
		}
	}

	.resource-card {
		display: flex;
		gap: 1.25rem;
		align-items: flex-start;
		background: #ffffff;
		border: 1px solid var(--border-soft);
		border-radius: 10px;
		padding: 1.5rem;
		text-decoration: none;
		color: inherit;
		box-shadow: 0 2px 6px rgba(0, 0, 0, 0.09);
		transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
	}

	.resource-card:hover {
		border-color: var(--navy);
		transform: translateY(-3px);
		box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
	}

	.resource-card__icon {
		flex-shrink: 0;
		width: 48px;
		height: 48px;
		display: flex;
		align-items: center;
		justify-content: center;
		background: var(--sand);
		color: var(--navy);
		border-radius: 8px;
		transition: background .2s ease, color .2s ease;
	}

	.resource-card:hover .resource-card__icon {
		background: var(--navy);
		color: #ffffff;
	}

	.resource-card__content h3 {
		font-size: 1.15rem;
		color: var(--navy);
		margin: 0 0 0.4rem;
		font-family: inherit;
	}

	.resource-card__content p {
		font-size: 0.9375rem;
		line-height: 1.55;
		color: #4b5563;
		margin: 0 0 0.6rem;
	}

	.resource-card__link {
		display: inline-block;
		font-size: 0.875rem;
		font-weight: 700;
		color: var(--green);
		transition: color 0.2s ease;
	}

	.resource-card:hover .resource-card__link {
		color: var(--navy);
	}

	/* Guide CTA Banner */
	.guide-cta-banner,
	.article-body .guide-cta-banner,
	.page-content-wrapper .article-body .guide-cta-banner {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		text-align: left;
		gap: 1.5rem;
		background: linear-gradient(135deg, var(--navy-deep, #0a2436) 0%, var(--navy, #102f46) 100%) !important;
		color: #ffffff !important;
		padding: 2.75rem 3rem;
		border-radius: 14px;
		margin: 3.5rem 0 2rem;
		box-shadow: 0 12px 32px rgba(10, 36, 54, 0.22);
	}

	.guide-cta-banner__content {
		width: 100%;
		max-width: 850px;
	}

	.guide-cta-banner h3,
	.guide-cta-banner__content h3,
	.article-body .guide-cta-banner h3,
	.page-content-wrapper .article-body .guide-cta-banner h3 {
		color: #ffffff !important;
		font-family: Georgia, 'Times New Roman', serif;
		font-size: 1.75rem;
		line-height: 1.3;
		margin: 0 0 0.75rem !important;
		border: none !important;
		padding: 0 !important;
	}

	.guide-cta-banner p,
	.guide-cta-banner__content p,
	.article-body .guide-cta-banner p,
	.page-content-wrapper .article-body .guide-cta-banner p {
		color: #e2e8f0 !important;
		font-size: 1.05rem;
		margin: 0 !important;
		line-height: 1.65;
		max-width: 800px;
	}

	.guide-cta-banner__actions {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 1rem;
		width: 100%;
	}

	@media (max-width: 768px) {

		.guide-cta-banner,
		.article-body .guide-cta-banner,
		.page-content-wrapper .article-body .guide-cta-banner {
			padding: 2rem 1.5rem;
			gap: 1.25rem;
		}

		.guide-cta-banner h3,
		.guide-cta-banner__content h3,
		.article-body .guide-cta-banner h3,
		.page-content-wrapper .article-body .guide-cta-banner h3 {
			font-size: 1.45rem;
		}

		.guide-cta-banner__actions {
			flex-direction: column;
			align-items: stretch;
		}

		.guide-cta-banner__actions .button {
			width: 100%;
		}
	}

	.guide-cta-banner__actions br,
	.article-body .guide-cta-banner__actions br,
	.page-content-wrapper .article-body .guide-cta-banner__actions br {
		display: none !important;
	}

	.guide-cta-banner .button,
	.article-body .guide-cta-banner .button,
	.page-content-wrapper .article-body .guide-cta-banner .button {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		height: 48px;
		min-height: 48px;
		padding: 0 1.6rem;
		border-radius: 6px;
		font-family: "Avenir Next", Avenir, "Helvetica Neue", Arial, sans-serif;
		font-size: 0.9375rem;
		font-weight: 600;
		letter-spacing: 0.04em;
		text-decoration: none !important;
		text-transform: uppercase;
		white-space: nowrap;
		box-sizing: border-box;
		transition: all 0.2s ease;
	}

	.guide-cta-banner .button--primary,
	.article-body .guide-cta-banner .button--primary,
	.page-content-wrapper .article-body .guide-cta-banner .button--primary {
		background: var(--green, #75943f) !important;
		border: 1.5px solid var(--green, #75943f) !important;
		color: #ffffff !important;
	}

	.guide-cta-banner .button--primary:hover,
	.article-body .guide-cta-banner .button--primary:hover,
	.page-content-wrapper .article-body .guide-cta-banner .button--primary:hover {
		background: var(--teal, #177c76) !important;
		border-color: var(--teal, #177c76) !important;
		color: #ffffff !important;
		transform: translateY(-2px);
		box-shadow: 0 4px 14px rgba(23, 124, 118, 0.35);
	}

	.guide-cta-banner .button--outline,
	.article-body .guide-cta-banner .button--outline,
	.page-content-wrapper .article-body .guide-cta-banner .button--outline {
		background: transparent !important;
		border: 1.5px solid rgba(255, 255, 255, 0.85) !important;
		color: #ffffff !important;
	}

	.guide-cta-banner .button--outline:hover,
	.article-body .guide-cta-banner .button--outline:hover,
	.page-content-wrapper .article-body .guide-cta-banner .button--outline:hover {
		background: #ffffff !important;
		color: var(--navy, #102f46) !important;
		border-color: #ffffff !important;
		transform: translateY(-2px);
		box-shadow: 0 4px 12px rgba(255, 255, 255, 0.25);
	}

	/* Feature Checklist & Guide Components */
	.feature-checklist {
		list-style: none;
		padding: 0;
		margin: 1.5rem 0 2rem;
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
		gap: 0.85rem 1.5rem;
	}

	.feature-checklist li {
		position: relative;
		padding-left: 2rem;
		font-size: 1.05rem;
		line-height: 1.5;
		color: #2c3338;
	}

	.feature-checklist li::before {
		content: "✓";
		position: absolute;
		left: 0;
		top: 0;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 22px;
		height: 22px;
		background: rgba(117, 148, 63, 0.15);
		color: var(--green, #75943f);
		font-weight: 800;
		font-size: 0.85rem;
		border-radius: 50%;
	}

	.step-badge {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 28px;
		height: 28px;
		background: var(--navy);
		color: #ffffff;
		font-family: "Avenir Next", Avenir, sans-serif;
		font-weight: 700;
		font-size: 0.85rem;
		border-radius: 50%;
		margin-right: 0.4rem;
		vertical-align: middle;
	}

	.tab-section-content {
		background: #f8fafc;
		border: 1px solid var(--border-soft);
		border-radius: 8px;
		padding: 1.5rem;
		margin: 1rem 0 2rem;
	}

	.guide-chapter-nav {
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-wrap: wrap;
		gap: 1rem;
		margin: 3rem 0 1rem;
		padding-top: 2rem;
		border-top: 1px solid var(--border-soft);
	}

	/* ==========================================================================
	   Thank You & Confirmation Page Styling
	   ========================================================================== */
	.thank-you-page {
		background: var(--white);
	}

	.thank-you-hero {
		background: linear-gradient(145deg, var(--navy-deep) 0%, var(--navy) 100%);
		padding: 4.5rem 0 5rem;
		color: var(--white);
		text-align: center;
		position: relative;
	}

	.thank-you-hero .hero-breadcrumbs {
		margin-bottom: 2rem;
		justify-content: center;
	}

	.thank-you-hero .hero-breadcrumbs,
	.thank-you-hero .hero-breadcrumbs a {
		color: rgba(255, 255, 255, 0.7);
	}

	.thank-you-badge {
		display: inline-flex;
		align-items: center;
		gap: 0.6rem;
		background: rgba(117, 148, 63, 0.2);
		border: 1px solid rgba(117, 148, 63, 0.5);
		color: #c4e482;
		padding: 0.45rem 1.25rem;
		border-radius: 9999px;
		font-size: 0.85rem;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.06em;
		margin-bottom: 1.5rem;
	}

	.thank-you-badge svg {
		stroke: #a4c965;
	}

	.thank-you-hero__title {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: clamp(2.1rem, 3.8vw, 3rem);
		color: var(--white);
		line-height: 1.2;
		margin: 0 auto 1.25rem;
		max-width: 820px;
	}

	.thank-you-hero__lead {
		font-size: clamp(1.1rem, 1.35vw, 1.25rem);
		line-height: 1.7;
		color: rgba(255, 255, 255, 0.92);
		max-width: 740px;
		margin: 0 auto 2.5rem;
	}

	.thank-you-hero__emergency {
		background: rgba(255, 255, 255, 0.08);
		border: 1px solid rgba(255, 255, 255, 0.18);
		border-radius: 12px;
		padding: 2rem 2.5rem;
		max-width: 680px;
		margin: 0 auto;
		backdrop-filter: blur(8px);
	}

	.thank-you-hero__emergency p strong {
		font-size: 1.15rem;
		color: var(--white);
	}

	.thank-you-hero__actions {
		margin: 1.25rem 0 0.75rem;
		display: flex;
		justify-content: center;
	}

	.thank-you-call-btn {
		display: inline-flex !important;
		align-items: center;
		gap: 0.75rem;
		font-size: 1.15rem;
		font-weight: 700;
		padding: 1.05rem 2.25rem;
		border-radius: 8px;
		box-shadow: 0 8px 24px rgba(117, 148, 63, 0.4);
		transition: transform 0.2s, box-shadow 0.2s;
	}

	.thank-you-call-btn:hover,
	.thank-you-call-btn:focus-visible {
		transform: translateY(-2px);
		box-shadow: 0 12px 30px rgba(117, 148, 63, 0.5);
	}

	.thank-you-hero__note {
		margin: 0;
		font-size: 0.88rem;
		color: rgba(255, 255, 255, 0.75);
	}

	.thank-you-steps {
		padding: 5rem 0;
	}

	.thank-you-steps__grid {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
		gap: 2rem;
		margin-top: 3.5rem;
	}

	.thank-you-step-card {
		background: var(--white);
		border-radius: 12px;
		padding: 2.75rem 2rem 2.25rem;
		box-shadow: 0 10px 32px rgba(16, 47, 70, 0.06);
		position: relative;
		border-top: 4px solid var(--teal);
		transition: transform 0.25s ease, box-shadow 0.25s ease;
	}

	.thank-you-step-card:hover {
		transform: translateY(-4px);
		box-shadow: 0 16px 40px rgba(16, 47, 70, 0.12);
	}

	.thank-you-step-card__num {
		font-family: Georgia, serif;
		font-size: 2.5rem;
		font-weight: 700;
		color: rgba(23, 124, 118, 0.22);
		line-height: 1;
		margin-bottom: 0.85rem;
	}

	.thank-you-step-card__icon {
		color: var(--teal);
		margin-bottom: 1.25rem;
	}

	.thank-you-step-card h3 {
		font-family: Georgia, serif;
		font-size: 1.35rem;
		color: var(--navy);
		margin: 0 0 0.85rem;
	}

	.thank-you-step-card p {
		font-size: 1.02rem;
		line-height: 1.7;
		color: var(--muted);
		margin: 0;
	}

	.thank-you-custom-content {
		padding: 3rem 0;
		border-bottom: 1px solid var(--line);
	}

	.thank-you-resources {
		padding: 5rem 0 6rem;
	}

	.thank-you-resources__grid {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
		gap: 1.75rem;
		margin-top: 3rem;
	}

	.thank-you-resource-card {
		background: var(--white);
		border: 1px solid var(--line);
		border-radius: 12px;
		padding: 2.25rem 2rem;
		text-decoration: none;
		color: inherit;
		display: flex;
		flex-direction: column;
		transition: all 0.25s ease;
	}

	.thank-you-resource-card:hover,
	.thank-you-resource-card:focus-visible {
		border-color: var(--teal);
		box-shadow: 0 12px 35px rgba(10, 36, 54, 0.08);
		transform: translateY(-3px);
	}

	.thank-you-resource-card__tag {
		font-size: 0.78rem;
		font-weight: 800;
		text-transform: uppercase;
		letter-spacing: 0.08em;
		color: var(--teal);
		margin-bottom: 0.6rem;
		display: block;
	}

	.thank-you-resource-card h3 {
		font-family: Georgia, serif;
		font-size: 1.35rem;
		color: var(--navy);
		margin: 0 0 0.75rem;
	}

	.thank-you-resource-card p {
		font-size: 1rem;
		line-height: 1.65;
		color: var(--muted);
		margin: 0 0 1.5rem;
	}

	.thank-you-resource-card__link {
		margin-top: auto;
		font-weight: 700;
		color: var(--teal);
		font-size: 0.95rem;
	}

	.thank-you-trust-bar {
		background: var(--navy-deep);
		color: rgba(255, 255, 255, 0.85);
		padding: 2rem 0;
		border-top: 1px solid rgba(255, 255, 255, 0.1);
	}

	.thank-you-trust-bar__inner {
		display: flex;
		justify-content: space-around;
		align-items: center;
		flex-wrap: wrap;
		gap: 1.75rem;
	}

	.thank-you-trust-item {
		display: inline-flex;
		align-items: center;
		gap: 0.75rem;
		font-size: 0.98rem;
		font-weight: 600;
		color: rgba(255, 255, 255, 0.92);
	}

	.thank-you-trust-item svg {
		stroke: var(--green-light, #a4c965);
		flex-shrink: 0;
	}

	@media (max-width: 768px) {
		.thank-you-hero {
			padding: 3.5rem 0 4rem;
		}

		.thank-you-hero__emergency {
			padding: 1.5rem 1.25rem;
		}

		.thank-you-call-btn {
			width: 100%;
			justify-content: center;
			font-size: 1.05rem;
			padding: 0.9rem 1.5rem;
		}

		.thank-you-steps,
		.thank-you-resources {
			padding: 3.5rem 0;
		}

		.thank-you-trust-bar__inner {
			flex-direction: column;
			gap: 1rem;
			text-align: center;
		}
	}

	/* ==========================================================================
	   404 Error Page Styling (Distinct, Modern Visual Identity)
	   ========================================================================== */
	.error-404-container {
		background: radial-gradient(circle at 50% 15%, #ffffff 0%, #f4f7f9 100%);
		padding: 5rem 0 6.5rem;
		min-height: 75vh;
		display: flex;
		align-items: center;
	}

	.error-404-content {
		max-width: 840px;
		margin: 0 auto;
		text-align: center;
	}

	.error-404-number {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		font-family: Georgia, 'Times New Roman', serif;
		font-size: clamp(5.5rem, 14vw, 9.5rem);
		font-weight: 800;
		line-height: 0.9;
		color: var(--navy);
		gap: 0.5rem;
		margin-bottom: 1.5rem;
		user-select: none;
	}

	.error-404-zero {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: clamp(75px, 13vw, 120px);
		height: clamp(75px, 13vw, 120px);
		border-radius: 50%;
		background: var(--white);
		border: 4px solid var(--teal);
		box-shadow: 0 12px 35px rgba(23, 124, 118, 0.22);
		color: var(--teal);
	}

	.error-404-zero svg {
		stroke: var(--teal);
		animation: rotateCompass 12s linear infinite;
	}

	@keyframes rotateCompass {
		0% { transform: rotate(0deg); }
		25% { transform: rotate(15deg); }
		50% { transform: rotate(-10deg); }
		75% { transform: rotate(8deg); }
		100% { transform: rotate(0deg); }
	}

	.error-404-title {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: clamp(2rem, 3.5vw, 2.75rem);
		color: var(--navy);
		margin: 0 auto 0.85rem;
		line-height: 1.2;
	}

	.error-404-subtitle {
		font-size: clamp(1.05rem, 1.3vw, 1.2rem);
		color: var(--muted);
		line-height: 1.65;
		max-width: 620px;
		margin: 0 auto 2.5rem;
	}

	.error-404-search-box {
		max-width: 600px;
		margin: 0 auto 2.5rem;
	}

	.error-404-search-form {
		display: flex;
		align-items: center;
		background: var(--white);
		border: 2px solid #dbe2e6;
		border-radius: 50px;
		padding: 0.35rem 0.4rem 0.35rem 1.25rem;
		box-shadow: 0 12px 35px rgba(16, 47, 70, 0.08);
		transition: all 0.25s ease;
	}

	.error-404-search-form:focus-within {
		border-color: var(--teal);
		box-shadow: 0 14px 40px rgba(23, 124, 118, 0.18);
	}

	.error-404-search-input-wrap {
		display: flex;
		align-items: center;
		gap: 0.75rem;
		flex: 1;
	}

	.error-404-search-icon {
		color: var(--muted);
		flex-shrink: 0;
	}

	.error-404-search-input {
		border: none;
		background: transparent;
		font-size: 1.02rem;
		color: var(--ink);
		width: 100%;
		outline: none;
		padding: 0.5rem 0;
	}

	.error-404-search-input::placeholder {
		color: #8c9ba5;
	}

	.error-404-search-form .button {
		padding: 0.85rem 1.85rem !important;
		border-radius: 50px !important;
		font-weight: 700;
		flex-shrink: 0;
	}

	.error-404-quicklinks {
		margin: 2.5rem 0 2.5rem;
		background: var(--white);
		border: 1px solid var(--line);
		border-radius: 16px;
		padding: 2.25rem 2rem;
		box-shadow: 0 8px 30px rgba(16, 47, 70, 0.04);
	}

	.error-404-quicklinks__label {
		font-size: 0.82rem;
		font-weight: 800;
		text-transform: uppercase;
		letter-spacing: 0.08em;
		color: var(--teal);
		margin: 0 0 1.25rem;
	}

	.error-404-pills {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 0.75rem;
	}

	.error-404-pill {
		display: inline-flex;
		align-items: center;
		gap: 0.45rem;
		padding: 0.65rem 1.25rem;
		background: #f4f7f9;
		border: 1px solid #e1e8ed;
		border-radius: 50px;
		color: var(--navy);
		font-size: 0.92rem;
		font-weight: 600;
		text-decoration: none;
		transition: all 0.2s ease;
	}

	.error-404-pill:hover,
	.error-404-pill:focus-visible {
		background: var(--teal);
		border-color: var(--teal);
		color: var(--white);
		transform: translateY(-2px);
		box-shadow: 0 6px 18px rgba(23, 124, 118, 0.25);
	}

	.error-404-pill--home {
		background: var(--navy);
		border-color: var(--navy);
		color: var(--white);
	}

	.error-404-pill--home:hover {
		background: var(--navy-deep);
		border-color: var(--navy-deep);
		color: var(--white);
	}

	.error-404-helpbox {
		background: linear-gradient(135deg, var(--navy-deep) 0%, var(--navy) 100%);
		color: var(--white);
		border-radius: 14px;
		padding: 1.75rem 2.25rem;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1.75rem;
		text-align: left;
		box-shadow: 0 12px 35px rgba(10, 36, 54, 0.15);
	}

	.error-404-helpbox__content {
		display: flex;
		align-items: center;
		gap: 1.25rem;
	}

	.error-404-helpbox__icon {
		width: 48px;
		height: 48px;
		border-radius: 50%;
		background: rgba(255, 255, 255, 0.12);
		display: flex;
		align-items: center;
		justify-content: center;
		color: #c4e482;
		flex-shrink: 0;
	}

	.error-404-helpbox h4 {
		font-family: Georgia, serif;
		font-size: 1.15rem;
		color: var(--white);
		margin: 0 0 0.25rem;
	}

	.error-404-helpbox p {
		margin: 0;
		font-size: 0.95rem;
		color: rgba(255, 255, 255, 0.82);
	}

	.error-404-helpbox__btn {
		flex-shrink: 0;
		padding: 0.85rem 1.65rem;
		border-radius: 8px;
		font-size: 0.98rem;
	}

	@media (max-width: 768px) {
		.error-404-container {
			padding: 3.5rem 0 4.5rem;
		}

		.error-404-number {
			margin-bottom: 1rem;
		}

		.error-404-search-form {
			flex-direction: column;
			border-radius: 14px;
			padding: 0.75rem;
			gap: 0.75rem;
		}

		.error-404-search-form .button {
			width: 100%;
			justify-content: center;
			border-radius: 8px !important;
		}

		.error-404-quicklinks {
			padding: 1.5rem 1.25rem;
		}

		.error-404-pills {
			gap: 0.5rem;
		}

		.error-404-pill {
			font-size: 0.85rem;
			padding: 0.5rem 0.95rem;
		}

		.error-404-helpbox {
			flex-direction: column;
			text-align: center;
			padding: 1.5rem 1.25rem;
		}

		.error-404-helpbox__content {
			flex-direction: column;
			text-align: center;
		}

		.error-404-helpbox__btn {
			width: 100%;
			justify-content: center;
		}
	}