/* Scoped to the pricing guide. Typography, colors and controls mirror the home. */
.cc-pricing-landing {
	--dx-module-bg: #f5f5f7;
	--dx-module-title-color: #1d1d1f;
	--dx-module-muted-color: #6e6e73;
	--dx-module-eyebrow-color: #384fff;
	--dx-module-button-bg: rgba(66, 66, 69, .86);
	--dx-module-button-text: #f5f5f7;
	--dx-module-button-radius: 999px;
	width: 100%;
	max-width: none !important;
	background: #f5f5f7;
	color: #1d1d1f;
	font-family: var(--dx-global-description-font, system-ui, "Segoe UI", sans-serif);
}
.cc-pricing-landing *, .cc-pricing-landing *::before, .cc-pricing-landing *::after { box-sizing: border-box; }
.dx-standard-page:has(.cc-pricing-landing) { padding: 0 !important; }
.dx-standard-page:has(.cc-pricing-landing) > .dx-standard-page__content { width: 100%; max-width: none !important; }
.dx-standard-page > .dx-standard-page__content > .entry-content > .cc-pricing-landing:first-child { padding-top: 0 !important; }
.cc-pricing-landing .cc-pricing-hero {
	--dx-module-padding-top: clamp(60px, 8vw, 80px);
	--dx-module-padding-bottom: clamp(48px, 6vw, 84px);
	background: #f5f5f7 !important;
}
.cc-pricing-hero .dx-reference-hero__header { opacity: 1 !important; }
.cc-pricing-hero.dx-reference-hero--v2 .dx-reference-hero__headline { max-width: 15ch !important; }
.cc-pricing-hero .dx-reference-hero__eyebrow {
	background: none !important;
	-webkit-text-fill-color: #384fff !important;
	color: #384fff !important;
}
.cc-pricing-landing .cc-seo-context-link {
	text-decoration: none !important;
	border-bottom: 1px solid rgba(110, 110, 115, .4);
}
.cc-pricing-landing .cc-seo-context-link:hover { border-bottom-color: currentColor; }
.cc-pricing-landing a:focus-visible, .cc-pricing-landing summary:focus-visible { outline: 3px solid #384fff; outline-offset: 5px; }
.cc-pricing-landing .cc-pricing-screen {
	margin: 0 auto;
	padding: clamp(8px, 1.2vw, 16px);
	max-width: 1024px;
	border: 1px solid rgba(29, 29, 31, .08);
	border-radius: 28px;
	background: #fff;
	box-shadow: 0 26px 70px rgba(0, 0, 0, .08);
}
.cc-pricing-landing .cc-pricing-screen img { display: block; width: 100%; height: auto; border-radius: 16px; }
.cc-pricing-container { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.cc-pricing-section { margin: 0; padding: clamp(64px, 7vw, 112px) 0; }
.cc-pricing-band { background: #eef5ff; }
.cc-pricing-landing .cc-pricing-heading {
	margin: 0;
	max-width: 860px;
	font-family: var(--dx-global-title-font, system-ui, "Segoe UI", sans-serif);
	font-size: clamp(34px, 4.2vw, 56px);
	font-weight: 650;
	line-height: 1.07;
	letter-spacing: -.025em;
	color: #1d1d1f;
	text-wrap: balance;
}
.cc-pricing-landing p { font-size: clamp(18px, 1.6vw, 21px); line-height: 1.5; color: #6e6e73; }
.cc-pricing-intro { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(32px, 5vw, 80px); align-items: start; }
.cc-pricing-intro > p { margin: 0; font-size: clamp(20px, 2vw, 25px); line-height: 1.45; }
.cc-pricing-methods { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin-top: 46px; }
.cc-pricing-method { padding: clamp(24px, 2.4vw, 34px); background: #fff; border-radius: 28px; box-shadow: 0 18px 48px rgba(0, 0, 0, .04); }
.cc-pricing-landing .cc-pricing-method h3 { margin: 0; font-size: 26px; line-height: 1.12; font-weight: 650; letter-spacing: -.02em; }
.cc-pricing-method p { margin: 18px 0 0; font-size: 18px; }
.cc-pricing-proofs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 46px; }
.cc-pricing-proof { overflow: hidden; border-radius: 28px; background: #fff; box-shadow: 0 18px 48px rgba(0, 0, 0, .05); }
.cc-pricing-proof figure { margin: 0; padding: 22px 22px 0; }
.cc-pricing-proof img { display: block; width: 100%; height: auto; border-radius: 14px; border: 1px solid #e8e8ed; }
.cc-pricing-proof p { padding: 30px; margin: 0; }
.cc-pricing-example { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(32px, 5vw, 80px); margin-top: 76px; }
.cc-pricing-example .cc-pricing-heading { font-size: clamp(30px, 3vw, 42px); }
.cc-pricing-example p { margin: 0; }
.cc-pricing-checklists { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.cc-pricing-checklist { padding: clamp(28px, 4vw, 46px); border-radius: 30px; background: #fff; }
.cc-pricing-checklist .cc-pricing-heading { font-size: clamp(30px, 3vw, 40px); }
.cc-pricing-checklist ol, .cc-pricing-checklist ul { margin: 30px 0 0; padding-left: 24px; }
.cc-pricing-checklist li { padding-left: 7px; margin: 18px 0; color: #6e6e73; font-size: 19px; line-height: 1.5; }
.cc-pricing-checklist li::marker { color: #384fff; font-weight: 650; }
.cc-pricing-faq { max-width: 980px; }
.cc-pricing-faq > .cc-pricing-heading { margin-bottom: 40px; }
.cc-pricing-faq details { margin: 12px 0 0; border-radius: 20px; background: #fff; }
.cc-pricing-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 26px 30px; cursor: pointer; list-style: none; }
.cc-pricing-faq summary::-webkit-details-marker { display: none; }
.cc-pricing-faq summary::after { content: "+"; color: #384fff; font-size: 27px; font-weight: 400; }
.cc-pricing-faq details[open] summary::after { content: "−"; }
.cc-pricing-landing .cc-pricing-faq h3 { margin: 0; font-size: clamp(18px, 1.7vw, 22px); font-weight: 600; line-height: 1.3; }
.cc-pricing-faq details > p { margin: 0; padding: 0 30px 28px; }
.cc-pricing-cta { --dx-hero-accent: #fff; --dx-module-button-text: #1d1d1f; text-align: center; background: #1d1d1f; }
.cc-pricing-cta.dx-reference-hero--v2 { background: #1d1d1f !important; }
.cc-pricing-cta .cc-pricing-heading { color: #f5f5f7; margin: 0 auto; }
.cc-pricing-cta p { max-width: 660px; margin: 24px auto 0; color: #b9b9bf; font-size: 23px; }
.cc-pricing-landing .cc-pricing-next { width: min(1180px, calc(100% - 48px)); margin: 0 auto; padding: 44px 0; border: 0; border-radius: 0; background: transparent; }
.cc-pricing-next a { color: #424245; font-size: 17px; font-weight: 500; }
@media (max-width: 980px) {
	.cc-pricing-methods { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cc-pricing-intro, .cc-pricing-example { grid-template-columns: 1fr; gap: 28px; }
}
@media (max-width: 680px) {
	.cc-pricing-container { width: calc(100% - 40px); }
	.cc-pricing-methods, .cc-pricing-proofs, .cc-pricing-checklists { grid-template-columns: 1fr; }
	.cc-pricing-methods, .cc-pricing-proofs { margin-top: 30px; }
	.cc-pricing-method, .cc-pricing-proof, .cc-pricing-checklist { border-radius: 24px; }
	.cc-pricing-example { margin-top: 48px; }
	.cc-pricing-faq summary { padding: 22px; gap: 16px; }
	.cc-pricing-faq details > p { padding: 0 22px 24px; }
	.cc-pricing-landing .cc-pricing-screen { border-radius: 18px; }
	.cc-pricing-landing .cc-pricing-screen img { border-radius: 10px; }
	.cc-pricing-cta p { font-size: 20px; }
}
