/* == end HOME == */

/* Paint Philly homepage fixes (2026-10-04). Front page only; loaded by paintphilly-home-fixes.php. */
body.home.page-id-26 {
	--h-navy: #11284b;
	--h-sky: #6fb0c7;
	--h-gold: #e9ae41;
	--h-body: #455366;
	--h-tint: #f4f7fa;
	--h-line: #c7d7e1;
}

/* Hero H1 scrim (desktop): left-to-right navy gradient behind the headline */
@media (min-width:769px) {
	body.home.page-id-26 .fl-node-5ff897b54216e > .fl-row-content-wrap::after {
		content: "";
		position: absolute;
		inset: 0;
		pointer-events: none;
		z-index: 0;
		background: linear-gradient(90deg, rgba(12, 29, 54, .72) 0%, rgba(12, 29, 54, .5) 38%, rgba(12, 29, 54, 0) 62%);
	}
	
	body.home.page-id-26 .fl-node-5ff897b54216e .fl-row-content {
		position: relative;
		z-index: 1;
	}
	
	body.home.page-id-26 .fl-node-5ff897b54216e h1 {
		text-shadow: 0 2px 14px rgba(8, 20, 40, .55);
	}
}

/* One button system: primary = sky fill, secondary = ghost. No icons or emoji. */
body.home.page-id-26 .fl-builder-content a.fl-button .fl-button-icon {
	display: none !important;
}

body.home.page-id-26 .fl-builder-content a.fl-button {
	display: inline-block;
	background: var(--h-sky) !important;
	color: var(--h-navy) !important;
	border: 2px solid var(--h-sky) !important;
	border-radius: 2px !important;
	box-shadow: none !important;
	padding: 14px 30px !important;
	font: 700 15px/1.2 system-ui, -apple-system, "Segoe UI", Arial, sans-serif !important;
	letter-spacing: .06em;
	text-transform: uppercase;
	text-decoration: none !important;
}

body.home.page-id-26 .fl-builder-content a.fl-button * {
	color: inherit !important;
	font: inherit !important;
	text-transform: inherit !important;
	letter-spacing: inherit !important;
}

body.home.page-id-26 .fl-builder-content a.fl-button:hover {
	background: #8cc3d6 !important;
	border-color: #8cc3d6 !important;
}

/* ghost secondary: "See more reviews" (on white). The hero button stays the primary sky fill. */
body.home.page-id-26 .pp-home-ghost a.fl-button {
	background: transparent !important;
	color: var(--h-navy) !important;
	border-color: var(--h-navy) !important;
}

body.home.page-id-26 .pp-home-ghost a.fl-button:hover {
	background: var(--h-navy) !important;
	color: #fff !important;
}

/* Mission heading = quiet kicker; credentials row replaces the big veteran graphic */
body.home.page-id-26 .fl-node-5ffad9d43fe2f > .fl-row-content-wrap {
	padding: 36px 0 30px !important;
	background: #fff !important;
	text-align: center;
}

body.home.page-id-26 .fl-node-5ffad9d43fe2f h2.fl-heading, body.home.page-id-26 .fl-node-5ffad9d43fe2f h2 .fl-heading-text {
	font: 700 13px/1.4 system-ui, -apple-system, "Segoe UI", Arial, sans-serif !important;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: #2d6f8c !important;
	margin: 0 0 6px !important;
	text-align: center !important;
}

body.home.page-id-26 .fl-node-5ffad9d43fe2f h3.fl-heading, body.home.page-id-26 .fl-node-5ffad9d43fe2f h3 .fl-heading-text {
	font: 400 22px/1.4 Georgia, "Times New Roman", serif !important;
	color: var(--h-navy) !important;
	text-transform: none !important;
	margin: 0 !important;
	text-align: center !important;
}

.pp-home-creds {
	list-style: none;
	margin: 0 auto 24px !important;
	padding: 0 !important;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px 14px;
}

.pp-home-creds li {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 !important;
	padding: 9px 18px;
	border: 1px solid #c7d7e1;
	border-radius: 999px;
	background: #f4f7fa;
	color: #11284b;
	font: 600 15px/1.2 system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
}

