/**
 * ConforIQ scope-led pricing and policy pages.
 * All selectors are isolated to the active commercial/policy page wrapper.
 */

/* Shared commercial-page tokens and wrapper reset. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page {
	--cq-cp-navy: #06172e;
	--cq-cp-navy-soft: #0a2548;
	--cq-cp-ink: #071a34;
	--cq-cp-copy: #36536f;
	--cq-cp-muted: #5f7690;
	--cq-cp-green: #4f9e2e;
	--cq-cp-green-dark: #2f741c;
	--cq-cp-green-soft: #eef6e9;
	--cq-cp-line: #d7e0e8;
	width: 100% !important;
	max-width: none !important;
	margin: 69px 0 0 !important;
	padding: 0 !important;
	background: #fff !important;
	color: var(--cq-cp-ink) !important;
	font-family: "DM Sans", system-ui, sans-serif !important;
	overflow: clip;
}

/* Shared constrained content width. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-shell {
	width: min(100% - 64px, 1280px) !important;
	max-width: 1280px !important;
	margin-inline: auto !important;
	padding: 0 !important;
}

/* Shared commercial-page typography. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page h1,
html body.cq-commercial-policy-page .cq-page.cq-cp-page h2,
html body.cq-commercial-policy-page .cq-page.cq-cp-page h3,
html body.cq-commercial-policy-page .cq-page.cq-cp-page p,
html body.cq-commercial-policy-page .cq-page.cq-cp-page li {
	letter-spacing: 0 !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page h1 {
	margin: 0 0 24px !important;
	color: var(--cq-cp-ink) !important;
	font-family: "DM Sans", system-ui, sans-serif !important;
	font-size: 58px !important;
	font-weight: 680 !important;
	line-height: 1.04 !important;
	text-wrap: balance;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page h2 {
	margin: 0 0 18px !important;
	color: var(--cq-cp-ink) !important;
	font-family: "DM Sans", system-ui, sans-serif !important;
	font-size: 40px !important;
	font-weight: 650 !important;
	line-height: 1.12 !important;
	text-wrap: balance;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page h3 {
	margin: 0 !important;
	color: var(--cq-cp-ink) !important;
	font-family: "DM Sans", system-ui, sans-serif !important;
	font-size: 23px !important;
	font-weight: 650 !important;
	line-height: 1.24 !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page p,
html body.cq-commercial-policy-page .cq-page.cq-cp-page li {
	color: var(--cq-cp-copy) !important;
	font-size: 17px !important;
	font-weight: 400 !important;
	line-height: 1.66 !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page a {
	text-underline-offset: 4px;
}

/* Plain section labels replace decorative badges. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-kicker {
	margin: 0 0 22px !important;
	color: var(--cq-cp-green-dark) !important;
	font-size: 13px !important;
	font-weight: 750 !important;
	line-height: 1.3 !important;
	text-transform: uppercase;
}

/* Shared breadcrumb treatment. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-breadcrumbs {
	display: flex !important;
	margin: 0 0 40px !important;
	padding: 0 !important;
	flex-wrap: wrap;
	gap: 8px;
	color: var(--cq-cp-muted) !important;
	font-size: 14px !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-breadcrumbs a {
	color: var(--cq-cp-muted) !important;
}

/* Shared button and text-link commands. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-btn {
	display: inline-flex !important;
	min-height: 48px;
	padding: 0 24px !important;
	align-items: center;
	justify-content: center;
	border: 1px solid transparent;
	border-radius: 4px !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	text-align: center;
	text-decoration: none !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-btn-primary {
	background: var(--cq-cp-green) !important;
	color: #fff !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-btn-primary:hover {
	background: var(--cq-cp-green-dark) !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-text-link {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	gap: 10px;
	color: var(--cq-cp-green-dark) !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	text-decoration: underline;
	text-decoration-thickness: 1px;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-text-link svg {
	width: 17px;
	height: 17px;
}

/* Pricing hero uses real editorial media without a color overlay. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-hero {
	padding: 0 !important;
	background: #fff !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: stretch;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-hero-copy {
	display: flex;
	min-height: 610px;
	padding: 64px 72px 68px 0;
	flex-direction: column;
	justify-content: center;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-lede {
	max-width: 660px;
	margin: 0 !important;
	color: var(--cq-cp-copy) !important;
	font-size: 18px !important;
	line-height: 1.65 !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-actions {
	display: flex;
	margin-top: 32px;
	flex-wrap: wrap;
	gap: 12px 24px;
	align-items: center;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-hero-media {
	display: block;
	min-height: 610px;
	margin-right: calc((100vw - min(100vw - 64px, 1280px)) / -2);
	overflow: hidden;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-hero-media img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	min-height: 610px;
	border-radius: 0 !important;
	object-fit: cover;
	object-position: 56% center;
}

/* Quote-input rows create a scannable editorial list rather than cards. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-scope {
	padding: 96px 0 !important;
	background: #f4f7f5 !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-section-intro {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, .66fr);
	gap: 80px;
	margin-bottom: 56px;
	align-items: end;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-section-intro > p {
	margin: 0 !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-scope-list {
	border-top: 1px solid var(--cq-cp-line);
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-scope-row {
	display: grid;
	grid-template-columns: 48px minmax(210px, .55fr) minmax(0, 1fr);
	gap: 24px;
	padding: 26px 0;
	align-items: center;
	border-bottom: 1px solid var(--cq-cp-line);
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-scope-row > svg {
	width: 44px;
	height: 44px;
	padding: 10px;
	border: 1px solid #c7dbbb;
	color: var(--cq-cp-green-dark);
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-scope-row strong {
	color: var(--cq-cp-ink) !important;
	font-size: 18px;
	font-weight: 650;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-scope-row p {
	margin: 0 !important;
	font-size: 15px !important;
}

/* Engagement pathways use a sticky editorial introduction and open rows. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathways {
	padding: 100px 0 !important;
	background: #fff !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathways-grid {
	display: grid;
	grid-template-columns: minmax(280px, .68fr) minmax(0, 1.32fr);
	gap: 96px;
	align-items: start;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathways-grid > header {
	position: sticky;
	top: 116px;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathways-grid > header p:last-child {
	margin: 0 !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathway-list {
	border-top: 1px solid var(--cq-cp-line);
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathway {
	padding: 32px 0 36px !important;
	border-bottom: 1px solid var(--cq-cp-line);
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathway-heading {
	display: flex;
	gap: 20px;
	align-items: baseline;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathway-heading span {
	color: var(--cq-cp-green-dark);
	font-size: 12px;
	font-weight: 750;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathway > p {
	margin: 14px 0 18px 40px !important;
	font-size: 15px !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathway ul {
	display: grid;
	margin: 0 0 0 40px !important;
	padding: 0 !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px 24px;
	list-style: none;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathway li {
	position: relative;
	padding-left: 17px;
	font-size: 14px !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathway li::before {
	position: absolute;
	top: 10px;
	left: 0;
	width: 6px;
	height: 6px;
	background: var(--cq-cp-green);
	content: "";
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathway-list > .cq-cp-btn {
	margin-top: 32px;
}

/* Dark process band explains the commercial handoff without package cards. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process {
	padding: 92px 0 !important;
	background: var(--cq-cp-navy) !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-section-intro-dark h2 {
	color: #fff !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-section-intro-dark .cq-cp-kicker {
	color: #a8e47d !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-section-intro-dark > p {
	color: #c6d4e3 !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process-list {
	display: grid;
	margin: 0 !important;
	padding: 0 !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	list-style: none;
	border-top: 1px solid rgba(255, 255, 255, .22);
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process-list li {
	display: flex;
	min-height: 210px;
	padding: 26px;
	flex-direction: column;
	border-right: 1px solid rgba(255, 255, 255, .18);
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process-list li:last-child {
	border-right: 0;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process-list span {
	margin-bottom: 46px;
	color: #91d865;
	font-size: 12px;
	font-weight: 750;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process-list strong {
	color: #fff;
	font-size: 18px;
	font-weight: 650;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process-list small {
	margin-top: 9px;
	color: #b9cadc;
	font-size: 14px;
	line-height: 1.5;
}

/* Payment safety uses a simple two-column information band. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-payment {
	padding: 90px 0 !important;
	background: #f4f7f5 !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-payment-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(360px, .8fr);
	gap: 92px;
	align-items: start;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-payment-grid > div:last-child > p:first-child {
	margin-top: 5px !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-note {
	display: grid;
	margin: 28px 0 0 !important;
	padding: 22px 0 0;
	grid-template-columns: 38px minmax(0, 1fr);
	gap: 14px;
	border-top: 1px solid var(--cq-cp-line);
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-note svg {
	width: 34px;
	height: 34px;
	padding: 7px;
	border: 1px solid #c7dbbb;
	color: var(--cq-cp-green-dark);
}

/* Pricing FAQ uses native details for keyboard and mobile usability. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-faq {
	padding: 96px 0 !important;
	background: #fff !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-faq-grid {
	display: grid;
	grid-template-columns: minmax(280px, .7fr) minmax(0, 1.3fr);
	gap: 96px;
	align-items: start;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-details-list {
	border-top: 1px solid var(--cq-cp-line);
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-details-list details {
	border-bottom: 1px solid var(--cq-cp-line);
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-details-list summary {
	position: relative;
	min-height: 62px;
	padding: 20px 48px 20px 0;
	color: var(--cq-cp-ink) !important;
	font-size: 16px;
	font-weight: 650;
	cursor: pointer;
	list-style: none;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-details-list summary::-webkit-details-marker {
	display: none;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-details-list summary::after {
	position: absolute;
	top: 17px;
	right: 0;
	color: var(--cq-cp-green-dark);
	font-size: 22px;
	content: "+";
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-details-list details[open] summary::after {
	content: "\2212";
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-details-list details > p {
	margin: 0 0 22px !important;
	padding-right: 46px;
	font-size: 15px !important;
}

/* Pricing final CTA remains a single strong decision point. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-final {
	padding: 78px 0 !important;
	background: var(--cq-cp-green-soft) !important;
	border-top: 1px solid #cbdcbc;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-final-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 64px;
	align-items: center;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-final-grid > div {
	max-width: 820px;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-final-grid p:last-child {
	margin-bottom: 0 !important;
}

/* Legal hero keeps policy context compact and readable. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-hero {
	padding: 76px 0 68px !important;
	background: #f4f7f5 !important;
	border-bottom: 1px solid var(--cq-cp-line);
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-hero h1 {
	max-width: 820px;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-hero .cq-cp-lede {
	max-width: 840px;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-meta {
	display: flex;
	margin-top: 30px;
	flex-wrap: wrap;
	gap: 8px 28px;
	color: var(--cq-cp-muted);
	font-size: 14px;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-meta a {
	color: var(--cq-cp-green-dark) !important;
}

/* Legal-review notice is visible without imitating a marketing card. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-notice {
	padding: 22px 0 !important;
	background: #fff8e8;
	border-bottom: 1px solid #e9d8a7;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-notice .cq-cp-shell {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	gap: 14px;
	align-items: start;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-notice svg {
	width: 30px;
	height: 30px;
	padding: 5px;
	color: #806211;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-notice p {
	margin: 0 !important;
	color: #5a4a20 !important;
	font-size: 14px !important;
	line-height: 1.58 !important;
}

/* Legal document layout pairs a sticky contents list with readable prose. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-main {
	padding: 84px 0 96px !important;
	background: #fff !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-grid {
	display: grid;
	grid-template-columns: minmax(230px, .32fr) minmax(0, .68fr);
	gap: 94px;
	align-items: start;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-nav {
	position: sticky;
	top: 112px;
	padding-top: 18px;
	border-top: 3px solid var(--cq-cp-green);
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-nav > p {
	margin: 0 0 14px !important;
	color: var(--cq-cp-ink) !important;
	font-size: 14px !important;
	font-weight: 750 !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-nav ol {
	display: flex;
	margin: 0 !important;
	padding: 0 !important;
	flex-direction: column;
	gap: 0;
	list-style: none;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-nav li {
	border-bottom: 1px solid var(--cq-cp-line);
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-nav a {
	display: block;
	padding: 10px 0;
	color: var(--cq-cp-copy) !important;
	font-size: 13px !important;
	line-height: 1.35 !important;
	text-decoration: none;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-nav a:hover {
	color: var(--cq-cp-green-dark) !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-document {
	max-width: 790px;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-document section {
	position: relative;
	padding: 0 0 42px 50px;
	scroll-margin-top: 120px;
	border-bottom: 1px solid var(--cq-cp-line);
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-document section + section {
	padding-top: 42px;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-document section > span {
	position: absolute;
	top: 5px;
	left: 0;
	color: var(--cq-cp-green-dark);
	font-size: 12px;
	font-weight: 750;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-document h2 {
	font-size: 28px !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-document p {
	margin: 0 0 14px !important;
	font-size: 16px !important;
	line-height: 1.72 !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-document p:last-child {
	margin-bottom: 0 !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-document a {
	color: var(--cq-cp-green-dark) !important;
	font-weight: 650;
}

/* Legal footer keeps one clear contact action. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-footer {
	padding: 44px 0 !important;
	background: var(--cq-cp-navy) !important;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-footer .cq-cp-shell {
	display: flex;
	gap: 32px;
	align-items: center;
	justify-content: space-between;
}

html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-footer p {
	margin: 0 !important;
	color: #fff !important;
	font-size: 19px !important;
	font-weight: 650 !important;
}

/* Keyboard focus remains visible across pricing and policy controls. */
html body.cq-commercial-policy-page .cq-page.cq-cp-page a:focus-visible,
html body.cq-commercial-policy-page .cq-page.cq-cp-page summary:focus-visible {
	outline: 3px solid #f3c74e !important;
	outline-offset: 4px !important;
}

