/* PRICING PAGE — container, breadcrumb, section rhythm, hero CTAs */

body.page-template-page-pricing,
body.page-template-page-pricing:has(.pricing-page) {
	padding-top: var(--nav-h, 66px) !important;
}

html[data-theme="light"] body.page-template-page-pricing,
html[data-theme="light"] body.page-template-page-pricing:has(.pricing-page) {
	--ds-bg: #f5f3ee;
	--ds-bg-2: #ffffff;
	--ds-bg-3: #fbfaf6;
	--ds-ink: #0f0f12;
	--ds-ink-2: rgba(15, 15, 18, 0.7);
	--ds-ink-3: rgba(15, 15, 18, 0.48);
	--ds-line: rgba(17, 17, 20, 0.1);
	--ds-line-2: rgba(17, 17, 20, 0.18);
	--ds-btn-ghost-hover: #f5ede4;
	--ds-btn-primary-bg: #0f0f12;
	--ds-btn-primary-text: #f5f3ee;
	background: var(--ds-bg) !important;
	color: var(--ds-ink) !important;
}

html[data-theme="dark"] body.page-template-page-pricing,
html[data-theme="dark"] body.page-template-page-pricing:has(.pricing-page) {
	--ds-bg: #0a0a0b;
	--ds-bg-2: #141416;
	--ds-bg-3: #1a1a1d;
	--ds-ink: #f5f5f7;
	--ds-ink-2: rgba(245, 245, 247, 0.72);
	--ds-ink-3: rgba(245, 245, 247, 0.48);
	--ds-line: rgba(255, 255, 255, 0.1);
	--ds-line-2: rgba(255, 255, 255, 0.16);
	--ds-btn-ghost-hover: rgba(255, 255, 255, 0.08);
	--ds-btn-primary-bg: #f5f5f7;
	--ds-btn-primary-text: #0a0a0b;
	background: var(--ds-bg) !important;
	color: var(--ds-ink) !important;
}

.pricing-page {
	background: var(--ds-bg);
	color: var(--ds-ink);
	font-family: var(--ds-font-sans);
	font-size: 16px;
	line-height: 1.55;
	-webkit-font-smoothing: antialiased;
}

body:has(.pricing-page) {
	background: var(--ds-bg);
}

.pricing-page em {
	font-family: var(--ds-font-serif);
	font-style: normal;
	font-weight: 400;
}

.pricing-page .container {
	width: 100%;
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 40px;
	padding-right: 40px;
	box-sizing: border-box;
}

/* Section rhythm */
.pricing-section {
	padding-top: 60px;
	padding-bottom: 60px;
}

.pricing-section--crumb {
	padding-top: 50px;
	padding-bottom: 50px;
}

.pricing-section--hero {
	padding-top: 0;
	padding-bottom: 60px;
}

.pricing-section--cta {
	padding-top: 60px;
	padding-bottom: 120px;
}

/* Legacy pr-* blocks: width lives on .container */
.pricing-page .pr-tiers,
.pricing-page .pr-compare,
.pricing-page .pr-faq,
.pricing-page .pr-ent-cta,
.pricing-page .pr-includes,
.pricing-page .pr-custom-agent {
	max-width: none;
	margin-left: 0;
	margin-right: 0;
	margin-top: 0;
	margin-bottom: 0;
	padding-left: 0;
	padding-right: 0;
}

.pricing-page .pr-compare {
	padding-top: 60px;
    padding-bottom: 60px;
}

.pricing-page .pr-faq {
	padding-top: 60px;
    padding-bottom: 60px;
}

.pricing-page .pr-ent-cta {
	padding-top: 60px;
    padding-bottom: 120px;
}

.pricing-page .pr-tiers {
	padding-top: 60px;
    padding-bottom: 60px;
}

/* Breadcrumb */
.pricing-crumb,
.pricing-page .abm-crumb {
	margin-bottom: 0;
	color: var(--ds-ink-3);
}

.pricing-page .abm-crumb a {
	color: var(--ds-ink-3);
	text-decoration: none;
}

.pricing-page .abm-crumb a:hover,
.pricing-page .abm-crumb__current {
	color: var(--ds-ink);
}

/* Hero */
.pricing-hero {
	text-align: left;
}

.pricing-hero__header {
	max-width: 80%;
}

.pricing-hero__title {
	font-family: var(--ds-font-serif);
	font-size: clamp(56px, 7.2vw, 120px);
	line-height: 0.95;
	letter-spacing: -0.025em;
	margin: 0 0 28px;
	font-weight: 400;
	text-wrap: balance;
}

.pricing-hero__subtitle {
	font-size: clamp(17px, 1.4vw, 20px);
	line-height: 1.56;
	color: var(--ds-ink-2);
	max-width: 52ch;
	margin: 0 0 28px;
}

/* Hero CTAs — .amy-ev-hero-ctas + arrow hover */
.pricing-hero-ctas {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}

.pricing-hero-ctas .btn {
	padding: 14px 22px;
	border-radius: 999px;
	font-family: var(--ds-font-sans);
	font-weight: 600;
	font-size: 14px;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	border: 1px solid var(--ds-line-2);
	text-decoration: none;
	color: var(--ds-ink);
	background: transparent;
	transition: transform 0.22s ease, border-color 0.22s ease, background 0.22s ease, color 0.22s ease;
}

