/* ============================================================
 ABA Therapy Paterson NJ — theme styles
 Tokens match the live site (sampled via Playwright):
 - Background base:rgb(226, 235, 243) pale blue
 - Text: rgb(27, 34, 50)dark navy
 - Primary (amber):rgb(242, 185, 13)
 - White surfaces, faint amber Approach band, faint blue How-It-Works
 ============================================================ */

:root{
	/* Brand */
	--aba-bg: rgb(226, 235, 243);
	--aba-bg-soft:rgb(238, 244, 250);
	--aba-surface:#ffffff;
	--aba-surface-amber:rgba(255, 251, 235, 0.6);
	--aba-surface-amberg: rgba(242, 185, 13, 0.05);
	--aba-surface-blue: rgba(205, 217, 228, 0.30);
	--aba-surface-orange: rgba(255, 247, 237, 0.4);

	--aba-text: rgb(27, 34, 50);
	--aba-text-muted: #576175;
	--aba-text-subtle:rgb(120, 130, 145);
	--aba-border: rgba(27, 34, 50, .10);
	--aba-border-soft:rgba(27, 34, 50, .06);

	--aba-primary:rgb(242, 185, 13);/* warm amber — yellow Get Started */
	--aba-primary-600:rgb(217, 165, 11);
	/* --aba-primary-700:rgb(180, 137, 9); */
	--aba-primary-700:#ebca47;
	--aba-primary-50: rgba(242, 185, 13, .12);

	--aba-accent: rgb(255, 79, 26); /* vivid red-orange phone CTA */
	--aba-accent-600: rgb(230, 60, 10);
	--aba-accent-700: rgb(195, 50, 5);

	/* Button geometry */
	--aba-btn-radius: 14px;

	--aba-shadow-sm:0 1px 2px rgba(15,23,42,.05);
	--aba-shadow-md:0 8px 24px rgba(15,23,42,.08);
	--aba-shadow-lg:0 20px 50px rgba(15,23,42,.12);
	--aba-radius-sm:.5rem;
	--aba-radius: 1rem;
	--aba-radius-lg:1.25rem;
	--aba-radius-xl:1.75rem;

	--aba-container:1400px;
	--aba-container-pad:1.25rem;

	--aba-font-sans:'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
	--aba-font-display: 'Plus Jakarta Sans', 'Inter', system-ui, sans-serif;
}

/* ---------- Base ---------- */
*, *::before, *::after{box-sizing: border-box}
html{-webkit-text-size-adjust: 100%; scroll-behavior: smooth}
body{
	margin: 0;
	font-family: var(--aba-font-sans);
	font-size: 16px;
	line-height: 1.65;
	color: var(--aba-text);
	background: var(--aba-surface);
	-webkit-font-smoothing: antialiased;
}
img{max-width: 100%; height: auto; display: block}
a{color: var(--aba-primary-700); text-decoration: none}
a:hover, a:focus-visible{text-decoration: underline}

h1, h2, h3, h4{
	font-family: var(--aba-font-display);
	color: var(--aba-text);
	line-height: 1.12;
	margin: 0 0 .75rem;
	font-weight: 700;
	letter-spacing: -.01em;
}
h1{font-size: clamp(2.25rem, 4.2vw + 1rem, 3.75rem)}
h2{font-size: clamp(1.75rem, 1.6vw + 1rem, 2.5rem)}
h3{font-size: 1.25rem}
p{margin: 0 0 1rem; color: var(--aba-text-muted)}

ul{padding-left: 1.25rem}

.aba-container{max-width: var(--aba-container); margin: 0 auto; padding: 0 var(--aba-container-pad)}

.aba-prose p{color: var(--aba-text-muted)}
.aba-prose h2, .aba-prose h3{margin-top: 1.5em}
.aba-prose ul{margin: 0 0 1rem}

