:root {
	--platform-bg: #fafafa;
	--platform-panel: #ffffff;
	--platform-text: #111111;
	--platform-muted: #555f6a;
	--platform-border: #dedede;
	--platform-accent: #f7941d;
}

.platform-nav-band {
	min-height: 72px;
	background: var(--platform-bg);
}

body[data-route="platform"] {
	background: var(--platform-bg);
	color: var(--platform-text);
}

.platform-page {
	background: var(--platform-bg);
	color: var(--platform-text);
}

.platform-page img {
	display: block;
	max-width: 100%;
	height: auto;
}

.platform-section {
	padding: 92px 0;
}

.platform-label,
.platform-page .section-label {
	display: block;
	margin: 0 0 14px;
	color: #68707a;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.platform-section h2,
.platform-hero-copy h1 {
	margin: 0;
	color: #101010;
	font-weight: 900;
	letter-spacing: 0;
}

.platform-section h2 {
	font-size: clamp(34px, 4vw, 56px);
	line-height: 1.05;
}

.platform-section p {
	color: var(--platform-muted);
}

.platform-accent {
	color: var(--platform-accent);
}

.platform-hero-section {
	padding: 132px 0 92px;
	background: #0a0a0a;
	border-bottom: 1px solid rgba(255, 255, 255, .12);
}

.platform-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
	gap: 72px;
	align-items: center;
}

.platform-hero-copy h1 {
	max-width: 760px;
	color: #f7f7f7;
	font-size: clamp(48px, 6vw, 82px);
	line-height: 0.98;
}

.platform-hero-copy p {
	max-width: 650px;
	margin: 24px 0 0;
	font-size: 20px;
	line-height: 1.55;
	color: rgba(247, 247, 247, .68);
}

.platform-hero-copy .platform-label {
	color: var(--platform-accent);
}

.platform-hero-actions,
.platform-closing-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	align-items: center;
	margin-top: 34px;
}

.platform-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #1f2937;
	font-weight: 800;
	text-decoration: none;
}

.platform-link:hover,
.platform-link:focus-visible {
	color: var(--platform-accent);
}

.platform-architecture-frame,
.platform-card,
.platform-step,
.platform-price-card,
.platform-audience-card,
.platform-quote {
	background: var(--platform-panel);
	border: 1px solid var(--platform-border);
	box-shadow: 0 14px 34px rgba(15, 15, 15, 0.05);
}

.platform-hero-media {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}

.platform-hero-media img {
	width: min(100%, 720px);
	aspect-ratio: 1 / 1;
	object-fit: contain;
	background: transparent;
}

.platform-numbers-bar {
	background: #ffffff;
	border-bottom: 1px solid var(--platform-border);
}

.platform-numbers-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.platform-stat {
	padding: 24px 26px;
	text-align: center;
}

.platform-stat + .platform-stat {
	border-left: 1px solid var(--platform-border);
}

.platform-stat strong {
	display: block;
	color: #141414;
	font-size: 22px;
	font-weight: 900;
	line-height: 1.1;
}

.platform-stat span {
	display: block;
	margin-top: 7px;
	color: #68707a;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.platform-copy-section {
	background: #ffffff;
}

.platform-copy-narrow {
	max-width: 760px;
	margin: 0 auto;
	text-align: left;
}

.platform-copy-narrow p {
	margin: 24px 0 0;
	font-size: 18px;
	line-height: 1.72;
}

.platform-section-heading {
	max-width: 760px;
	margin-bottom: 36px;
}

.platform-capability-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.platform-card,
.platform-step,
.platform-audience-card {
	padding: 24px;
}

.platform-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	margin-bottom: 20px;
}

.platform-icon img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.platform-card h4,
.platform-step h4,
.platform-price-card h3,
.platform-audience-card h3 {
	margin: 0;
	color: #101010;
	font-size: 21px;
	font-weight: 850;
	line-height: 1.22;
}

.platform-audience-card h3 {
	min-height: 52px;
}

.platform-card p,
.platform-step p,
.platform-audience-card p {
	margin: 12px 0 0;
	font-size: 16px;
	line-height: 1.58;
}

.platform-architecture-frame {
	padding: 28px;
}

.platform-architecture-frame img {
	width: 100%;
	background: #f1f3f5;
}

.platform-caption {
	max-width: 900px;
	margin: 18px auto 0;
	color: #5b6470;
	font-size: 15px;
	line-height: 1.55;
	text-align: center;
}

.platform-steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.platform-step-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	margin-bottom: 18px;
}

.platform-step-icon img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.platform-step-label {
	display: block;
	margin-bottom: 14px;
	color: #68707a;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.platform-security-strip {
	background: #ffffff;
	border-top: 1px solid var(--platform-border);
	border-bottom: 1px solid var(--platform-border);
}