.pricing-hero-ctas .btn:hover {
	transform: translateY(-1px);
	background: var(--ds-btn-ghost-hover);
	color: var(--ds-ink);
	border-color: var(--ds-line-2);
}

.pricing-hero-ctas .btn.primary {
	background: var(--ds-btn-primary-bg);
	color: var(--ds-btn-primary-text);
	border-color: var(--ds-btn-primary-bg);
}

.pricing-hero-ctas .btn.primary:hover {
	transform: translateY(-1px);
	background: var(--ds-btn-primary-bg);
	color: var(--ds-btn-primary-text);
	border-color: var(--ds-btn-primary-bg);
}

.pricing-hero-ctas .btn .arr {
	width: 22px;
	height: 22px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	line-height: 1;
	flex-shrink: 0;
}

.pricing-hero-ctas .btn.primary .arr {
	background: rgba(255, 255, 255, 0.15);
	color: var(--ds-btn-primary-text);
}

.pricing-hero-ctas .btn:not(.primary) .arr {
	color: var(--ds-ink);
	background: var(--ds-line);
}

.pricing-hero-ctas .btn:not(.primary):hover .arr {
	color: var(--ds-ink);
	background: var(--ds-line);
}

html[data-theme="light"] .pricing-hero-ctas .btn.primary .arr {
	color: #fff;
}

/* Tier card CTAs — arrow + hover matches hero banner buttons */
.pricing-page .pr-tier-cta .pr-cta-btn {
	gap: 10px;
	transition: transform 0.22s ease, border-color 0.22s ease, background 0.22s ease, color 0.22s ease;
}

.pricing-page .pr-tier-cta .pr-cta-btn:hover {
	transform: translateY(-1px);
}

.pricing-page .pr-tier-cta .pr-cta-btn .arr {
	width: 22px;
	height: 22px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	line-height: 1;
	flex-shrink: 0;
}

.pricing-page .pr-tier-cta .pr-cta-primary .arr {
	background: rgba(255, 255, 255, 0.15);
	color: var(--ds-bg);
}

.pricing-page .pr-tier-cta .pr-cta-primary:hover .arr {
	background: rgba(255, 255, 255, 0.22);
}

html[data-theme="light"] .pricing-page .pr-tier-cta .pr-cta-primary .arr {
	color: #fff;
}

html[data-theme="dark"] .pricing-page .pr-tier-cta .pr-cta-primary .arr {
	color: var(--ds-btn-primary-text);
}

.pricing-page .pr-tier--featured .pr-cta-primary .arr {
	background: rgba(255, 255, 255, 0.15);
	color: var(--ds-lime);
}

.pricing-page .pr-tier--featured .pr-cta-primary:hover .arr {
	background: rgba(255, 255, 255, 0.22);
}

.pricing-page .pr-ent-btn {
	transition: transform 0.22s ease, border-color 0.22s ease, background 0.22s ease, color 0.22s ease;
}

.pricing-page .pr-ent-btn:hover {
	transform: translateY(-1px);
}

.pricing-page .pr-ent-btn--primary:hover .pr-ent-arr {
	background: rgba(0, 0, 0, 0.2);
}

.pricing-page .pr-plan-note {
	margin-top: 22px;
}

@media (max-width: 991px) {
	.pricing-section {
		padding-top: 60px;
		padding-bottom: 60px;
	}

	.pricing-section--crumb {
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.pricing-section--hero {
		padding-bottom: 30px;
		padding-top: 0px;
	}

	.pricing-page .pr-compare {
		padding-top: 30px;
		padding-bottom: 30px;
	}
	
	.pricing-page .pr-faq {
		padding-top: 30px;
		padding-bottom: 30px;
	}
	
	.pricing-page .pr-ent-cta {
		padding-top: 30px;
		padding-bottom: 60px;
	}
	
	.pricing-page .pr-tiers {
		padding-top: 30px;
		padding-bottom: 30px;
	}
	.hero-wf .cta-row, .amy-ev-hero-ctas {
		margin: 0 0 0 !important;
	}
}

@media (max-width: 767px) {
	.pricing-page .container {
		padding-left: 25px;
		padding-right: 25px;
	}

	.pricing-section {
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.pricing-section--crumb {
		padding-top: 50px;
		padding-bottom: 50px;
	}

	
	.pricing-section--hero {
		padding-bottom: 25px;
		padding-top: 0px;
	}
	.pricing-page .pr-compare {
		padding-top: 25px;
		padding-bottom: 25px;
	}
	
	.pricing-page .pr-faq {
		padding-top: 25px;
		padding-bottom: 25px;
	}
	
	.pricing-page .pr-ent-cta {
		padding-top: 25px;
		padding-bottom: 50px;
	}
	
	.pricing-page .pr-tiers {
		padding-top: 25px;
		padding-bottom: 25px;
	}
	.pricing-hero__header {
		max-width: 100%;
	}

	.pricing-hero__title {
		font-size: clamp(40px, 8vw, 56px);
	}

	.pricing-hero-ctas .btn {
		width: 100%;
		justify-content: center;
	}
}

@media (max-width: 640px) {
	.pr-ent-signals {
		grid-template-columns: 1fr;
		gap: 20px;
	}
}