.pp-home-creds__vet {
	width: 30px !important;
	height: 30px !important;
	object-fit: contain;
	display: block;
}

.pp-home-creds__stars {
	color: #e9ae41;
	letter-spacing: 2px;
	font-size: 15px;
}

.pp-home-creds__check {
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #6fb0c7;
	position: relative;
	flex: none;
}

.pp-home-creds__check::after {
	content: "";
	position: absolute;
	left: 6px;
	top: 3px;
	width: 5px;
	height: 9px;
	border: solid #11284b;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

/* oversized veteran graphic and dated 2022/2023 badges out of prominence */
body.home.page-id-26 .fl-col-group:has(img[alt="Veteran Owned Business"]) {
	display: none !important;
}

body.home.page-id-26 .fl-node-nsq1kf8he39u {
	display: none !important;
}

body.home.page-id-26 .fl-col:has(img[alt*="White Final"]) {
	display: none !important;
}

body.home.page-id-26 .fl-node-5ffc973da4d27 > .fl-row-content-wrap {
	padding: 28px 0 !important;
	background: #fff !important;
	border-top: 1px solid #c7d7e1;
}

body.home.page-id-26 .fl-node-5ffc973da4d27 .fl-photo-img {
	max-height: 64px;
	width: auto !important;
	margin: 0 auto;
	object-fit: contain;
}

body.home.page-id-26 .fl-node-5ffc973da4d27 .fl-col-group {
	display: flex !important;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 18px 34px;
}

body.home.page-id-26 .fl-node-5ffc973da4d27 .fl-col {
	width: auto !important;
	float: none !important;
	flex: 0 0 auto;
	min-width: 0 !important;
}

/* Legacy text bands restyled into the template look */
body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027) > .fl-row-content-wrap {
	padding: 72px 0 !important;
	background: #fff !important;
}

body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027) > .fl-row-content-wrap > .fl-row-content {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
	column-gap: 56px;
	align-items: start;
	max-width: 1140px !important;
	width: min(calc(100% - 48px), 1140px) !important;
}

body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027) > .fl-row-content-wrap > .fl-row-content > .fl-col-group {
	grid-column: 1;
}

body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027) .pp-home-media {
	grid-column: 2;
	grid-row: 1/span 4;
	margin: 0;
	align-self: stretch;
}

body.home.page-id-26 .pp-home-media img {
	width: 100%;
	height: 100%;
	min-height: 360px;
	max-height: 560px;
	object-fit: cover;
	border-radius: 3px;
	display: block;
	box-shadow: 0 12px 30px rgba(17, 40, 75, .14);
}

body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027,.fl-node-5ffb11e5753f9,.fl-node-6009a44754f6e) h2.fl-heading, body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027,.fl-node-5ffb11e5753f9,.fl-node-6009a44754f6e) h2 .fl-heading-text {
	font: 700 34px/1.18 Georgia, "Times New Roman", serif !important;
	text-align: left !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027) h2 .fl-heading-text {
	color: var(--h-navy) !important;
}

body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027) h2.fl-heading {
	width: fit-content;
	max-width: 100%;
}

body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027) h2.fl-heading::after {
	content: "";
	display: block;
	width: var(--pp-rule-w, 100%);
	height: 2px;
	margin: 16px 0 0;
	background: var(--h-gold);
}

body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027) .fl-rich-text p, body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027) .fl-rich-text span {
	font: 400 17px/1.7 system-ui, -apple-system, "Segoe UI", Arial, sans-serif !important;
	color: var(--h-body) !important;
}

body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027) .fl-rich-text p {
	margin: 0 0 16px !important;
}

body.home.page-id-26 .fl-node-5ffc93e378027 h3.fl-heading, body.home.page-id-26 .fl-node-5ffc93e378027 h3 .fl-heading-text {
	font: 700 24px/1.3 Georgia, "Times New Roman", serif !important;
	color: var(--h-navy) !important;
	text-align: left !important;
	margin-top: 8px;
}