.screen-reader-text{position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap}
.aba-skip-link:focus{position: fixed; top: 1rem; left: 1rem; background: #fff; padding: .5rem 1rem; border-radius: var(--aba-radius-sm); box-shadow: var(--aba-shadow-md); z-index: 9999}

/* ---------- Buttons (site-wide tokens, matching the live design) ---------- */
.aba-btn{
	display: inline-flex; align-items: center; justify-content: center; gap: .55rem;
	padding: 0 2rem; height: 48px;
	font-weight: 600; font-family: var(--aba-font-display); font-size: 1rem;
	border: 0; border-radius: var(--aba-btn-radius); cursor: pointer;
	transition: transform .15s ease, box-shadow .15s ease, background .15s ease, color .15s ease, opacity .15s ease;
	text-decoration: none;
	line-height: 1;
	white-space: nowrap;
}
.aba-btn:hover, .aba-btn:focus-visible{text-decoration: none; transform: scale(1.05); box-shadow: 0 6px 14px rgba(15,23,42,.10)}
.aba-btn--primary{
	background: linear-gradient(to right, rgb(242, 185, 13), rgba(242, 185, 13, .9));
	color: var(--aba-text);
}
.aba-btn--primary:hover{background: linear-gradient(to right, rgb(217, 165, 11), rgba(217, 165, 11, .92)); color: var(--aba-text);transition: all 0.3s}
.aba-btn--secondary,.btn_cta a{background: var(--aba-accent); color: #fff;box-shadow: 0 0 #0000, 0 0 #0000, 0 0 20px hsl(14 100% 55% /.5)}
.aba-btn--secondary:hover,.btn_cta a:hover{background: var(--aba-accent-600); color: #fff;box-shadow: 0 0 #0000, 0 0 #0000,0 0 30px hsl(14 100% 55% /.7)}
.aba-btn--ghost{background: transparent; color: var(--aba-text); border: 1px solid var(--aba-border)}
.aba-btn--ghost:hover{background: rgba(0,0,0,.04)}
.aba-btn--white{background: #fff; color: var(--aba-primary-700); box-shadow: 0 2px 8px rgba(15,23,42,.10)}
.aba-btn--white:hover{background: #fff; color: var(--aba-text); box-shadow: 0 6px 18px rgba(15,23,42,.12)}
.aba-btn--lg{padding: 0 2.25rem; height: 56px; font-size: 1.05rem}
.aba-btn--sm{padding: 0 1rem;height: 36px; font-size: .875rem}
.aba-btn--block{width: 100%}
.aba-btn__icon{display: inline-flex}
.aba-btn__arrow{display: inline-flex; transition: transform .15s ease}
.aba-btn:hover .aba-btn__arrow{transform: translateX(3px)}
.menu-item-112{display:none}
/* ---------- Header ---------- */
.aba-header{
	position: absolute; top: 0; left: 0; right: 0; z-index: 50;
	background: transparent;
	border-bottom: 0;
	transition: background .25s ease, border-color .25s ease, box-shadow .25s ease, position 0s;
}
body:not(.home) .aba-header{
	background-color: hsl(210 40% 92% / .5);border-bottom: 1px solid #bfccd980;
}
.aba-header.is-scrolled{
	position: fixed;
	background: rgba(255,255,255,.95);
	backdrop-filter: blur(10px);
	border-bottom: 1px solid var(--aba-border-soft);
	box-shadow: 0 1px 3px rgba(15,23,42,.05);
}
/* Push the first section down so absolute header doesn't sit on top of inner-page hero copy */
body.page:not(.home) .aba-main > section:first-child{padding-top: 6rem}
.aba-header__bar{padding: .65rem 0}
.aba-header__inner{display: flex; align-items: center; gap: 1.25rem}
.aba-header__brand{display: flex; align-items: center}
.aba-header__brand img{max-height: 40px; width: auto}
.aba-header__brand-text{font-family: var(--aba-font-display); font-weight: 700; color: var(--aba-text)}
.aba-nav{margin-left: auto}
.aba-nav__list{display: flex; gap: 1.5rem; list-style: none; margin: 0; padding: 0}
.aba-nav__list a{color: var(--aba-text); font-weight: 500; font-size: .95rem}
.aba-nav__list a:hover{color: var(--aba-primary-700); text-decoration: none}
.aba-header__cta{display: flex; align-items: center; gap: .5rem}
.aba-nav__toggle{display: none; background: transparent; border: 0; padding: .5rem; cursor: pointer}
.aba-nav__toggle-bar{display: block; width: 22px; height: 2px; background: var(--aba-text); margin: 4px 0; border-radius: 2px}
.aba-nav-mobile{background: #fff; border-top: 1px solid var(--aba-border-soft); padding: 1rem 1.25rem}
.aba-nav-mobile__list{list-style: none; margin: 0; padding: 0; display: grid; gap: .75rem}
.aba-nav-mobile__list a{color: var(--aba-text); font-weight: 500; display: block; padding: .5rem 0}

@media (max-width: 900px){
	.aba-nav{display: none}.menu-item-112{display:block}.btn_cta a {text-align: center;color: #fff;border-radius: 10px;}.btn_cta a svg {height: 18px;margin: 0;position: relative;top: 4px;margin-right: 5px;}
	.aba-nav__toggle{display: inline-flex; flex-direction: column}
	.aba-header__cta .aba-btn {font-size: 0;padding: 0;background: transparent;box-shadow: none;}.aba-btn__icon svg {color: #ff4f1a;height: 22px;width: 22px;}
	.aba-header__cta .aba-btn--primary{display: inline-flex}
}

/* ---------- Section base ---------- */
.aba-section{padding: 5rem 0}section.aba-section.aba-section--contact-form{background-color: #e2ebf3;}
.aba-section--insurance{padding: 4rem 0; background: var(--aba-surface-amberg)}
.aba-section--who-we-help{background: var(--aba-surface)}
.aba-section--services-grid{background: var(--aba-bg)}
.aba-section--approach{background: #fffbeb66}
.aba-section--parent-partnership{background: var(--aba-surface)}
.aba-section--how-it-works{background:#dee7f0; padding: 6rem 0}
.aba-section--services-band{background: var(--aba-surface-orange); padding: 4rem 0}
.aba-section--testimonials{background: var(--aba-surface); padding: 6rem 0}
.aba-section--cta{background: var(--aba-bg)}

.aba-section__head{text-align: center; max-width: 760px; margin: 0 auto 3rem}
.aba-section__head--centered{text-align: center}
.aba-section__heading{margin: 1rem 0 2rem}
.aba-section__intro{font-size: 1.05rem; color: var(--aba-text-muted); max-width: 640px; margin: 0 auto}

/* ---------- Hero (Home) — pale blue, dark text, sun accent ---------- */
.aba-hero{position: relative; isolation: isolate; overflow: hidden; background: var(--aba-bg)}
.aba-hero::before{
	content: ""; position: absolute; inset: 0;
	background-image: var(--aba-hero-bg);
	background-size: cover; background-position: center;
	opacity: .15;
	z-index: -2;
}
.aba-hero::after{
	content: ""; position: absolute; top: -120px; right: -120px;
	width: 360px; height: 360px; border-radius: 50%;
	background: radial-gradient(circle, rgba(242,185,13,.55) 0%, rgba(242,185,13,0) 65%);
	z-index: -1; pointer-events: none;
}
.aba-hero--home{padding: 9rem 0 11rem}
.aba-hero__inner{display: grid; grid-template-columns: 1.1fr 1fr; gap: 3rem; align-items: center}
.aba-hero__copy{color: var(--aba-text)}
.aba-hero__eyebrow{
	display: inline-flex; align-items: center; gap: .5rem;
	padding: .4rem .9rem; border-radius: 999px;
	background: rgba(242,185,13,.18); color: var(--aba-primary-700);
	font-size: .85rem; font-weight: 600;
	margin-bottom: 1.25rem;
}
//.aba-hero__eyebrow::before{content: "\2600"; font-size: 1rem}
.aba-hero__title{color: var(--aba-text); margin: 0 0 1rem; font-size: clamp(2.5rem, 4.5vw + 1rem, 4rem); font-weight: 800;}
.aba-hero__title-line{display: block}
.aba-hero__title-line--accent{color: #f2b90d}
.aba-hero__sub{color: var(--aba-text-muted); font-size: 1.125rem; }
.aba-hero__actions{display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem}
.aba-hero__meta{color: var(--aba-text-subtle); font-size: .875rem; margin-top: 1rem}

.aba-hero__form-card{
	background: #fff;
	padding: 1.75rem 1.75rem 1.5rem;
	border-radius: var(--aba-radius-lg);
	box-shadow: var(--aba-shadow-lg);
	color: var(--aba-text);
	border: 20px solid #dde4e9;
}
.aba-hero__form-heading{margin: 0 0 .25rem; font-size: 1.4rem}
.aba-hero__form-sub{margin: 0 0 1rem; color: var(--aba-text-muted); font-size: .9rem}

/* Inner-page hero — base */
.aba-hero--inner{
	padding: 8rem 0 6rem;
	text-align: center;
	min-height: 480px;
	display: flex; align-items: center;
}
.aba-hero--inner::before{
	opacity: 1;
	background-image: var(--aba-hero-bg);
	background-size: cover; background-position: center;
}
.aba-hero--inner .aba-hero__title{color: var(--aba-text)}
.aba-hero--inner .aba-hero__sub{color: #576175}
.page-template-page-careers .aba-hero--inner .aba-hero__sub,.page-template-page-services .aba-hero--inner .aba-hero__sub{color:#1b2232}
/* Inner-hero text colour modifier */
.aba-hero--text-white .aba-hero__title{color: #fff}
.aba-hero--text-white .aba-hero__sub{color: rgba(255, 255, 255, .92)}

/* Inner-hero eyebrow chip */
.aba-hero__eyebrow--inner{
	display: inline-flex; align-items: center;
	padding: .45rem 1.25rem;
	border-radius: 999px;
	background: var(--aba-primary); color: var(--aba-text);
	font-family: var(--aba-font-display); font-weight: 700; font-size: .85rem;
	margin-bottom: 1rem;
	box-shadow: 0 2px 8px rgba(15,23,42,.08);
}
.aba-hero--text-white .aba-hero__eyebrow--inner{background: rgba(255,255,255,.18); color: #fff; backdrop-filter: blur(4px)}

/* Amber variant — saturated amber wash over photo */
.aba-hero--amber::after{
	content: ""; position: absolute; inset: 0; z-index: -1;
	background-image: linear-gradient(to bottom right,hsl(45 90% 50% / .9) , hsl(45 90% 50% / .8) , hsl(40 70% 45% / .8));
	width: auto; height: auto; top: 0; right: 0; border-radius: 0;
	pointer-events: none;
}
.page-template-page-about .aba-hero--amber::after{
	background-image: linear-gradient(to bottom right,hsl(45 90% 50% / .3) , hsl(210 40% 92% / .8) , hsl(210 40% 92%));
}
.page-template-page-about .aba-hero--inner::before{opacity: 0.2;}
/* Light variant — diagonal gradient: primary/10 → background → secondary/10 (matches live) */
.aba-hero--light{
	background: linear-gradient(
		to bottom right,
		rgba(242, 185, 13, .10) 0%,
		rgb(226, 235, 243) 50%,
		rgba(255, 79, 26, .10) 100%
	);
	min-height: 360px;
	padding: 8rem 0 4rem;
}
.aba-hero--light::before{opacity: 0}/* no photo */
.aba-hero--light::after{content: none} /* no extra overlay */
.aba-hero--light .aba-hero__title{color: var(--aba-text)}
.page-template-page-privacy-policy .aba-hero--light .aba-hero__title{color:#c38e22}
.aba-hero--light .aba-hero__sub{color: var(--aba-text-muted)}
.aba-hero__inner--centered{display: block; text-align: center; width: 100%}
.aba-hero__title--centered{max-width:100%; margin: 0 auto 1rem}
.aba-hero__sub--centered{max-width: 100%; margin: 0 auto 1.75rem; font-size: 24px}
.aba-hero__actions--centered{justify-content: center}

@media (max-width: 900px){
	.aba-hero__inner{grid-template-columns: 1fr}
	.aba-hero--home{padding: 5rem 0 4rem}
}

/* ---------- Insurance strip (marquee) ---------- */
.aba-section--insurance{padding: 4rem 0 5rem; background: #e2e8e8; overflow: hidden}
.aba-section--insurance .aba-section__head{margin-bottom: 2rem}
.aba-section--insurance .aba-section__heading{font-size: 1.75rem}
.aba-marquee{position: relative; overflow: hidden; mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%); -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%)}
.aba-marquee__track{
	display: inline-flex; gap: 4rem; align-items: center;
	padding-block: .5rem;
	animation: aba-marquee 38s linear infinite;
	width: max-content;
}
.aba-marquee:hover .aba-marquee__track{animation-play-state: paused}
.aba-marquee__item{
	flex: 0 0 auto;
	height: 90px;
	display: flex; align-items: center; justify-content: center;
	background: #fff;
	padding: .75rem 1.25rem;
	border-radius: var(--aba-radius);
	box-shadow: 0 1px 2px rgba(15,23,42,.04);
	border: 1px solid var(--aba-border-soft);
}
.aba-marquee__item img{height: 100%; width: auto; max-width: 220px; object-fit: contain}
@keyframes aba-marquee{
	from{transform: translateX(0)}
	to{transform: translateX(-50%)}
}
@media (max-width: 640px){
	.aba-marquee__item{height: 64px; padding: .5rem 1rem}
	.aba-marquee__track{gap: 2rem}
}
@media (prefers-reduced-motion: reduce){
	.aba-marquee__track{animation: none}
	.aba-marquee{mask-image: none; -webkit-mask-image: none; overflow-x: auto}
}

/* ---------- Who We Help (circular images, corner brackets, icon badge) ---------- */
.aba-section--who-we-help{padding: 5rem 0 6rem}
.aba-section--who-we-help .aba-card-grid{gap: 2.25rem}
.aba-wwh{background: transparent; border: 0; box-shadow: none; padding: 0; text-align: center}
.aba-wwh:hover{transform: none; box-shadow: none}
.aba-wwh__media{
	position: relative; width: 200px; height: 200px;
	margin: 0 auto 1.5rem;
}
.aba-wwh__media::before, .aba-wwh__media::after{
	content: ""; position: absolute; width: 36px; height: 36px;
	border: 3px solid var(--aba-primary);
	pointer-events: none;
}
.aba-wwh__media::before{top: -10px; left: -10px; border-right: 0; border-bottom: 0; border-top-left-radius: 8px}
.aba-wwh__media::after{bottom: -10px; right: -10px; border-left: 0; border-top: 0; border-bottom-right-radius: 8px}
.aba-wwh__img{
	width: 100%; height: 100%; border-radius: 50%; object-fit: cover;
	border: 3px solid var(--aba-primary-50);transition:all 0.3s;
}
.aba-wwh:hover .aba-wwh__img{transform:scale(1.1);	}
.aba-wwh__badge{
	position: absolute; bottom: -13px; right: 0;left:0;margin:0 auto;
	width: 44px; height: 44px; border-radius: 50%;border: 3px solid #fff;
	background: var(--aba-primary); color: var(--aba-text);
	display: inline-flex; align-items: center; justify-content: center;
	box-shadow: 0 4px 12px rgba(15,23,42,.18);
}
.aba-wwh__title{font-size: 1.15rem; margin: 0 0 .5rem; color: var(--aba-text)}
.aba-wwh__text{color: var(--aba-text-muted); font-size: .95rem; margin: 0; max-width: 22rem; margin-left: auto; margin-right: auto}

/* ---------- Card grids ---------- */
.aba-card-grid{list-style: none; margin: 0; padding: 0; display: grid; gap: 1.5rem}
.aba-card-grid--2{grid-template-columns: repeat(2, 1fr)}
.aba-card-grid--3{grid-template-columns: repeat(3, 1fr)}
.aba-card-grid--4{grid-template-columns: repeat(4, 1fr)}
.aba-card-grid--compact{gap: 1rem}
@media (max-width: 1024px){.aba-card-grid--3, .aba-card-grid--4{grid-template-columns: repeat(2, 1fr)} }
@media (max-width: 600px){.aba-card-grid--2, .aba-card-grid--3, .aba-card-grid--4{grid-template-columns: 1fr} }

.aba-card{
	background: var(--aba-surface);
	border: 1px solid var(--aba-border-soft);
	border-radius: var(--aba-radius);
	box-shadow: var(--aba-shadow-sm);
	padding: 1.75rem;
	transition: transform .15s ease, box-shadow .15s ease;
	text-align: center;
}
.aba-card:hover{transform: translateY(-3px); box-shadow: var(--aba-shadow-md)}
.aba-card--soft{background: var(--aba-bg-soft); border-color: transparent}
.aba-card--mini{padding: 1.25rem}
.aba-card--service{padding: 0; overflow: hidden; text-align: left}
.aba-card--detail{padding: 0; overflow: hidden; text-align: left}
.aba-card--info{display: flex; flex-direction: column; align-items: flex-start; gap: .5rem; text-align: left}

.aba-card__icon{
	width: 56px; height: 56px; border-radius: 50%;
	background: var(--aba-primary-50); color: var(--aba-primary-700);
	display: inline-flex; align-items: center; justify-content: center;
	font-size: 1.4rem; margin: 0 auto 1rem;
}
.aba-card--info .aba-card__icon{width: 44px; height: 44px; margin: 0 0 .5rem}
.aba-card__media{display: block; position: relative; aspect-ratio: 16/10; overflow: hidden}
.aba-card__media img{width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease}
.aba-card:hover .aba-card__media img{transform: scale(1.04)}
.aba-card__badge{position: absolute; top: .75rem; left: .75rem; background: var(--aba-primary); color: var(--aba-text); padding: .25rem .75rem; border-radius: 999px; font-size: .75rem; font-weight: 700}
.aba-card__body{padding: 1.25rem 1.5rem 1.5rem}
.aba-card__title{font-size: 1.1rem; margin: 0 0 .5rem}
.aba-card__title--sm{font-size: 1rem}
.aba-card__text{font-size: .95rem; color: var(--aba-text-muted); margin: 0}
.aba-card__text--sm{font-size: .9rem}
.aba-card__link{color: var(--aba-primary-700); font-weight: 700; font-size: 1.25rem}

/* Make Services-Grid card image fill more vertical space */
.aba-section--services-grid .aba-card__media{aspect-ratio: 4/3}

/* ---------- Approach (split top + 3-col bullet grid below) ---------- */
.aba-section--approach{background: var(--aba-surface-amber); padding: 6rem 0}
.aba-approach__top{display: grid; grid-template-columns: 1fr 1fr; gap: 3.5rem; align-items: center; margin-bottom: 3rem}
.aba-approach__media{position: relative; border-radius: var(--aba-radius-lg); overflow: hidden; box-shadow: var(--aba-shadow-md)}
.aba-approach__media img{display: block; width: 100%; height: auto;border: 4px solid #f2b90d33;border-radius: 20px}
.aba-approach__pill{
	position: absolute; left: 1.25rem; bottom: 1.25rem;
	display: inline-flex; align-items: center; gap: .4rem;
	padding: .55rem 1rem; border-radius: 999px;
	background: var(--aba-primary); color: var(--aba-text);
	font-family: var(--aba-font-display); font-weight: 700; font-size: .9rem;
	box-shadow: var(--aba-shadow-md);
}
.aba-section__intro--left{margin: 0; max-width: 28rem}
.aba-approach__grid{
	list-style: none; padding: 0; margin: 0;
	display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem;
}
.aba-approach__bullet{
	background: var(--aba-bg-soft);
	border: 1px solid var(--aba-border-soft);
	border-radius: var(--aba-radius);
	padding: 1.25rem 1.25rem 1.5rem;
	display: flex; gap: .75rem; align-items: flex-start;
}
.aba-approach__check{
	flex: 0 0 auto;display: inline-flex; align-items: center; justify-content: center;
	width: 48px; height: 48px; border-radius: 50%;border: 2px solid #34b26833;
	background: rgba(16, 185, 129, .12); color: rgb(16, 185, 129);
}
.aba-approach__title{margin: 0 0 .35rem; font-size: 1rem; color: var(--aba-text)}
.aba-approach__text{margin: 0; color: var(--aba-text-muted); font-size: .85rem; line-height: 1.55}
@media (max-width: 900px){
	.aba-approach__top{grid-template-columns: 1fr}
	.aba-approach__grid{grid-template-columns: 1fr}
}

/* ---------- About: Mission (centered) ---------- */
.aba-section--mission{background: var(--aba-bg); padding: 5rem 0}
.aba-mission__head{max-width: 760px; margin: 0 auto}
.aba-mission__head .aba-section__intro{font-size: 1.05rem; line-height: 1.7}

/* ---------- About: Team (image left + bullets right) ---------- */
.aba-section--team{background: var(--aba-bg); padding: 0 0 4rem}
.aba-team__inner{display: grid; grid-template-columns: 1fr 1fr; gap: 3.5rem; align-items: center}
.aba-team__media img{width: 100%; border-radius: var(--aba-radius-lg); box-shadow: var(--aba-shadow-md); border: 4px solid var(--aba-primary);height:490px;object-fit:cover}
.aba-team__copy .aba-section__heading{margin: 0 0 1.5rem}
.aba-team__list{list-style: none; padding: 0; margin: 0; display: grid; gap: 1rem}
.aba-team__row{
	display: grid; grid-template-columns: 44px 1fr; gap: 1rem; align-items: start;
	background: transparent; padding: .5rem 0;
}
.aba-team__icon{
	display: inline-flex; align-items: center; justify-content: center;
	width: 44px; height: 44px; border-radius: 12px;
	background: var(--aba-primary-50); color: var(--aba-primary-700);
	flex: 0 0 auto;
}
.aba-team__title{margin: 0 0 .25rem; font-size: 1.05rem; color: var(--aba-text)}
.aba-team__text{margin: 0; color: var(--aba-text-muted); font-size: .95rem}
@media (max-width: 900px){.aba-team__inner{grid-template-columns: 1fr; gap: 2rem} }

/* ---------- About: Family-Focused (heart icon + text LEFT, image RIGHT) ---------- */
.aba-section--family-focused{background: var(--aba-bg); padding: 4rem 0}
.aba-section--family-focused__inner{display: grid; grid-template-columns: 1fr 1fr; gap: 3.5rem; align-items: center}
.aba-section--family-focused__media img{width: 100%; border-radius: var(--aba-radius-lg); box-shadow: var(--aba-shadow-md); border: 4px solid var(--aba-primary)}
.aba-ff__icon{
	display: inline-flex; align-items: center; justify-content: center;
	width: 44px; height: 44px; border-radius: 12px;
	background: var(--aba-primary); color: var(--aba-text);
	margin-bottom: 1rem;
}
.aba-ff__heading{margin: 0 0 1rem}
.aba-ff__text{color: var(--aba-text-muted); line-height: 1.7}
@media (max-width: 900px){.aba-section--family-focused__inner{grid-template-columns: 1fr; gap: 2rem} }

/* ---------- About: Community of Support (softer overlay + users icon inline) ---------- */
.aba-section--community{padding: 4.5rem 0}
.aba-section--community__overlay{background: linear-gradient(135deg, rgba(242, 185, 13, .55), rgba(255, 153, 51, .45))}
.aba-community__icon{
	display: inline-flex; align-items: center; justify-content: center;
	width: 36px; height: 36px; border-radius: 50%;
	background: rgba(255,255,255,.18); color: #fff;
	margin-right: .65rem; vertical-align: -.4rem;
}
.aba-section--community .aba-section__heading--on-image{display: inline-flex; align-items: center; justify-content: center}

/* ---------- Mission (About) ---------- */
.aba-section--mission{background: var(--aba-bg); padding: 6rem 0}
.aba-mission__split{display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: center; margin-top: 2rem}
.aba-mission__split img{border-radius: var(--aba-radius-lg); box-shadow: var(--aba-shadow-md)}
.aba-mission__team-heading{display: inline-flex; align-items: center; gap: .5rem}
@media (max-width: 900px){.aba-mission__split{grid-template-columns: 1fr} }

/* ---------- Community banner ---------- */
.aba-section--community{position: relative; isolation: isolate; padding: 7rem 0; color: #fff; text-align: center; overflow: hidden}
.aba-section--community::before{content: ""; position: absolute; inset: 0; background-image: var(--aba-band-bg); background-size: cover; background-position: center; z-index: -2}
.aba-section--community__overlay{position: absolute; inset: 0; background: linear-gradient(135deg, rgba(242,185,13,.78), rgba(217,165,11,.78)); z-index: -1}
.aba-section--community__inner{max-width: 720px; margin: 0 auto}
.aba-section__heading--on-image{color: #fff}
.aba-section__intro--on-image{color: rgba(255,255,255,.92)}

/* ---------- How It Works (5 steps, floating number badge) ---------- */
.aba-section--how-it-works{padding: 6rem 0 7rem}
.aba-steps{
	list-style: none; padding: 1.75rem 0 0; margin: 0;
	display: grid; grid-template-columns: repeat(5, 1fr); gap: 1rem;
}
.aba-steps__item{
	background: #fff;
	border-radius: var(--aba-radius);
	padding: 2.25rem 1.25rem 1.5rem;
	box-shadow: var(--aba-shadow-sm);
	border: 2px solid #bfccd9;
	text-align: center;
	position: relative;transition: all 0.3s;
}
.aba-steps__item:hover{border-color: var(--aba-primary-700);box-shadow:0 0 #0000, 0 0 #0000,0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);}
.aba-steps__num{
	position: absolute; top: -33px; left: 50%; transform: translateX(-50%);
	width: 48px; height: 48px; border-radius: 50%;border: 5px solid #ffffff;
	display: inline-flex; align-items: center; justify-content: center;
	background: var(--aba-primary); color: var(--aba-text);
	font-family: var(--aba-font-display); font-weight: 800; font-size: 18px;
	box-shadow:0 0 #0000 , 0 0 #0000,var(--tw-shadow);
}
.aba-steps__icon{
	display: inline-flex; width: 48px; height: 48px;
	align-items: center; justify-content: center;
	background: var(--aba-primary-50); color: var(--aba-primary-700);
	border-radius: 12px; margin: 0 auto .85rem;
}
.aba-steps__title{font-size: 1rem; margin: 0 0 .4rem; line-height: 1.25}
.aba-steps__text{color: var(--aba-text-muted); margin: 0; font-size: .85rem; line-height: 1.55}
@media (max-width: 1100px){.aba-steps{grid-template-columns: repeat(3, 1fr)} }
@media (max-width: 700px){.aba-steps{grid-template-columns: repeat(2, 1fr)} }
@media (max-width: 480px){.aba-steps{grid-template-columns: 1fr} }

/* ---------- Services Grid (homepage 2x2 image-bg cards) ---------- */
.aba-svc-grid{list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem}
.aba-svc{
	position: relative;
	border-radius: var(--aba-radius-lg);
	border-top: 4px solid var(--aba-primary);
	min-height: 220px;
	box-shadow: var(--aba-shadow-sm);overflow: hidden;
	transition: transform .15s ease, box-shadow .2s ease;
}
.aba-svc__bg{
	position: absolute; inset: 0;border-radius: var(--aba-radius-lg);
	background-image: var(--svc-bg);transform: scale(1.1);
	background-size: cover; background-position: center;
	z-index: 0;transition: all 0.2s;
}
.aba-svc:hover .aba-svc__bg{transform: scale(1.2);}
.aba-svc__overlay{position: absolute; inset: 0; background: linear-gradient(to bottom right,hsl(210 40% 92% / .9) , hsl(210 40% 92% / .85) , hsl(210 40% 92% / .75));overflow: hidden; z-index: 1;backdrop-filter: blur(2px)}
.aba-svc__inner{position: relative; z-index: 2; padding: 1.75rem}
.aba-svc__icon{
	display: inline-flex; align-items: center; justify-content: center;
	width: 48px; height: 48px; border-radius: 12px;
	background: var(--aba-primary-50); color: var(--aba-primary-700);
	margin-bottom: 2rem;
}
section.aba-section.aba-section--services-grid .aba-svc-grid{max-width: 1024px;margin: 0 auto;width: 100%;}
.aba-svc__title{font-size: 1.2rem; margin: 0 0 .5rem; color: var(--aba-text)}
.aba-svc__text{font-size: .95rem; color: var(--aba-text-muted); margin: 0; max-width: 32rem}
.aba-svc-aside{text-align: center; color: var(--aba-text-muted); margin: 1.5rem 0 1rem; font-size: .95rem}
.aba-svc-cta{text-align: center; margin: .5rem 0 0}
@media (max-width: 700px){.aba-svc-grid{grid-template-columns: 1fr} .aba-svc__icon{margin-bottom: 1rem}.aba-steps__item{margin-bottom:30px;} }

/* ---------- Service Area panel (homepage band) ---------- */
.aba-section--services-band{background:#ebeff2; padding: 5rem 0 6rem}
.aba-area-panel{
	background-color: #f1f5f8;
	background-image: linear-gradient(to bottom right, hsl(45 90% 50% / .05) , hsl(40 70% 45% / .05) );
	border: 1px solid var(--aba-primary-50);
	border-radius: var(--aba-radius-lg);
	padding: 2rem 2.5rem;
	max-width: 960px; margin: 0 auto;
	box-shadow: var(--aba-shadow-sm);
}
.aba-area-panel__head{display: flex; align-items: center; gap: .65rem; margin-bottom: .85rem}
.aba-area-panel__pin{display: inline-flex; color: var(--aba-primary)}
.aba-area-panel__title{margin: 0; font-size: 1.25rem}
.aba-area-panel__intro{margin: 0 0 1.25rem; color: var(--aba-text-muted); font-size: .95rem}
.aba-area-panel__cities{
	list-style: none; padding: 0; margin: 0;
	display: grid; grid-template-columns: repeat(3, 1fr); gap: .65rem 1.5rem;
}
.aba-area-panel__cities li{display: flex; align-items: center; gap: .5rem; color: var(--aba-text); font-size: .95rem}
.aba-area-panel__dot{width: 6px; height: 6px; border-radius: 50%; background: var(--aba-primary); flex: 0 0 auto}
.aba-area-panel__divider{height: 1px; background: var(--aba-border-soft); margin: 1.5rem 0}
.aba-area-panel__phone{
	display: inline-flex; align-items: center; gap: .55rem;
	color: #f2b90d; font-weight: 600; font-size: 1.05rem;
}
.aba-area-panel__phone:hover{color: var(--aba-text); text-decoration: none}
@media (max-width: 700px){.aba-area-panel__cities{grid-template-columns: 1fr 1fr} .aba-area-panel{padding: 1.5rem} }
@media (max-width: 420px){.aba-area-panel__cities{grid-template-columns: 1fr} }

/* ---------- Testimonials (smaller cards, soft bg, watermark quote) ---------- */
.aba-section--testimonials{background: #fff; padding: 5rem 0 6rem}
.aba-testimonials{
	list-style: none; padding: 0; margin: 0;
	display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem;
	max-width: 1080px; margin: 0 auto;
}
.aba-testimonial{
	position: relative;
	background: var(--aba-bg-soft);
	border: 1px solid var(--aba-border-soft);
	border-radius: var(--aba-radius);
	padding: 1.5rem 1.5rem 1.25rem;
	box-shadow: 0 1px 2px rgba(15,23,42,.04);
	text-align: left;
	overflow: hidden;transition: all 0.3s;
}
.aba-testimonial:hover{box-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);transform: translate(0, -15px);border-color:#f2b90d80}
.fill-accent{fill: #ebca47;color:#ebca47}
.aba-testimonial__mark{
	position: absolute; top: -18px; right: 8px;
	font-family: Georgia, serif;
	font-size: 7rem; line-height: 1;
	color: rgba(242, 185, 13, .25);
	pointer-events: none;
	font-weight: 700;
}
.aba-testimonial__stars{color: var(--aba-primary); letter-spacing: .12em; margin: 0 0 .65rem; font-size: 1rem}
.aba-testimonial__quote{margin: 0 0 1rem; color: var(--aba-text-muted); line-height: 1.55; font-size: .9rem; font-style: normal}
.aba-testimonial__quote p{margin: 0}
.aba-testimonial__cite{display: flex; flex-direction: column; gap: .15rem}
.aba-testimonial__author{font-weight: 700; color: var(--aba-text); font-size: .95rem}
.aba-testimonial__role{color: var(--aba-text-subtle); font-size: .85rem}
@media (max-width: 900px){.aba-testimonials{grid-template-columns: 1fr} }

/* ---------- CTA card (image left + content right with stacked buttons) ---------- */
.aba-section--cta{background: var(--aba-bg); padding: 4.5rem 0 5.5rem}
.aba-cta{
	display: grid; grid-template-columns: 1fr 1fr; gap: 0;
	border-radius: var(--aba-radius-lg); overflow: hidden;
	box-shadow: var(--aba-shadow-md); background: #fff;
	border: 1px solid var(--aba-border-soft);
	max-width: 1080px; margin: 0 auto;
}
.aba-cta__media{background: #fef3c7; min-height: 320px;position: relative}
.aba-cta__media::after{background-image: linear-gradient(to right, hsl(45 90% 50% / .3) , hsl(40 70% 45% / .3));content:'';display: block; left:0;top:0;position:absolute;z-index:3;width: 100%;height: 100%;}
.aba-cta__media img{width: 100%; height: 100%; object-fit: cover; display: block;position: relative;z-index: 1}
.aba-cta__copy{background-color:#f1f5f8;padding: 2.5rem 2.75rem; display: flex; flex-direction: column; justify-content: center; gap: 1rem}
.aba-cta__rule{display: block; width: 50px; height: 4px; border-radius: 4px; background: var(--aba-primary); margin-bottom: .25rem}
.aba-cta__heading{margin: 0; font-size: clamp(1.5rem, 1.4vw + 1rem, 2rem); line-height: 1.18}
.aba-cta__text{margin: 0; color: var(--aba-text-muted); font-size: .95rem}
.aba-cta__actions{display: flex; flex-direction: column; gap: .65rem; margin-top: .5rem}
.aba-btn--block{width: 100%}
.aba-cta__actions .aba-btn{padding: 1rem 1.4rem; font-size: 1rem}
@media (max-width: 900px){.aba-cta{grid-template-columns: 1fr} .aba-cta__copy{padding: 2rem} }

/* ---------- Simple CTA (Contact page bottom) ---------- */
.aba-section--cta-simple{
	background: linear-gradient(180deg, #efeadd 0%, #e8e3d4 100%);
	padding: 4rem 0;
}
.aba-cta-simple{text-align: center; display: flex; flex-direction: column; align-items: center; gap: 1.25rem}
.aba-cta-simple__heading{margin: 0; font-size: clamp(1.5rem, 1.4vw + 1rem, 2rem)}

/* ---------- Contact Info cards (Call Us / Schedule Consultation) ---------- */
.aba-section--contact-info{background: #dce5ee; padding: 5rem 0}
.aba-section--contact-info .aba-card-grid{max-width: 880px; margin: 0 auto}
.aba-section--contact-info .aba-card--info{
	background: #fff;
	border-radius: var(--aba-radius);
	padding: 1.75rem;
	box-shadow: var(--aba-shadow-sm);
	border: 1px solid var(--aba-border-soft);
	gap: .85rem;
}
.aba-section--contact-info .aba-card__icon{
	background: var(--aba-primary);
	color: var(--aba-text);
	border-radius: 12px;
	width: 64px; height: 64px;
}
.aba-section--contact-info .aba-card__title{font-size: 1.15rem}
.aba-section--contact-info .aba-card__link{font-size: 1.4rem; color: #f2b90d; font-weight: 700}
.aba-section--contact-info .aba-card__link:hover{opacity:.85;text-decoration:none;}
.aba-section--contact-info .aba-card__text{color: var(--aba-text-subtle); font-size: .9rem; margin: 0}

/* ---------- Contact 4-feature cards (Quick Response / Insurance Help / etc.) ---------- */
.aba-section--contact-features{background: var(--aba-bg); padding: 5rem 0}
.aba-section--contact-features .aba-card-grid{max-width: 1000px; margin: 0 auto}
.aba-section--contact-features .aba-card--mini{
	background: rgb(241 245 248);
	border: 1px solid rgb(191 204 217);
	border-radius: var(--aba-radius);
	padding: 1.5rem 1.25rem;
	display: flex; flex-direction: column; align-items: center; gap: .75rem;
	text-align: center;
}
.aba-section--contact-features .aba-card__icon{
	width: 44px; height: 44px; border-radius: 50%;
	background: var(--aba-primary-50); color: var(--aba-primary-700);
	margin: 0;
}
.aba-section--contact-features .aba-card__title{font-size: .95rem; margin: 0; color: var(--aba-text)}
.aba-section--contact-features .aba-card__text{font-size: .85rem; color: var(--aba-text-muted); margin: 0; line-height: 1.5}

/* ---------- Panels ---------- */
.aba-panel{background: #fff; border-radius: var(--aba-radius-lg); padding: 2rem; box-shadow: var(--aba-shadow-sm); border: 1px solid var(--aba-border-soft)}
.aba-panel--soft{background: var(--aba-bg-soft); border-color: transparent}
.aba-panel--card{background: #fff; box-shadow: var(--aba-shadow-md)}
.aba-panel--centered{text-align: center}
.aba-panel--narrow{max-width: 720px; margin: 0 auto}
.aba-panel__title{margin: 0 0 .25rem}
.aba-panel__sub{color: var(--aba-text-subtle); margin: 0 0 1rem}

.aba-pill-list{list-style: none; padding: 0; margin: 1rem 0 1.5rem; display: flex; flex-wrap: wrap; gap: .5rem; justify-content: center}
.aba-pill{background: #fff; border: 1px solid var(--aba-border); padding: .45rem 1rem; border-radius: 999px; font-size: .9rem}

/* ---------- ABA Information (Resources page) ---------- */
.aba-section--aba-information{background: var(--aba-bg); padding: 4.5rem 0 4rem}
.aba-info__heading{display: inline-flex; align-items: center; gap: .65rem}
.aba-info__icon{display: inline-flex; color: var(--aba-primary)}
.aba-info-grid{list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; max-width: 980px; margin: 0 auto}
.aba-info-card{
	background:rgb(241 245 248);
	border: 1px solid rgb(191 204 217);
	border-radius: var(--aba-radius);
	padding: 1.5rem 1.5rem 1.25rem;
	box-shadow: 0 1px 2px rgba(15,23,42,.03);
}
.aba-info-card__title{margin: 0 0 .5rem; font-size: 1.05rem}
.aba-info-card__text{color: var(--aba-text-muted); font-size: .9rem; line-height: 1.55}
.aba-info-card__text p:last-child{margin-bottom: 0}
@media (max-width: 700px){.aba-info-grid{grid-template-columns: 1fr} }

/* ---------- FAQs (chevron toggle, single-open via JS) ---------- */
.aba-section--faqs{background: #dce5ee; padding: 4rem 0 6rem}
.aba-faqs__heading{display: inline-flex; align-items: center; gap: .65rem}
.aba-faqs__icon{display: inline-flex; color: var(--aba-primary)}
.aba-faqs{display: grid; gap: .85rem; max-width: 880px; margin: 0 auto}
.aba-faq{
	background: #f1f5f8;
	border: 1px solid #bfccd9;
	border-radius: var(--aba-radius);
	box-shadow: 0 1px 2px rgba(15,23,42,.03);
	overflow: hidden;
}
.aba-faq__question{
	display: flex; align-items: center; justify-content: space-between; gap: 1rem;
	font-weight: 700; font-family: var(--aba-font-display);
	cursor: pointer; list-style: none;
	color: var(--aba-text); font-size: 1rem;
	padding: 1rem 1.5rem;
}
.aba-faq__question::-webkit-details-marker{display: none}
.aba-faq__question:hover{color:#f2b90d}
.aba-faq__chevron{display: inline-flex; color: var(--aba-text-muted); transition: transform .2s ease; flex: 0 0 auto}
.aba-faq[open] .aba-faq__chevron{transform: rotate(180deg)}
.aba-faq__answer{
	padding: 0 1.5rem 1.25rem;
	color: var(--aba-text-muted); font-size: .95rem; line-height: 1.6;
}
.aba-faq__answer p:last-child{margin-bottom: 0}

/* ---------- Open Positions (2 cards w/ icon + title + summary + orange button) ---------- */
.aba-section--positions{background: var(--aba-bg); padding: 5rem 0}
.aba-positions{list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 1.75rem; max-width: 960px; margin: 0 auto}
.aba-position{
	background: #f1f5f8;
	border: 1px solid var(--aba-border-soft);
	border-radius: var(--aba-radius);
	padding: 1.75rem 1.75rem 1.75rem;
	box-shadow: var(--aba-shadow-sm);
	display: flex; flex-direction: column; gap: .85rem;
}
.aba-position__icon{
	display: inline-flex; align-items: center; justify-content: center;
	width: 48px; height: 48px; border-radius: 12px;
	background: var(--aba-primary-50); color: var(--aba-primary-700);
}
.aba-position__title{margin: 0; font-size: 1.2rem; line-height: 1.25}
.aba-position__summary{margin: 0; color: var(--aba-text-muted); font-size: .95rem; flex: 1 1 auto}
.aba-position .aba-btn{margin-top: .5rem}
@media (max-width: 700px){.aba-positions{grid-template-columns: 1fr} }

/* ---------- Why Work With Us (4 simple icon-only cards) ---------- */
.aba-section--why-work{background:#e2ebf3; padding: 5rem 0 6rem}
.aba-why-grid{list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.25rem; max-width: 1080px; margin: 0 auto}
.aba-why{
	background:rgb(241 245 248);
	border: 1px solid rgb(191 204 217);
	border-radius: var(--aba-radius);
	padding: 1.5rem 1.25rem;
	text-align: center;
	display: flex; flex-direction: column; align-items: center; gap: .85rem;
}
.aba-why__icon{
	display: inline-flex; align-items: center; justify-content: center;
	width: 44px; height: 44px; border-radius: 50%;
	background: var(--aba-primary-50); color: var(--aba-primary-700);
}
.aba-why__title{margin: 0; font-size: .9rem; color: var(--aba-text); line-height: 1.35; font-weight: 700}
@media (max-width: 900px){.aba-why-grid{grid-template-columns: repeat(2, 1fr)} }
@media (max-width: 480px){.aba-why-grid{grid-template-columns: 1fr} }

/* ---------- Services Detail (Services page; 2-col cards image-top + corner icon) ---------- */
.aba-section--services-detail{background:rgb(220 229 238); padding: 4rem 0 5rem}
.aba-svc-detail-grid{list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; max-width: 1080px; margin: 0 auto}
.aba-svc-detail{
	background: #fff;
	border: 1px solid var(--aba-border-soft);
	border-radius: var(--aba-radius);
	overflow: hidden;
	box-shadow:0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);
	transition: transform .15s ease, box-shadow .15s ease;
}
.aba-svc-detail:hover{transform: translateY(-3px); box-shadow: var(--aba-shadow-md)}
.aba-svc-detail__media{position: relative; aspect-ratio: 21/10; overflow: hidden}
.aba-svc-detail__media img{width: 100%; height: 100%; object-fit: cover; display: block}
.page-template-page-services .aba-svc-detail__media::after{background-image: linear-gradient(to top, hsl(210 40% 92%) , hsl(210 40% 92% / .5) , transparent);content:'';display:block;height:100%;top:0;left:0;position:absolute;width:100%;}
.aba-svc-detail__icon{
	position: absolute; left: 1rem; bottom: 18px;
	width: 48px; height: 48px; border-radius: 50%;
	display: inline-flex; align-items: center; justify-content: center;
	background: var(--aba-primary); color: var(--aba-text);
	box-shadow: 0 4px 12px rgba(15,23,42,.18);z-index:3
}
.page-template-page-services a.aba-btn.aba-btn--primary.aba-btn--md {
    background: #fff;
}
.aba-svc-detail__body{padding: 1.75rem 1.5rem 1.5rem;background-color: #e2ebf3;height:100%;}
.aba-svc-detail__title{margin: 0 0 .5rem; font-size: 1.1rem}
.aba-svc-detail__text{margin: 0; color: var(--aba-text-muted); font-size: .9rem; line-height: 1.55}
@media (max-width: 700px){.aba-svc-detail-grid{grid-template-columns: 1fr} }

/* ---------- Insurance Management (centered card with shield + bullet pills) ---------- */
.aba-section--insurance-management{background: rgb(226 235 243); padding: 4rem 0 5rem}
.aba-im-panel{
	background: rgb(241 245 248);
	border: 1px solid rgb(191 204 217);
	border-radius: var(--aba-radius-lg);
	padding: 3rem 2.5rem;
	max-width: 720px; margin: 0 auto;
	text-align: center;
	box-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);
}
.aba-im-panel__icon{
	display: inline-flex; align-items: center; justify-content: center;
	width: 64px; height: 64px; border-radius: 50%;
	background: var(--aba-primary-50); color: var(--aba-primary-700);
	margin-bottom: 1.25rem;
}
.aba-im-panel__heading{margin: 0 0 .5rem}
.aba-im-panel__intro{margin: 0 0 1.5rem; color: var(--aba-text-muted); font-size: 1rem}
.aba-im-pills{
	list-style: none; padding: 0; margin: 0 0 1.5rem;
	display: flex; flex-wrap: wrap; justify-content: center; gap: .65rem;
}
.aba-im-pill{
	display: inline-flex; align-items: center; gap: .5rem;
	background: #e6ecf1; border: 1px solid var(--aba-border-soft);
	border-radius: 12px; padding: .65rem 1rem;
	font-size: .9rem; color: var(--aba-text); font-weight: 600;
}
.aba-im-pill__icon{display: inline-flex; color: var(--aba-primary-700)}
.aba-im-panel__cta{margin: .5rem auto 0}
@media(max-width: 540px){
	.aba-im-pill{width:100%;}
}
/* ---------- Footer ---------- */
.aba-footer{background: #d7e1e9; border-top: 1px solid #bfccd9; padding: 3.5rem 0 1.75rem; color: var(--aba-text-muted)}
.aba-footer__grid{display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 2.5rem; align-items: start}
.aba-footer__logo{max-height: 56px; margin-bottom: 1rem}
.aba-footer__about{font-size: .9rem; max-width: 24rem; line-height: 1.6}
.aba-footer__heading{font-size: 1rem; color: var(--aba-text); margin-bottom: 1rem; font-weight: 700; font-family: var(--aba-font-display)}
.aba-footer__menu, .aba-footer__legal{list-style: none; padding: 0; margin: 0; display: grid; gap: .55rem}
.aba-footer__menu a, .aba-footer__legal a{color: var(--aba-text-muted); font-size: .95rem; transition: color .15s ease}
.aba-footer__menu a:hover, .aba-footer__legal a:hover{color: var(--aba-primary-700); text-decoration: none}
.aba-footer__contact .aba-footer__phone{padding: .75rem 1.25rem; font-size: .95rem; max-width: 220px}
.aba-footer__addr{margin: 1rem 0 0; font-size: .9rem; display: inline-flex; align-items: flex-start; gap: .5rem; color: var(--aba-text-muted)}
.aba-footer__pin{color: var(--aba-primary); flex: 0 0 auto; margin-top: .15rem}
.aba-footer__bottom{margin-top: 2.5rem; padding-top: 1.5rem; border-top: 1px solid rgba(27,34,50,.10); display: flex; justify-content: center; flex-wrap: wrap; gap: 0.4rem; font-size: .85rem; color: var(--aba-text-subtle); align-items: center}
.aba-footer__bottom small{color: var(--aba-text-subtle)}
.aba-footer__legal{display: flex; gap: 1rem}
.aba-footer__legal a{color: var(--aba-text-subtle); font-size: 11px}
@media (max-width: 800px){.aba-footer__grid{grid-template-columns: 1fr; gap: 1.5rem} }

/* ---------- Parent Partnership (heart header + 3 simple cards) ---------- */
.aba-pp__head{display: flex; flex-direction: column; align-items: center}
.aba-pp__crown{
	width: 48px; height: 48px; border-radius: 50%;
	display: inline-flex; align-items: center; justify-content: center;
	background: var(--aba-primary-50); color: var(--aba-primary-700);
	margin-bottom: 1rem;
}
.aba-pp-grid{
	list-style: none; padding: 0; margin: 0;
	display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1.5rem;
	max-width: 880px; margin: 0 auto;
}
.aba-pp{
	background: var(--aba-bg-soft);
	border: 2px solid #bfccd9;
	border-radius: var(--aba-radius);
	padding: 1.5rem 1.25rem;
	text-align: center;
	display: flex; flex-direction: column; align-items: center; gap: .85rem;
	transition: transform .15s ease, box-shadow .15s ease;
}
.aba-pp:hover{transform: translateY(-2px); box-shadow: var(--aba-shadow-sm);border-color: #ebca47}
.aba-pp__icon{
	width: 56px; height: 56px; border-radius: 50%;
	display: inline-flex; align-items: center; justify-content: center;
	background: #f2b90d1a; color: var(--aba-primary-700);
}
.aba-pp__title{margin: 0; font-size: .95rem; color: var(--aba-text); line-height: 1.35; font-weight: 700}
@media (max-width: 700px){.aba-pp-grid{grid-template-columns: 1fr} }

/* ---------- Misc ---------- */
.aba-empty{text-align: center; padding: 2rem 0; color: var(--aba-text-subtle)}
.aba-form-placeholder{padding: 1rem; background: var(--aba-bg-soft); border-radius: var(--aba-radius-sm); color: var(--aba-text-muted); font-size: .9rem; text-align: center}

/* Gravity Forms baseline */
.gform_wrapper.gravity-theme .gfield_label{font-weight: 600; color: var(--aba-text)}
.gform_wrapper.gravity-theme input,
.gform_wrapper.gravity-theme select,
.gform_wrapper.gravity-theme textarea{
	width: 100%; padding: .75rem 1rem; border: 1px solid var(--aba-border);
	border-radius: var(--aba-radius-sm); font: inherit; background: #fff;
}
.gform_wrapper.gravity-theme input:focus,
.gform_wrapper.gravity-theme textarea:focus,
.gform_wrapper.gravity-theme select:focus{
	outline: 0; border-color: var(--aba-primary); box-shadow: 0 0 0 3px rgba(242,185,13,.2);
}
.aba-gform-submit{margin-top: .5rem}

/* 404 */
.aba-404{text-align: center; padding: 4rem 0}
.aba-404__actions{display: flex; gap: .75rem; justify-content: center; flex-wrap: wrap; margin-top: 1.5rem}
@media(max-width: 991px){
	.aba-section--family-focused__media{order:1;}.aba-section--family-focused__copy{order: 2;}
}
@media(max-width: 900px){
	.aba-header__inner{justify-content:space-between}
}