/* Public inner pages share Canvass's shell and tokens. */
.canvass-inner .agents-hero,
.canvass-inner .agents-steps,
.canvass-inner .agents-prompts,
.canvass-inner .agents-boundary,
.canvass-inner .agents-faq,
.canvass-inner .agents-final,
.canvass-inner .agents-tagline {
	width: min(1240px, calc(100% - 64px));
	margin: 0 auto;
	padding: 72px 0;
	background: var(--cv-paper);
	color: var(--cv-ink);
}
.canvass-inner .agents-hero {
	min-height: auto;
	padding-block: 88px 64px;
	background: radial-gradient(
		ellipse at 35% 70%,
		color-mix(in srgb, var(--cv-blue) 6%, transparent),
		transparent 65%
	);
}
.canvass-inner h1 {
	font-size: clamp(36px, 5vw, 64px);
	line-height: 1.1;
	letter-spacing: -0.05em;
	font-weight: 500;
	max-width: 840px;
}
.canvass-inner h2 {
	font-size: clamp(28px, 3vw, 38px);
	line-height: 1.25;
	letter-spacing: -0.04em;
	font-weight: 500;
}
.canvass-inner .agents-lede {
	max-width: 680px;
	margin-block: 24px;
	color: var(--cv-muted);
}
.canvass-inner .section-heading {
	margin-bottom: 32px;
}
.canvass-inner .eyebrow {
	color: var(--cv-muted);
	font:
		12px "Geist Mono",
		monospace;
	letter-spacing: 0.06em;
}
.canvass-inner .eyebrow > span {
	display: none;
}
.canvass-inner .mkt-card,
.canvass-inner .install-command {
	border: 1px solid var(--cv-line);
	border-radius: var(--cv-panel-radius);
	background: linear-gradient(var(--cv-paper), var(--cv-soft));
	box-shadow: none;
}
.canvass-inner .agents-steps ol,
.canvass-inner .prompt-grid {
	gap: 20px;
	background: var(--cv-paper);
}
.canvass-inner .agents-steps li {
	padding: 28px;
}
.canvass-inner .agents-steps li > span {
	color: var(--cv-blue);
}
.canvass-inner .agents-steps p,
.canvass-inner .prompt-card code,
.canvass-inner .agents-boundary li,
.canvass-inner .agents-faq p {
	color: var(--cv-muted);
	line-height: 1.65;
}
.canvass-inner .install-command {
	margin-top: 16px;
}
.canvass-inner .install-command-head {
	background: var(--cv-soft);
	border-bottom: 1px solid var(--cv-line);
	padding: 16px 24px;
	color: var(--cv-muted);
}
.canvass-inner .install-command-row {
	padding: 24px;
}
.canvass-inner .install-command code {
	color: var(--cv-ink);
}
.canvass-inner .install-command button,
.canvass-inner .prompt-card button {
	border: 1px solid var(--cv-line);
	border-radius: 24px;
	background: var(--cv-paper);
	color: var(--cv-ink);
	min-height: 44px;
	padding: 8px 16px;
}
.canvass-inner .agents-final {
	border-top: 1px solid var(--cv-line);
}
.canvass-inner .agents-final .install-command {
	margin-inline: auto;
}
.canvass-inner .agents-final a {
	color: var(--cv-ink);
}
.canvass-inner .agents-tagline {
	padding: 48px;
	border: 1px solid var(--cv-line);
	border-radius: var(--cv-panel-radius);
	background: linear-gradient(
		125deg,
		var(--cv-paper),
		color-mix(in srgb, var(--cv-mint) 7%, var(--cv-paper))
	);
}
.canvass-inner .agents-tagline p {
	font:
		500 clamp(26px, 3vw, 38px)/1.3 "Geist",
		sans-serif;
	letter-spacing: -0.03em;
}
.canvass-inner .agents-faq details {
	border-color: var(--cv-line);
}
.canvass-inner .agents-faq summary {
	min-height: 44px;
}
.cv-contact-page {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 80px;
	padding-block: 96px;
}
.cv-contact-intro > p:not(.cv-eyebrow) {
	color: var(--cv-muted);
	margin-block: 28px;
	max-width: 430px;
}
.cv-contact-intro h1 {
	margin-top: 24px;
}
.cv-contact-intro > a {
	text-decoration: underline;
	text-underline-offset: 5px;
}
.cv-contact-panel {
	padding: 32px;
	border: 1px solid var(--cv-line);
	border-radius: var(--cv-panel-radius);
	background: linear-gradient(var(--cv-paper), var(--cv-soft));
}
.cv-contact-note {
	display: flex;
	gap: 16px;
	margin-top: 56px;
	padding: 24px;
	border: 1px solid var(--cv-line);
	border-radius: 20px;
	background: color-mix(in srgb, var(--cv-mint) 5%, var(--cv-paper));
	color: var(--cv-muted);
}
.cv-contact-note > span {
	color: var(--cv-mint);
}
.cv-contact-note a {
	color: var(--cv-ink);
	text-decoration: underline;
}
@media (max-width: 767px) {
	.canvass-inner .agents-hero,
	.canvass-inner .agents-steps,
	.canvass-inner .agents-prompts,
	.canvass-inner .agents-boundary,
	.canvass-inner .agents-faq,
	.canvass-inner .agents-final,
	.canvass-inner .agents-tagline {
		width: calc(100% - 32px);
		padding-block: 40px;
	}
	.canvass-inner .agents-tagline {
		padding: 24px;
	}
	.canvass-inner .agents-steps ol,
	.canvass-inner .prompt-grid {
		grid-template-columns: 1fr;
	}
	.canvass-inner .install-command-row {
		flex-wrap: wrap;
		padding: 20px;
	}
	.canvass-inner .install-command-row code {
		overflow-wrap: anywhere;
		white-space: pre-wrap;
	}
	.cv-contact-page {
		grid-template-columns: 1fr;
		gap: 36px;
		padding-block: 48px;
	}
	.cv-contact-panel {
		padding: 24px;
	}
	.cv-contact-note {
		margin-top: 32px;
	}
}
.cv-contact-panel .contact-form {
	border: 0;
	padding: 0;
	background: transparent;
}