.platform-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
}

.platform-badge {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 18px;
	border: 1px solid var(--platform-border);
	background: #f8f8f8;
	color: #242424;
	font-size: 14px;
	font-weight: 750;
}

.platform-security-note {
	max-width: 780px;
	margin: 22px auto 0;
	color: #555f6a;
	font-size: 16px;
	line-height: 1.6;
	text-align: center;
}

.platform-pricing-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.platform-price-card {
	display: flex;
	min-height: 100%;
	flex-direction: column;
	padding: 26px;
	border-top: 4px solid #c9cdd2;
}

.platform-price-card.featured {
	border-top-color: var(--platform-accent);
}

.platform-price {
	margin: 18px 0 20px;
	color: #111111;
	font-size: 28px;
	font-weight: 900;
	line-height: 1.1;
}

.platform-price-card ul {
	display: grid;
	gap: 10px;
	margin: 0 0 26px;
	padding: 0;
	list-style: none;
}

.platform-price-card li {
	color: #4b5563;
	font-size: 15px;
	line-height: 1.45;
}

.platform-price-card .platform-link {
	margin-top: auto;
}

.platform-pricing-footer {
	margin-top: 28px;
}

.platform-audience-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.platform-bridge {
	background: #ffffff;
}

.platform-bridge .platform-copy-narrow,
.platform-closing-section .platform-copy-narrow {
	text-align: center;
}

.platform-bridge .platform-link {
	margin-top: 22px;
}

.platform-quote {
	max-width: 900px;
	margin: 0;
	padding: 34px;
}

.platform-quote p {
	margin: 0;
	color: #111111;
	font-size: clamp(24px, 3vw, 36px);
	font-weight: 800;
	line-height: 1.22;
}

.platform-quote cite {
	display: block;
	margin-top: 20px;
	color: #68707a;
	font-size: 15px;
	font-style: normal;
	font-weight: 750;
}

.platform-closing-section {
	background: var(--hero-bg-dark);
	border-top: 0;
}

.platform-closing-section h2 {
	color: #ffffff;
}

.platform-closing-section p {
	color: rgba(255, 255, 255, 0.72);
}

.platform-closing-section .platform-closing-actions {
	justify-content: center;
}

@media (max-width: 980px) {
	.platform-hero-grid,
	.platform-capability-grid,
	.platform-steps,
	.platform-pricing-grid,
	.platform-audience-grid {
		grid-template-columns: 1fr;
	}

	.platform-hero-section {
		padding: 110px 0 72px;
	}

	.platform-audience-card h3 {
		min-height: 0;
	}

	.platform-numbers-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.platform-stat + .platform-stat {
		border-left: 0;
	}

	.platform-stat:nth-child(2n) {
		border-left: 1px solid var(--platform-border);
	}

	.platform-stat:nth-child(n + 3) {
		border-top: 1px solid var(--platform-border);
	}
}

@media (max-width: 640px) {
	.platform-section {
		padding: 68px 0;
	}

	.platform-hero-copy h1 {
		font-size: 46px;
	}

	.platform-hero-copy p {
		font-size: 18px;
	}

	.platform-hero-actions,
	.platform-closing-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.platform-hero-actions .btn,
	.platform-closing-actions .btn {
		width: 100%;
		justify-content: center;
	}

	.platform-numbers-grid {
		grid-template-columns: 1fr;
	}

	.platform-stat,
	.platform-stat:nth-child(2n) {
		border-left: 0;
	}

	.platform-stat + .platform-stat {
		border-top: 1px solid var(--platform-border);
	}
}

@media print {
	body[data-route="platform"] {
		background: #ffffff !important;
		color: #000000 !important;
	}

	.platform-nav-band,
	.mobile-menu,
	.platform-hero-media,
	.platform-architecture-frame,
	.platform-closing-section,
	footer {
		display: none !important;
	}

	.platform-page,
	.platform-section,
	.platform-copy-section,
	.platform-security-strip,
	.platform-bridge {
		background: #ffffff !important;
		color: #000000 !important;
	}

	.platform-section {
		padding: 24px 0 !important;
		break-inside: avoid;
	}

	.platform-pricing-grid {
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		gap: 10px !important;
		break-inside: avoid;
	}

	.platform-price-card {
		box-shadow: none !important;
		border: 1px solid #999999 !important;
		border-top: 4px solid #999999 !important;
		padding: 14px !important;
		break-inside: avoid;
	}

	.platform-price-card.featured {
		border-top-color: #000000 !important;
	}

	.platform-price-card h3,
	.platform-price {
		color: #000000 !important;
	}

	a[href]::after {
		content: "" !important;
	}
}