body.home.page-id-26 .fl-node-5ffb11e5753f9 > .fl-row-content-wrap {
	padding-top: 72px !important;
	padding-bottom: 72px !important;
}

/* Test Don't Guess: never an empty navy box; real photo poster behind the video */
body.home.page-id-26 .fl-node-6009a44754f6e > .fl-row-content-wrap {
	padding: 72px 0 36px !important;
}

body.home.page-id-26 .fl-node-6009a44754f6e .fl-embed-video {
	position: relative;
	aspect-ratio: 16/10;
	border-radius: 3px;
	overflow: hidden;
	background: #0c1d36 var(--pp-home-poster) center/cover no-repeat;
	box-shadow: 0 12px 30px rgba(0, 0, 0, .28);
}

body.home.page-id-26 .fl-node-6009a44754f6e .fl-embed-video iframe {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	border: 0;
	background: transparent;
}

body.home.page-id-26 .fl-node-6009a44754f6e .fl-rich-text :is(p,span) {
	font: 400 17px/1.7 system-ui, -apple-system, "Segoe UI", Arial, sans-serif !important;
	color: #e7eef5 !important;
}

body.home.page-id-26 .fl-node-5ffc91cfb3389 > .fl-row-content-wrap {
	padding: 0 0 64px !important;
}

body.home.page-id-26 .fl-node-5ffc91cfb3389 .fl-rich-text :is(p,span) {
	font: 400 17px/1.7 system-ui, -apple-system, "Segoe UI", Arial, sans-serif !important;
	color: #e7eef5 !important;
	text-align: center;
}

/* Final CTA band: the single closing primary button */
body.home.page-id-26 .fl-node-6111941d0246e > .fl-row-content-wrap {
	padding: 40px 0 !important;
}

@media (max-width:900px) {
	body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027) > .fl-row-content-wrap > .fl-row-content {
		display: block;
	}
	
	body.home.page-id-26 .pp-home-media {
		margin: 28px 0 0 !important;
	}
	
	body.home.page-id-26 .pp-home-media img {
		min-height: 0;
		height: auto;
		aspect-ratio: 3/2;
	}
}

/* Mobile: calendar card on the first screen (iPhone 13, 390x664) */
@media (max-width:768px) {
	body.home.page-id-26 .fl-node-5ff897b54216e > .fl-row-content-wrap {
		padding-top: 150px !important;
		background-size: auto 150px !important;
		min-height: 0 !important;
	}
	
	body.home.page-id-26 .fl-node-5ff897b54216e .fl-row-content, body.home.page-id-26 .fl-node-5ff897b54216e .fl-col-content {
		padding-top: 0 !important;
	}
	
	body.home.page-id-26 .fl-node-5ff897b54216e h1, body.home.page-id-26 .fl-node-5ff897b54216e h1 .fl-heading-text {
		font-size: 25px !important;
		line-height: 1.15 !important;
		margin: 12px 0 10px !important;
	}
	
	body.home.page-id-26 .fl-node-5ff897b54216e .fl-node-h946r5edqcoa, body.home.page-id-26 .fl-node-5ff897b54216e .fl-node-5ff95dd2763f8 {
		display: none !important;
	}
	
	body.home.page-id-26 .fl-node-5ff897b54216e .fl-html {
		display: flex;
		flex-direction: column;
	}
	
	body.home.page-id-26 .fl-node-5ff897b54216e .pp-mobile-proof {
		order: 2;
		margin-top: 14px;
	}
	
	body.home.page-id-26 .fl-node-5ff897b54216e .pp-hero-acuity {
		order: 1;
		margin-top: 0 !important;
	}
	
	body.home.page-id-26 .fl-node-5ffad9d43fe2f h3 .fl-heading-text {
		font-size: 18px !important;
	}
	
	.pp-home-creds li {
		font-size: 14px;
		padding: 8px 14px;
	}
	
	body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027,.fl-node-6009a44754f6e,.fl-node-5ffb11e5753f9) > .fl-row-content-wrap {
		padding-top: 44px !important;
		padding-bottom: 44px !important;
	}
	
	body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027,.fl-node-5ffb11e5753f9,.fl-node-6009a44754f6e) h2 .fl-heading-text {
		font-size: 27px !important;
	}
}