/* Tablet layout reduces large two-column gaps while keeping editorial structure. */
@media (max-width: 1100px) {
	html body.cq-commercial-policy-page .cq-page.cq-cp-page h1 {
		font-size: 48px !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-hero-copy {
		padding-right: 48px;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-section-intro,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathways-grid,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-payment-grid,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-faq-grid,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-grid {
		gap: 56px;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-scope-row {
		grid-template-columns: 44px minmax(180px, .52fr) minmax(0, 1fr);
		gap: 18px;
	}
}

/* Compact desktop and large tablet switch to stacked hero bands. */
@media (max-width: 900px) {
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-shell {
		width: min(100% - 48px, 760px) !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-hero-grid,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-section-intro,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathways-grid,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-payment-grid,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-faq-grid,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-final-grid,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-grid {
		grid-template-columns: 1fr;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-hero-copy {
		min-height: 0;
		padding: 58px 0 54px;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-hero-media {
		min-height: 420px;
		margin-inline: calc((100vw - min(100vw - 48px, 760px)) / -2);
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-hero-media img {
		min-height: 420px;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathways-grid > header,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-nav {
		position: static;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathway ul {
		grid-template-columns: 1fr 1fr;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process-list {
		grid-template-columns: 1fr 1fr;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process-list li:nth-child(2) {
		border-right: 0;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process-list li:nth-child(-n+2) {
		border-bottom: 1px solid rgba(255, 255, 255, .18);
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-final-grid {
		gap: 22px;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-final-grid .cq-cp-btn {
		justify-self: start;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-nav ol {
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 28px;
	}
}

/* Phone layout becomes concise, touch-friendly, and intentionally horizontal where useful. */
@media (max-width: 640px) {
	html body.cq-commercial-policy-page .cq-page.cq-cp-page {
		margin-top: 65px !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-shell {
		width: calc(100% - 32px) !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page h1 {
		font-size: 38px !important;
		line-height: 1.07 !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page h2 {
		font-size: 30px !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page h3 {
		font-size: 20px !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page p,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page li {
		font-size: 16px !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-breadcrumbs {
		margin-bottom: 30px !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-hero-copy {
		padding: 42px 0 40px;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-lede {
		font-size: 16px !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-actions {
		align-items: stretch;
		flex-direction: column;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-actions .cq-cp-btn {
		width: 100%;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-hero-media {
		min-height: 290px;
		margin-inline: -16px;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-hero-media img {
		min-height: 290px;
		object-position: 64% center;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-scope,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathways,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-payment,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-faq,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-main {
		padding: 68px 0 !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-section-intro {
		gap: 10px;
		margin-bottom: 34px;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-scope-list {
		display: flex;
		width: calc(100% + 16px);
		padding: 0 16px 14px 0;
		gap: 0;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-scope-row {
		display: grid;
		width: 82vw;
		min-width: 82vw;
		padding: 22px 24px 24px;
		grid-template-columns: 44px minmax(0, 1fr);
		grid-template-areas: "icon title" "copy copy";
		gap: 14px;
		align-items: center;
		border-right: 1px solid var(--cq-cp-line);
		border-bottom: 1px solid var(--cq-cp-line);
		scroll-snap-align: start;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-scope-row > svg { grid-area: icon; }
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-scope-row > strong { grid-area: title; }
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-scope-row > p { grid-area: copy; }

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathway > p,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathway ul {
		margin-left: 0 !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathway ul {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-pathway-list > .cq-cp-btn {
		width: 100%;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process-list {
		display: flex;
		width: calc(100% + 16px);
		padding: 0 16px 12px 0 !important;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process-list li,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process-list li:nth-child(-n+2) {
		width: 76vw;
		min-width: 76vw;
		min-height: 190px;
		border-right: 1px solid rgba(255, 255, 255, .18);
		border-bottom: 0;
		scroll-snap-align: start;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process-list span {
		margin-bottom: 36px;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-final {
		padding: 58px 0 !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-final-grid .cq-cp-btn {
		width: 100%;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-hero {
		padding: 46px 0 42px !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-hero h1 {
		font-size: 40px !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-meta {
		flex-direction: column;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-meta a {
		display: inline-flex;
		min-height: 44px;
		align-items: center;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-notice .cq-cp-shell {
		grid-template-columns: 28px minmax(0, 1fr);
	}

	/* Policy contents become a compact reading rail instead of a long mobile list. */
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-grid {
		gap: 42px;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-nav {
		width: calc(100% + 16px);
		max-width: calc(100vw - 16px);
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		scrollbar-width: thin;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-nav ol {
		display: flex;
		width: max-content;
		min-width: 100%;
		grid-template-columns: none;
		flex-direction: row;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-nav li {
		border-right: 1px solid var(--cq-cp-line);
		border-bottom: 1px solid var(--cq-cp-line);
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-nav a {
		display: inline-flex;
		min-height: 48px;
		padding: 0 16px;
		align-items: center;
		white-space: nowrap;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-document section,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-document section + section {
		padding-left: 36px;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-document h2 {
		font-size: 25px !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-legal-footer .cq-cp-shell {
		align-items: stretch;
		flex-direction: column;
	}
}

/* Narrow phones keep every control and long word inside the viewport. */
@media (max-width: 380px) {
	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-shell {
		width: calc(100% - 24px) !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page h1 {
		font-size: 34px !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page h2 {
		font-size: 28px !important;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-hero-media {
		margin-inline: -12px;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-scope-row {
		width: 86vw;
		min-width: 86vw;
	}

	html body.cq-commercial-policy-page .cq-page.cq-cp-page .cq-cp-process-list li {
		width: 82vw;
		min-width: 82vw;
	}
}

/* Reduced-motion users keep all content without animated transitions. */
@media (prefers-reduced-motion: reduce) {
	html body.cq-commercial-policy-page .cq-page.cq-cp-page *,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page *::before,
	html body.cq-commercial-policy-page .cq-page.cq-cp-page *::after {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
	}
}