/* Buyer guides share the landing canvas and small scene accents. */
.cv-guide {
	padding-block: 40px 80px;
}
.cv-guide-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	color: var(--cv-muted);
	font-size: 14px;
}
.cv-guide-breadcrumb a {
	text-decoration: underline;
	text-underline-offset: 4px;
}
.cv-guide-hero {
	padding-block: 64px;
	max-width: 900px;
}
.cv-guide-hero h1 {
	margin-block: 24px;
}
.cv-guide-answer {
	max-width: 65ch;
	color: var(--cv-muted);
	font-size: clamp(18px, 2vw, 22px);
	line-height: 1.65;
	margin-block: 24px 32px;
}
.cv-guide-sections {
	border-top: 1px solid var(--cv-line);
}
.cv-guide-section {
	display: grid;
	grid-template-columns: 80px minmax(0, 1fr);
	gap: 24px;
	padding: 48px 32px;
	border-bottom: 1px solid var(--cv-line);
	background: linear-gradient(
		110deg,
		color-mix(in srgb, var(--cv-blue) 4%, var(--cv-paper)),
		var(--cv-paper) 65%
	);
}
.cv-guide-section:nth-child(2) {
	background: linear-gradient(
		110deg,
		color-mix(in srgb, var(--cv-mint) 4%, var(--cv-paper)),
		var(--cv-paper) 65%
	);
}
.cv-guide-section:nth-child(3) {
	background: linear-gradient(
		110deg,
		color-mix(in srgb, var(--cv-apricot) 4%, var(--cv-paper)),
		var(--cv-paper) 65%
	);
}
.cv-guide-number {
	font-family: "Geist Mono", monospace;
	color: var(--cv-muted);
}
.cv-guide-section h2 {
	max-width: 25ch;
}
.cv-guide-section p,
.cv-guide-faq p {
	max-width: 70ch;
	line-height: 1.75;
	color: var(--cv-muted);
	margin-block: 24px;
}
.cv-guide-faq {
	padding-block: 64px 32px;
	max-width: 900px;
}
.cv-guide-faq h2 {
	margin-bottom: 32px;
}
.cv-guide-faq details {
	border-bottom: 1px solid var(--cv-line);
	padding-block: 16px;
}
.cv-guide-faq summary {
	cursor: pointer;
	padding-block: 12px;
	min-height: 44px;
	font-weight: 500;
}
.cv-guide-related {
	display: flex;
	flex-wrap: wrap;
	gap: 24px 48px;
	padding-block: 32px;
}
.cv-guide a:focus-visible,
.cv-guide summary:focus-visible {
	outline: 2px solid var(--cv-ink);
	outline-offset: 5px;
}
@media (max-width: 767px) {
	.cv-guide {
		padding-block: 24px 48px;
	}
	.cv-guide-hero {
		padding-block: 40px;
	}
	.cv-guide-section {
		grid-template-columns: 1fr;
		padding: 32px 16px;
		gap: 16px;
	}
}