body.home.page-id-26 .fl-node-5ffad9d43fe2f > .fl-row-content-wrap > .fl-row-content {
	max-width: 1040px !important;
	width: min(calc(100% - 48px), 1040px) !important;
}

body.home.page-id-26 .pp-home-creds li, body.home.page-id-26 .pp-home-creds li span {
	color: #11284b !important;
}

body.home.page-id-26 .pp-home-creds li .pp-home-creds__stars {
	color: #e9ae41 !important;
}

@media (max-width:768px) {
	body.home.page-id-26 .fl-node-5ff897b54216e > .fl-row-content-wrap {
		padding-top: 200px !important;
		background-size: auto 200px !important;
		background-position: center top !important;
	}
}

body.home.page-id-26 .fl-node-5ffad9d43fe2f > .fl-row-content-wrap > .fl-row-content {
	margin-left: auto !important;
	margin-right: auto !important;
}

/* video testimonial play affordance: white disc gets a real play triangle */
body.home.page-id-26 .pp-video-thumb i::after {
	border-left-color: #11284b !important;
}

/* Test Don't Guess: poster fills the frame */
body.home.page-id-26 .fl-node-6009a5cac7f81.fl-module {
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.home.page-id-26 .fl-node-6009a5cac7f81 .fl-embed-video {
	aspect-ratio: 16/10;
}

@media (max-width:768px) {
	body.home.page-id-26 .fl-node-5ff95da93d42f {
		margin: 0 !important;
	}
	
	body.home.page-id-26 .fl-node-5ff897b54216e h1, body.home.page-id-26 .fl-node-5ff897b54216e h1 .fl-heading-text {
		margin: 0 !important;
	}
	
	body.home.page-id-26 .fl-node-5ff897b54216e h1 {
		padding: 14px 0 12px !important;
	}
	
	body.home.page-id-26 .fl-node-5ff897b54216e .pp-hero-acuity-module, body.home.page-id-26 .fl-node-5ff897b54216e .pp-hero-acuity-module .fl-module-content {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}
	
	body.home.page-id-26 .pp-hero-acuity__header {
		padding: 10px 16px !important;
	}
	
	body.home.page-id-26 .pp-hero-acuity__header strong {
		font-size: 19px !important;
		line-height: 1.15 !important;
	}
	
	body.home.page-id-26 .pp-hero-acuity__header span:not(.pp-booking-step) {
		font-size: 13px !important;
	}
}

body.home.page-id-26 .fl-node-5ffad9d43fe2f > .fl-row-content-wrap > .fl-row-content > :is(.fl-col-group,.pp-home-creds) {
	width: 100% !important;
	max-width: none !important;
}

body.home.page-id-26 .fl-node-5ffad9d43fe2f .fl-col {
	width: 100% !important;
	max-width: none !important;
	float: none;
}

@media (min-width:901px) {
	body.home.page-id-26 :is(.fl-node-5ffc83ab74dcc,.fl-node-5ffc93e378027) .pp-home-media {
		align-self: center;
	}
	
	/* 10-10: was start -- photo floated alone top-right */
	body.home.page-id-26 .pp-home-media img {
		height: auto;
		aspect-ratio: 4/3;
		min-height: 0;
		max-height: none;
	}
}

@media (max-width:900px) {
	body.home.page-id-26 .pp-home-media {
		margin: 0 0 28px !important;
	}
}

body.home.page-id-26 .fl-node-5ffad9d43fe2f > .fl-row-content-wrap > .fl-row-content {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.home.page-id-26 .fl-node-5ffad9d43fe2f :is(.fl-col-group,.fl-col,.fl-col-content,.fl-module,.fl-module-content) {
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.home.page-id-26 .fl-node-5ffad9d43fe2f :is(h2,h3,.fl-heading-text) {
	width: 100% !important;
	max-width: none !important;
	display: block;
	text-align: center !important;
}
