:root {
	--cgm-primary: #1e3a5f;
	--cgm-accent: #14b8a6;
	--cgm-bg: #f8fafc;
	--cgm-card: #ffffff;
	--cgm-dark: #0f172a;
	--cgm-text: #0f172a;
	--cgm-muted: #475569;
	--cgm-soft: #94a3b8;
	--cgm-border: #e2e8f0;
	--cgm-success: #10b981;
	--cgm-warning: #f59e0b;
	--cgm-error: #ef4444;
	--cgm-radius: 24px;
	--cgm-button-radius: 14px;
	--cgm-shadow: 0 24px 70px rgba(15, 23, 42, 0.1);
	--cgm-card-shadow: 0 18px 50px rgba(15, 23, 42, 0.08);
}

html {
	scroll-behavior: smooth;
}

body {
	background:
		radial-gradient(circle at 18% 8%, rgba(20, 184, 166, 0.09), transparent 30rem),
		linear-gradient(180deg, #f8fafc 0%, #eef5f8 100%);
	color: var(--cgm-text);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	margin: 0;
}

body :where(a, button, input, select, textarea):focus-visible {
	outline: 3px solid rgba(20, 184, 166, 0.72);
	outline-offset: 3px;
}

.cgm-container {
	margin-inline: auto;
	max-width: 1160px;
	padding-inline: 24px;
}

.cgm-section {
	padding-block: 96px;
	position: relative;
}

.cgm-section-head {
	margin-bottom: 40px;
	max-width: 760px;
}

.cgm-section-head h2,
.cgm-hero-copy h1 {
	color: var(--cgm-text);
	font-family: "Inter Tight", Inter, ui-sans-serif, system-ui, sans-serif;
	letter-spacing: -0.035em;
	margin: 0;
}

.cgm-section-head h2 {
	font-size: clamp(2.25rem, 1.7rem + 2vw, 3rem);
	line-height: 1.06;
}

.cgm-section-head p,
.cgm-hero-copy p,
.cgm-ops p,
.cgm-form-copy p {
	color: var(--cgm-muted);
	font-size: 1.05rem;
	line-height: 1.7;
}

.cgm-eyebrow {
	color: var(--cgm-accent);
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.16em;
	margin-bottom: 14px;
	text-transform: uppercase;
}

.cgm-button {
	align-items: center;
	border-radius: var(--cgm-button-radius);
	display: inline-flex;
	font-weight: 800;
	gap: 10px;
	justify-content: center;
	line-height: 1;
	padding: 14px 18px;
	text-decoration: none;
	transition: transform 180ms ease, background 180ms ease, border-color 180ms ease, color 180ms ease;
}

.cgm-button::after {
	content: "→";
	font-size: 1rem;
	transition: transform 180ms ease;
}

.cgm-button:hover::after,
.cgm-button:focus-visible::after {
	transform: translateX(3px);
}

.cgm-button:hover,
.cgm-button:focus-visible {
	transform: translateY(-1px);
}

.cgm-button-primary {
	background: linear-gradient(135deg, var(--cgm-primary), #24527f);
	box-shadow: 0 12px 28px rgba(30, 58, 95, 0.22);
	color: #fff;
}

.cgm-button-secondary {
	background: rgba(255, 255, 255, 0.78);
	border: 1px solid rgba(30, 58, 95, 0.16);
	color: var(--cgm-primary);
}

.cgm-button-small {
	font-size: 0.84rem;
	padding: 12px 14px;
}

.cgm-inline-link {
	color: var(--cgm-primary);
	display: inline-flex;
	font-weight: 800;
	gap: 8px;
	text-decoration: none;
}

.cgm-inline-link::after {
	content: "→";
}

.cgm-skip-link {
	background: var(--cgm-dark);
	border-radius: 0 0 12px 0;
	color: #fff;
	left: 0;
	padding: 10px 14px;
	position: fixed;
	top: -60px;
	z-index: 1000;
}

.cgm-skip-link:focus {
	top: 0;
}

.cgm-site-header {
	background: rgba(248, 250, 252, 0.78);
	border-bottom: 1px solid rgba(226, 232, 240, 0.72);
	left: 0;
	position: sticky;
	right: 0;
	top: 0;
	transition: background 180ms ease, box-shadow 180ms ease, backdrop-filter 180ms ease;
	z-index: 90;
}

.cgm-site-header.is-scrolled {
	backdrop-filter: blur(18px);
	background: rgba(248, 250, 252, 0.88);
	box-shadow: 0 16px 42px rgba(15, 23, 42, 0.08);
}

.cgm-nav-shell {
	align-items: center;
	display: grid;
	gap: 20px;
	grid-template-columns: auto 1fr auto;
	margin-inline: auto;
	max-width: 1360px;
	min-height: 76px;
	padding-inline: 24px;
}

.cgm-brand {
	align-items: center;
	color: var(--cgm-primary);
	display: inline-flex;
	font-weight: 900;
	gap: 9px;
	text-decoration: none;
}

.cgm-brand-mark {
	background: linear-gradient(135deg, #e8fbf8, #c9f6ef);
	border: 1px solid rgba(20, 184, 166, 0.28);
	border-radius: 10px;
	color: var(--cgm-primary);
	display: grid;
	font-weight: 950;
	height: 36px;
	letter-spacing: -0.05em;
	place-items: center;
	width: 42px;
}

.cgm-brand-text {
	color: var(--cgm-primary);
	font-size: 1.05rem;
	letter-spacing: -0.03em;
}

.cgm-brand-dark .cgm-brand-text {
	color: #fff;
}

.cgm-primary-nav {
	align-items: center;
	display: flex;
	gap: 24px;
	justify-content: center;
}

.cgm-nav-item {
	position: relative;
}

.cgm-nav-caret {
	color: var(--cgm-accent);
	font-size: 0.72em;
	margin-left: 4px;
}

.cgm-primary-nav a {
	color: #20344d;
	font-size: 0.92rem;
	font-weight: 750;
	position: relative;
	text-decoration: none;
}

.cgm-primary-nav a::after {
	background: var(--cgm-accent);
	bottom: -9px;
	content: "";
	height: 2px;
	left: 0;
	position: absolute;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 180ms ease;
	width: 100%;
}

.cgm-primary-nav a:hover::after,
.cgm-primary-nav a:focus-visible::after {
	transform: scaleX(1);
}

.cgm-nav-dropdown {
	background: rgba(255, 255, 255, 0.98);
	border: 1px solid var(--cgm-border);
	border-radius: 18px;
	box-shadow: 0 22px 54px rgba(15, 23, 42, 0.12);
	display: grid;
	gap: 4px;
	left: 50%;
	min-width: 238px;
	opacity: 0;
	padding: 10px;
	pointer-events: none;
	position: absolute;
	top: calc(100% + 18px);
	transform: translateX(-50%) translateY(8px);
	transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease;
	visibility: hidden;
	z-index: 120;
}

.cgm-nav-dropdown::before {
	content: "";
	height: 18px;
	left: 0;
	position: absolute;
	right: 0;
	top: -18px;
}

.cgm-nav-has-dropdown:hover .cgm-nav-dropdown,
.cgm-nav-has-dropdown:focus-within .cgm-nav-dropdown {
	opacity: 1;
	pointer-events: auto;
	transform: translateX(-50%) translateY(0);
	visibility: visible;
}

.cgm-primary-nav .cgm-nav-dropdown a {
	border-radius: 12px;
	color: var(--cgm-primary) !important;
	display: block;
	font-size: 0.88rem;
	line-height: 1.2;
	padding: 11px 12px;
	white-space: nowrap;
}

.cgm-primary-nav .cgm-nav-dropdown a::after {
	display: none;
}

.cgm-primary-nav .cgm-nav-dropdown a:hover,
.cgm-primary-nav .cgm-nav-dropdown a:focus-visible {
	background: rgba(12, 149, 238, 0.08);
	color: #0874c8 !important;
	outline: none;
}

.cgm-nav-action {
	align-items: center;
	display: flex;
	gap: 16px;
}

.cgm-nav-action span {
	color: var(--cgm-muted);
	font-size: 0.82rem;
	font-weight: 700;
	white-space: nowrap;
}

.cgm-menu-toggle {
	display: none;
}

.cgm-hero {
	overflow: hidden;
	padding-top: 116px;
}

.cgm-hero-bg {
	background:
		linear-gradient(rgba(30, 58, 95, 0.035) 1px, transparent 1px),
		linear-gradient(90deg, rgba(30, 58, 95, 0.035) 1px, transparent 1px);
	background-size: 44px 44px;
	inset: 0;
	mask-image: linear-gradient(180deg, #000 0%, transparent 72%);
	position: absolute;
}

.cgm-hero-grid {
	align-items: center;
	display: grid;
	gap: 52px;
	grid-template-columns: minmax(0, 0.9fr) minmax(520px, 1.1fr);
	position: relative;
}

.cgm-hero-copy h1 {
	font-size: clamp(3rem, 2.1rem + 3.4vw, 4.5rem);
	line-height: 1.02;
	max-width: 760px;
}

.cgm-hero-lede {
	font-size: 1.15rem !important;
	margin-top: 26px;
}

.cgm-hero-actions,
.cgm-form-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 28px;
}

.cgm-trust-chips,
.cgm-form-points,
.cgm-risk-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 24px;
}

.cgm-trust-chips span,
.cgm-form-points span,
.cgm-risk-chips span {
	background: rgba(255, 255, 255, 0.8);
	border: 1px solid rgba(226, 232, 240, 0.92);
	border-radius: 999px;
	color: var(--cgm-primary);
	font-size: 0.83rem;
	font-weight: 800;
	padding: 8px 11px;
}

.cgm-dashboard {
	background:
		radial-gradient(circle at 75% 0%, rgba(20, 184, 166, 0.24), transparent 18rem),
		linear-gradient(145deg, #10213a, #08111f 65%);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 32px;
	box-shadow: 0 36px 100px rgba(15, 23, 42, 0.32);
	color: #fff;
	overflow: hidden;
	padding: 24px;
	position: relative;
}

.cgm-dashboard::before {
	background:
		linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
	background-size: 28px 28px;
	content: "";
	inset: 0;
	opacity: 0.56;
	position: absolute;
}

.cgm-dashboard > * {
	position: relative;
}

.cgm-dashboard-top,
.cgm-card-row {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.cgm-dashboard-kicker {
	color: var(--cgm-accent);
	font-size: 0.74rem;
	font-weight: 900;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.cgm-dashboard h2 {
	font-size: 1.6rem;
	line-height: 1;
	margin: 8px 0 0;
}

.cgm-status-pill,
.cgm-severity {
	background: rgba(20, 184, 166, 0.13);
	border: 1px solid rgba(20, 184, 166, 0.28);
	border-radius: 999px;
	color: #d6fffa;
	font-size: 0.75rem;
	font-weight: 900;
	padding: 8px 10px;
	white-space: nowrap;
}

.cgm-dashboard-grid {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 24px;
}

.cgm-dashboard-card {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 20px;
	min-height: 112px;
	padding: 16px;
	transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

.cgm-dashboard-card:hover {
	background: rgba(255, 255, 255, 0.11);
	border-color: rgba(20, 184, 166, 0.45);
	transform: translateY(-3px);
}

.cgm-dashboard-card-wide {
	grid-column: span 2;
}

.cgm-dashboard-card span,
.cgm-dashboard-card small {
	color: rgba(255, 255, 255, 0.68);
	display: block;
	font-size: 0.78rem;
	font-weight: 750;
}

.cgm-dashboard-card strong {
	color: #fff;
	display: block;
	font-size: 2rem;
	letter-spacing: -0.05em;
	line-height: 1.1;
	margin: 10px 0;
}

.cgm-warning-card strong {
	color: #ffd999;
}

.cgm-progress-track {
	background: rgba(255, 255, 255, 0.12);
	border-radius: 999px;
	height: 9px;
	margin: 14px 0;
	overflow: hidden;
}

.cgm-progress-track span {
	background: linear-gradient(90deg, var(--cgm-accent), #8cf3e8);
	display: block;
	height: 100%;
	width: var(--value, 60%);
}

.cgm-bar-chart {
	align-items: end;
	display: flex;
	gap: 8px;
	height: 76px;
	margin-top: 14px;
}

.cgm-bar-chart i {
	background: linear-gradient(180deg, #8cf3e8, rgba(20, 184, 166, 0.18));
	border-radius: 999px 999px 8px 8px;
	display: block;
	height: var(--h);
	width: 100%;
}

.cgm-dashboard-flow {
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(255, 255, 255, 0.11);
	border-radius: 18px;
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(6, 1fr);
	margin-top: 14px;
	padding: 10px;
}

.cgm-dashboard-flow span {
	color: rgba(255, 255, 255, 0.72);
	font-size: 0.72rem;
	font-weight: 850;
	text-align: center;
}

.cgm-trust-bar {
	background: rgba(255, 255, 255, 0.72);
	border-block: 1px solid var(--cgm-border);
}

.cgm-trust-bar-inner {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(6, 1fr);
}

.cgm-trust-bar span {
	border-left: 1px solid var(--cgm-border);
	color: var(--cgm-primary);
	font-size: 0.78rem;
	font-weight: 850;
	padding: 18px 16px;
	text-align: center;
}

.cgm-trust-bar span:last-child {
	border-right: 1px solid var(--cgm-border);
}

.cgm-leak-map,
.cgm-specialty-explorer,
.cgm-form-grid,
.cgm-ops-grid {
	display: grid;
	gap: 28px;
	grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr);
}

.cgm-leak-nodes {
	background: var(--cgm-card);
	border: 1px solid var(--cgm-border);
	border-radius: var(--cgm-radius);
	box-shadow: var(--cgm-card-shadow);
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(3, 1fr);
	padding: 18px;
	position: relative;
}

.cgm-leak-node,
.cgm-tab-list button,
.cgm-specialty-list button {
	background: #fff;
	border: 1px solid var(--cgm-border);
	border-radius: 16px;
	color: var(--cgm-primary);
	cursor: pointer;
	font: inherit;
	font-size: 0.88rem;
	font-weight: 850;
	padding: 14px 13px;
	text-align: left;
	transition: transform 180ms ease, border-color 180ms ease, background 180ms ease, color 180ms ease;
}

.cgm-leak-node:hover,
.cgm-leak-node.is-active,
.cgm-tab-list button:hover,
.cgm-tab-list button.is-active,
.cgm-specialty-list button:hover,
.cgm-specialty-list button.is-active {
	background: linear-gradient(135deg, rgba(20, 184, 166, 0.1), rgba(30, 58, 95, 0.06));
	border-color: rgba(20, 184, 166, 0.38);
	color: var(--cgm-dark);
	transform: translateY(-2px);
}

.cgm-leak-panel,
.cgm-tab-panel,
.cgm-specialty-panel,
.cgm-ops-board,
.cgm-review-form {
	background: rgba(255, 255, 255, 0.88);
	border: 1px solid var(--cgm-border);
	border-radius: var(--cgm-radius);
	box-shadow: var(--cgm-card-shadow);
	padding: 28px;
}

.cgm-leak-panel h3,
.cgm-tab-panel h3,
.cgm-specialty-panel h3 {
	font-size: 1.8rem;
	letter-spacing: -0.04em;
	line-height: 1.05;
	margin: 16px 0 10px;
}

.cgm-leak-panel dl {
	display: grid;
	gap: 16px;
	margin: 20px 0 24px;
}

.cgm-leak-panel dt {
	color: var(--cgm-primary);
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.cgm-leak-panel dd {
	color: var(--cgm-muted);
	margin: 4px 0 0;
}

.cgm-severity {
	color: var(--cgm-primary);
	display: inline-flex;
}

.cgm-tabs {
	align-items: start;
	display: grid;
	gap: 24px;
	grid-template-columns: 310px minmax(0, 1fr);
	margin-bottom: 28px;
}

.cgm-tab-list,
.cgm-specialty-list {
	display: grid;
	gap: 10px;
}

.cgm-tab-panel p,
.cgm-specialty-panel p {
	color: var(--cgm-muted);
}

.cgm-service-grid {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 22px;
}

.cgm-service-grid span {
	background: #f7fafc;
	border: 1px solid var(--cgm-border);
	border-radius: 16px;
	color: var(--cgm-primary);
	font-weight: 800;
	padding: 14px;
}

.cgm-process {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(226, 232, 240, 0.42));
}

.cgm-timeline {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(6, 1fr);
}

.cgm-timeline article,
.cgm-proof-grid article,
.cgm-ops-board > div {
	background: var(--cgm-card);
	border: 1px solid var(--cgm-border);
	border-radius: 22px;
	box-shadow: var(--cgm-card-shadow);
	padding: 22px;
}

.cgm-timeline article span,
.cgm-proof-grid article span,
.cgm-ops-board span {
	color: var(--cgm-accent);
	font-size: 0.8rem;
	font-weight: 950;
	letter-spacing: 0.1em;
}

.cgm-timeline h3,
.cgm-proof-grid h3 {
	font-size: 1.15rem;
	letter-spacing: -0.03em;
	line-height: 1.12;
	margin: 12px 0 8px;
}

.cgm-timeline p,
.cgm-timeline small,
.cgm-proof-grid p,
.cgm-ops-board p {
	color: var(--cgm-muted);
	font-size: 0.9rem;
	line-height: 1.55;
}

.cgm-timeline small {
	color: var(--cgm-primary);
	font-weight: 850;
}

.cgm-dark-section {
	background:
		radial-gradient(circle at 18% 12%, rgba(20, 184, 166, 0.22), transparent 30rem),
		linear-gradient(145deg, #0f172a, #111f34);
	color: #fff;
	overflow: hidden;
}

.cgm-dark-grid {
	background:
		linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
	background-size: 44px 44px;
	inset: 0;
	mask-image: linear-gradient(180deg, #000 0%, transparent 80%);
	position: absolute;
}

.cgm-section-head-dark h2,
.cgm-section-head-dark p {
	color: #fff;
}

.cgm-section-head-dark p {
	color: rgba(255, 255, 255, 0.72);
}

.cgm-proof-grid {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(3, 1fr);
	position: relative;
}

.cgm-proof-grid article {
	background: rgba(255, 255, 255, 0.07);
	border-color: rgba(255, 255, 255, 0.12);
}

.cgm-proof-grid h3,
.cgm-proof-grid p {
	color: #fff;
}

.cgm-proof-grid p {
	color: rgba(255, 255, 255, 0.72);
}

.cgm-specialty-explorer {
	align-items: stretch;
}

.cgm-risk-chips span {
	background: rgba(20, 184, 166, 0.1);
	border-color: rgba(20, 184, 166, 0.22);
}

.cgm-ops {
	background: #fff;
}

.cgm-ops-board {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(2, 1fr);
}

.cgm-ops-board strong {
	display: block;
	font-size: 1rem;
	margin: 8px 0 4px;
}

.cgm-form-section {
	background:
		radial-gradient(circle at 80% 0%, rgba(20, 184, 166, 0.18), transparent 26rem),
		linear-gradient(145deg, #0f172a, #102540);
	color: #fff;
}

.cgm-form-copy h2 {
	color: #fff;
	font-size: clamp(2.35rem, 1.6rem + 2.4vw, 3.4rem);
	letter-spacing: -0.04em;
	line-height: 1.05;
	margin: 0;
}

.cgm-form-copy p {
	color: rgba(255, 255, 255, 0.74);
}

.cgm-form-points span {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.12);
	color: #d6fffa;
}

.cgm-review-form {
	background: #fff;
	color: var(--cgm-text);
}

.cgm-form-step-head {
	align-items: baseline;
	display: flex;
	justify-content: space-between;
	margin-bottom: 18px;
}

.cgm-form-step-head span {
	color: var(--cgm-accent);
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.cgm-form-step-head strong {
	color: var(--cgm-primary);
	font-size: 1.35rem;
	letter-spacing: -0.03em;
}

.cgm-review-form label {
	color: var(--cgm-primary);
	display: grid;
	font-size: 0.86rem;
	font-weight: 850;
	gap: 8px;
	margin-bottom: 14px;
}

.cgm-review-form input,
.cgm-review-form select,
.cgm-review-form textarea {
	background: #f8fafc;
	border: 1px solid var(--cgm-border);
	border-radius: 14px;
	color: var(--cgm-text);
	font: inherit;
	padding: 13px 14px;
	transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
	width: 100%;
}

.cgm-review-form input:focus,
.cgm-review-form select:focus,
.cgm-review-form textarea:focus {
	background: #fff;
	border-color: rgba(20, 184, 166, 0.72);
	box-shadow: 0 0 0 4px rgba(20, 184, 166, 0.12);
	outline: none;
}

.cgm-phi-warning {
	background: #fffbeb;
	border-left: 4px solid var(--cgm-warning);
	border-radius: 12px;
	color: #6b4b11;
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.5;
	padding: 14px 16px;
}

.cgm-form-note {
	color: var(--cgm-muted);
	font-size: 0.9rem;
	font-weight: 700;
}

.cgm-page-shell,
.cgm-article-shell {
	padding-block: 96px;
}

.cgm-post-card {
	background: #fff;
	border: 1px solid var(--cgm-border);
	border-radius: 22px;
	box-shadow: var(--cgm-card-shadow);
	margin-block: 18px;
	padding: 24px;
}

.cgm-footer {
	background: #07111f;
	color: rgba(255, 255, 255, 0.72);
	overflow: hidden;
	padding: 72px 24px 30px;
	position: relative;
}

.cgm-footer-glow {
	background: radial-gradient(circle, rgba(20, 184, 166, 0.18), transparent 30rem);
	height: 520px;
	position: absolute;
	right: -160px;
	top: -240px;
	width: 520px;
}

.cgm-footer-grid {
	display: grid;
	gap: 42px;
	grid-template-columns: 1.4fr repeat(3, 1fr);
	margin-inline: auto;
	max-width: 1160px;
	position: relative;
}

.cgm-footer h2 {
	color: #fff;
	font-size: 0.88rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.cgm-footer a {
	color: rgba(255, 255, 255, 0.74);
	display: block;
	font-size: 0.92rem;
	margin-top: 10px;
	text-decoration: none;
}

.cgm-footer a:hover,
.cgm-footer a:focus-visible {
	color: #fff;
}

.cgm-footer-warning {
	background: rgba(245, 158, 11, 0.12);
	border: 1px solid rgba(245, 158, 11, 0.24);
	border-radius: 16px;
	color: #ffe5b4;
	padding: 14px;
}

.cgm-footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	display: flex;
	flex-wrap: wrap;
	gap: 18px;
	justify-content: space-between;
	margin: 46px auto 0;
	max-width: 1160px;
	padding-top: 24px;
	position: relative;
}

.cgm-footer-bottom p {
	font-size: 0.82rem;
	margin: 0;
}

@media (max-width: 1180px) {
	.cgm-nav-shell {
		grid-template-columns: auto auto 1fr;
	}

	.cgm-menu-toggle {
		background: #fff;
		border: 1px solid var(--cgm-border);
		border-radius: 14px;
		color: var(--cgm-primary);
		display: inline-flex;
		font-weight: 850;
		justify-self: end;
		padding: 10px 13px;
	}

	.cgm-primary-nav {
		background: rgba(255, 255, 255, 0.96);
		border: 1px solid var(--cgm-border);
		border-radius: 22px;
		box-shadow: var(--cgm-card-shadow);
		display: none;
		grid-column: 1 / -1;
		padding: 18px;
	}

	.cgm-primary-nav.is-open {
		display: grid;
		justify-content: stretch;
	}

	.cgm-nav-item {
		display: grid;
		gap: 8px;
	}

	.cgm-nav-dropdown {
		background: rgba(12, 149, 238, 0.04);
		border-radius: 16px;
		box-shadow: none;
		display: grid;
		left: auto;
		min-width: 0;
		opacity: 1;
		padding: 8px;
		pointer-events: auto;
		position: static;
		transform: none;
		visibility: visible;
	}

	.cgm-nav-dropdown::before {
		display: none;
	}

	.cgm-primary-nav .cgm-nav-dropdown a {
		white-space: normal;
	}

	.cgm-nav-action span {
		display: none;
	}

	.cgm-hero-grid,
	.cgm-leak-map,
	.cgm-specialty-explorer,
	.cgm-form-grid,
	.cgm-ops-grid {
		grid-template-columns: 1fr;
	}

	.cgm-dashboard {
		max-width: 720px;
	}

	.cgm-tabs {
		grid-template-columns: 1fr;
	}

	.cgm-tab-list {
		grid-template-columns: repeat(2, 1fr);
	}

	.cgm-timeline,
	.cgm-proof-grid,
	.cgm-trust-bar-inner {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 720px) {
	.cgm-container {
		padding-inline: 18px;
	}

	.cgm-section {
		padding-block: 72px;
	}

	.cgm-nav-shell {
		gap: 12px;
		min-height: 68px;
		padding-inline: 16px;
	}

	.cgm-nav-action {
		display: none;
	}

	.cgm-hero {
		padding-top: 72px;
	}

	.cgm-hero-copy h1 {
		font-size: clamp(2.55rem, 13vw, 3.4rem);
	}

	.cgm-dashboard {
		border-radius: 24px;
		padding: 16px;
	}

	.cgm-dashboard-grid,
	.cgm-dashboard-flow,
	.cgm-leak-nodes,
	.cgm-tab-list,
	.cgm-service-grid,
	.cgm-timeline,
	.cgm-proof-grid,
	.cgm-ops-board,
	.cgm-trust-bar-inner,
	.cgm-footer-grid {
		grid-template-columns: 1fr;
	}

	.cgm-dashboard-card-wide {
		grid-column: span 1;
	}

	.cgm-leak-node,
	.cgm-tab-list button,
	.cgm-specialty-list button {
		padding: 13px;
	}

	.cgm-footer-bottom {
		display: grid;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.001ms !important;
	}
}

/* First-pass live polish: keep the hero premium without pushing the CTA too low. */
.cgm-hero {
	padding-bottom: 80px;
	padding-top: 88px;
}

.cgm-hero-grid {
	gap: 44px;
	grid-template-columns: minmax(0, 0.92fr) minmax(500px, 1.08fr);
}

.cgm-hero-copy h1 {
	font-size: clamp(2.85rem, 1.7rem + 3vw, 4rem);
	line-height: 1.04;
	max-width: 650px;
}

.cgm-hero-lede {
	margin-top: 20px;
}

.cgm-hero-copy p {
	max-width: 650px;
}

.cgm-hero-actions {
	margin-top: 22px;
}

.cgm-trust-chips {
	margin-top: 18px;
}

.cgm-dashboard {
	border-radius: 28px;
	padding: 22px;
}

.cgm-dashboard-grid {
	gap: 12px;
	margin-top: 20px;
}

.cgm-dashboard-card {
	min-height: 96px;
	padding: 15px;
}

.cgm-dashboard-card strong {
	font-size: 1.78rem;
}

@media (max-width: 1180px) {
	.cgm-hero-grid {
		grid-template-columns: 1fr;
	}

	.cgm-dashboard {
		margin-inline: auto;
		width: min(100%, 720px);
	}
}

@media (min-width: 1181px) {
	.admin-bar .cgm-site-header {
		top: 32px;
	}
}

@media (max-width: 720px) {
	.cgm-hero {
		padding-bottom: 64px;
		padding-top: 56px;
	}

	.cgm-hero-copy h1 {
		font-size: clamp(2.05rem, 9.4vw, 2.65rem);
		line-height: 1.06;
	}

	.cgm-hero-lede {
		font-size: 1rem !important;
		margin-top: 18px;
	}

	.cgm-hero-copy p {
		font-size: 0.98rem;
		line-height: 1.62;
	}

	.cgm-hero-copy p:not(.cgm-hero-lede) {
		display: none;
	}

	.cgm-hero-actions {
		gap: 10px;
		margin-top: 18px;
	}

	.cgm-button {
		padding: 13px 15px;
	}

	.cgm-dashboard-top {
		align-items: flex-start;
		gap: 12px;
	}
}

/* Final desktop hero balance: make the CTA part of the first-screen read. */
@media (min-width: 1181px) {
	.cgm-hero {
		padding-top: 72px !important;
	}

	.cgm-hero-copy h1 {
		font-size: clamp(2.9rem, 2.4vw + 1.35rem, 3.55rem) !important;
		line-height: 1.05 !important;
		max-width: 620px !important;
	}

	.cgm-hero-lede {
		font-size: 1.02rem !important;
		margin-top: 18px !important;
	}

	.cgm-hero-copy p:not(.cgm-hero-lede) {
		font-size: 0.98rem !important;
		line-height: 1.55 !important;
		margin-top: 12px !important;
	}

	.cgm-dashboard {
		transform: scale(0.94);
		transform-origin: top right;
	}
}


/* Brand alignment: real CG Meditrans logo and brighter medical-blue palette. */
:root {
	--cgm-primary: #0c95ee;
	--cgm-accent: #21b8ff;
	--cgm-dark: #071b2d;
	--cgm-text: #071827;
	--cgm-muted: #405367;
	--cgm-border: #d7e6f0;
}

body {
	background:
		radial-gradient(circle at 18% 8%, rgba(12, 149, 238, 0.1), transparent 30rem),
		linear-gradient(180deg, #f5fbff 0%, #edf7fc 100%);
}

.cgm-brand-logo {
	align-items: center;
	background: rgba(255, 255, 255, 0.84);
	border: 1px solid rgba(12, 149, 238, 0.22);
	border-radius: 12px;
	box-shadow: 0 10px 24px rgba(12, 149, 238, 0.08);
	display: inline-flex;
	height: 48px;
	justify-content: center;
	overflow: hidden;
	padding: 5px 8px;
	width: 128px;
}

.cgm-brand-logo img {
	display: block;
	height: 42px;
	object-fit: contain;
	width: auto;
}

.cgm-brand-logo-footer {
	background: rgba(255, 255, 255, 0.95);
	margin-bottom: 18px;
}

.cgm-button-primary {
	background: linear-gradient(135deg, #0c95ee, #0874c8) !important;
	box-shadow: 0 14px 30px rgba(12, 149, 238, 0.24) !important;
}

.cgm-button-secondary,
.cgm-primary-nav a,
.cgm-inline-link,
.cgm-form-step-head strong,
.cgm-review-form label,
.cgm-service-grid span,
.cgm-timeline small {
	color: #0a2752 !important;
}

.cgm-eyebrow,
.cgm-dashboard-kicker,
.cgm-timeline article span,
.cgm-proof-grid article span,
.cgm-ops-board span {
	color: #0c95ee !important;
}

.cgm-dashboard,
.cgm-form-section {
	background:
		radial-gradient(circle at 75% 0%, rgba(12, 149, 238, 0.28), transparent 18rem),
		linear-gradient(145deg, #0a2752, #030405 70%) !important;
}

.cgm-progress-track span,
.cgm-bar-chart i {
	background: linear-gradient(180deg, #97d7f3, #0c95ee) !important;
}

.cgm-status-pill {
	background: rgba(12, 149, 238, 0.16) !important;
	border-color: rgba(151, 215, 243, 0.36) !important;
}

.cgm-site-header.is-scrolled,
.cgm-site-header {
	background: rgba(245, 251, 255, 0.9) !important;
}

@media (max-width: 720px) {
	.cgm-brand-logo {
		height: 42px;
		width: 112px;
	}

	.cgm-brand-logo img {
		height: 36px;
	}
}


/* Header balance after adding the production logo. */
.cgm-nav-shell { gap: 16px; }
.cgm-primary-nav { gap: 20px; }
.cgm-primary-nav a { white-space: nowrap; }
.cgm-nav-action span { font-size: 0.78rem; }
@media (min-width: 1181px) and (max-width: 1320px) {
	.cgm-nav-action span { display: none; }
}


/* Logo cleanup: remove the artificial header box around the provided logo. */
.cgm-brand-logo {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	height: auto !important;
	padding: 0 !important;
	width: auto !important;
}

.cgm-brand-logo img {
	height: auto !important;
	max-height: 54px !important;
	object-fit: contain !important;
	width: 82px !important;
}

@media (max-width: 720px) {
	.cgm-brand-logo img {
		max-height: 48px !important;
		width: 76px !important;
	}
}


/* Hero photo pivot: replace the dashboard-led hero with a polished doctor visual. */
.cgm-hero-photo-card {
	background: linear-gradient(145deg, rgba(7, 27, 45, 0.08), rgba(12, 149, 238, 0.08));
	border: 1px solid rgba(12, 149, 238, 0.18);
	border-radius: 30px;
	box-shadow: 0 34px 90px rgba(7, 27, 45, 0.22);
	min-height: 560px;
	overflow: hidden;
	position: relative;
}

.cgm-hero-photo-card::before {
	background: linear-gradient(90deg, rgba(245, 251, 255, 0.62) 0%, rgba(245, 251, 255, 0.18) 38%, rgba(245, 251, 255, 0) 68%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 1;
}

.cgm-hero-photo-card img {
	display: block;
	height: 100%;
	inset: 0;
	object-fit: cover;
	object-position: center right;
	position: absolute;
	width: 100%;
}

.cgm-hero-photo-overlay {
	bottom: 26px;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	left: 26px;
	position: absolute;
	z-index: 2;
}

.cgm-hero-photo-overlay span,
.cgm-hero-photo-note {
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	background: rgba(255, 255, 255, 0.78);
	border: 1px solid rgba(255, 255, 255, 0.72);
	border-radius: 999px;
	box-shadow: 0 14px 34px rgba(7, 27, 45, 0.12);
	color: #0a2752;
	font-size: 0.78rem;
	font-weight: 850;
	padding: 9px 12px;
}

.cgm-hero-photo-note {
	border-radius: 16px;
	right: 26px;
	position: absolute;
	top: 26px;
	z-index: 2;
}

@media (min-width: 1181px) {
	.cgm-hero-grid {
		grid-template-columns: minmax(0, 0.92fr) minmax(520px, 1.08fr) !important;
	}

	.cgm-hero-photo-card {
		transform: translateY(4px);
	}
}

@media (max-width: 1180px) {
	.cgm-hero-photo-card {
		margin-inline: auto;
		min-height: 500px;
		width: min(100%, 760px);
	}
}

@media (max-width: 720px) {
	.cgm-hero-photo-card {
		border-radius: 24px;
		min-height: 420px;
	}

	.cgm-hero-photo-card::before {
		background: linear-gradient(180deg, rgba(245, 251, 255, 0.3), rgba(245, 251, 255, 0));
	}

	.cgm-hero-photo-overlay {
		bottom: 18px;
		left: 18px;
		right: 18px;
	}

	.cgm-hero-photo-note {
		left: 18px;
		right: auto;
		top: 18px;
	}
}


/* Contact page route and form presentation. */
.cgm-contact-main {
	background:
		radial-gradient(circle at 18% 5%, rgba(12, 149, 238, 0.12), transparent 28rem),
		linear-gradient(180deg, #f5fbff 0%, #eef8fd 100%);
}

.cgm-contact-hero {
	padding-bottom: 42px;
	padding-top: 128px;
}

.cgm-contact-hero-grid {
	align-items: start;
	display: grid;
	gap: 34px;
	grid-template-columns: minmax(0, 1fr) minmax(340px, 0.62fr);
}

.cgm-contact-hero h1 {
	font-size: clamp(2.8rem, 4vw, 5rem);
	letter-spacing: -0.055em;
	line-height: 0.98;
	margin-bottom: 22px;
	max-width: 760px;
}

.cgm-contact-card {
	background: rgba(255, 255, 255, 0.82);
	border: 1px solid rgba(12, 149, 238, 0.18);
	border-radius: 24px;
	box-shadow: 0 22px 60px rgba(7, 27, 45, 0.1);
	padding: 26px;
}

.cgm-contact-card strong {
	color: #0a2752;
	display: block;
	font-size: 1.05rem;
	margin-bottom: 16px;
}

.cgm-contact-card p {
	font-size: 0.94rem;
	line-height: 1.55;
	margin: 0 0 16px;
}

.cgm-contact-card a {
	color: #0c95ee;
	font-weight: 800;
	text-decoration: none;
}

.cgm-contact-page .cgm-form-section {
	padding-top: 70px;
}

@media (max-width: 900px) {
	.cgm-contact-hero-grid {
		grid-template-columns: 1fr;
	}

	.cgm-contact-hero {
		padding-top: 86px;
	}
}

@media (max-width: 720px) {
	.cgm-contact-hero h1 {
		font-size: clamp(2.2rem, 12vw, 3.25rem);
	}
}


/* Premium polish pass: hero balance and contact form priority. */
@media (min-width: 1181px) {
	.cgm-hero {
		padding-bottom: 54px !important;
		padding-top: 92px !important;
	}

	.admin-bar .cgm-hero {
		padding-top: 108px !important;
	}

	.cgm-hero-grid {
		align-items: center !important;
		gap: 42px !important;
		grid-template-columns: minmax(0, 0.9fr) minmax(560px, 1.1fr) !important;
	}

	.cgm-hero-copy h1 {
		font-size: clamp(2.7rem, 2.1vw + 1.35rem, 3.35rem) !important;
		line-height: 1.07 !important;
		max-width: 590px !important;
	}

	.cgm-hero-lede {
		font-size: 1rem !important;
		line-height: 1.65 !important;
		margin-top: 18px !important;
	}

	.cgm-hero-copy p:not(.cgm-hero-lede) {
		font-size: 0.95rem !important;
		line-height: 1.58 !important;
		max-width: 585px !important;
	}

	.cgm-hero-actions {
		align-items: center !important;
		flex-wrap: nowrap !important;
		gap: 12px !important;
		margin-top: 20px !important;
	}

	.cgm-hero-actions .cgm-button {
		font-size: 0.84rem !important;
		padding: 13px 17px !important;
	}

	.cgm-hero-photo-card {
		min-height: 500px !important;
		transform: none !important;
	}

	.cgm-hero-photo-card img {
		object-position: center right !important;
	}
}

@media (max-width: 720px) {
	.cgm-hero {
		padding-bottom: 44px !important;
		padding-top: 44px !important;
	}

	.admin-bar .cgm-hero {
		padding-top: 52px !important;
	}

	.cgm-hero-copy h1 {
		font-size: clamp(1.95rem, 9.5vw, 2.55rem) !important;
		line-height: 1.08 !important;
	}

	.cgm-hero-lede {
		line-height: 1.58 !important;
	}

	.cgm-hero-photo-card {
		margin-top: 20px !important;
		min-height: 340px !important;
	}

	.cgm-hero-photo-card img {
		object-position: 58% center !important;
	}
}

.cgm-contact-page .cgm-contact-main {
	background:
		radial-gradient(circle at 18% 5%, rgba(12, 149, 238, 0.12), transparent 28rem),
		linear-gradient(180deg, #f5fbff 0%, #eef8fd 52%, #071b2d 52%, #071b2d 100%);
}

.cgm-contact-page .cgm-contact-hero {
	padding-bottom: 34px !important;
	padding-top: 112px !important;
}

.cgm-contact-page .cgm-contact-hero-grid {
	align-items: start;
	display: grid;
	gap: 30px;
	grid-template-columns: minmax(0, 0.98fr) minmax(320px, 0.62fr);
}

.cgm-contact-page .cgm-contact-hero h1 {
	font-size: clamp(2.45rem, 3.4vw, 4.35rem) !important;
	letter-spacing: -0.055em;
	line-height: 1.02 !important;
	margin-bottom: 18px !important;
	max-width: 760px;
}

.cgm-contact-page .cgm-contact-card {
	background: rgba(255, 255, 255, 0.86);
	border: 1px solid rgba(12, 149, 238, 0.18);
	border-radius: 22px;
	box-shadow: 0 20px 52px rgba(7, 27, 45, 0.1);
	padding: 24px;
}

.cgm-contact-page .cgm-contact-card strong,
.cgm-contact-page .cgm-contact-card span {
	color: #0a2752;
	display: block;
	font-weight: 900;
	margin-bottom: 12px;
}

.cgm-contact-page .cgm-contact-card ul {
	color: var(--cgm-muted);
	line-height: 1.7;
	margin: 0;
	padding-left: 19px;
}

.cgm-contact-page .cgm-form-section {
	padding-bottom: 72px !important;
	padding-top: 46px !important;
}

.cgm-contact-page .cgm-form-section .cgm-form-copy h2 {
	font-size: clamp(2rem, 3vw, 3.55rem) !important;
}

.cgm-contact-page .cgm-contact-details-band {
	background: #071b2d;
	color: #fff;
	padding-top: 34px !important;
}

.cgm-contact-detail-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cgm-contact-detail-grid article {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 18px;
	padding: 18px;
}

.cgm-contact-detail-grid span {
	color: #97d7f3;
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.cgm-contact-detail-grid p,
.cgm-contact-detail-grid a {
	color: rgba(255, 255, 255, 0.82);
	font-size: 0.9rem;
	line-height: 1.55;
	margin-bottom: 0;
	text-decoration: none;
}

@media (max-width: 980px) {
	.cgm-contact-page .cgm-contact-hero-grid,
	.cgm-contact-detail-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 720px) {
	.cgm-contact-page .cgm-contact-hero {
		padding-top: 58px !important;
	}

	.cgm-contact-page .cgm-contact-hero h1 {
		font-size: clamp(2.05rem, 10.5vw, 2.9rem) !important;
	}

	.cgm-contact-page .cgm-contact-card {
		padding: 20px;
	}

	.cgm-contact-page .cgm-form-section {
		padding-top: 34px !important;
	}
}


/* V0.2.1 correction: remove the over-tall hero feel and keep the CTA in the first screen. */
@media (min-width: 1181px) {
	.cgm-hero {
		padding-bottom: 42px !important;
		padding-top: 50px !important;
	}

	.admin-bar .cgm-hero {
		padding-top: 58px !important;
	}

	.cgm-hero-grid {
		align-items: center !important;
		gap: 36px !important;
		grid-template-columns: minmax(0, 0.88fr) minmax(560px, 1.12fr) !important;
	}

	.cgm-hero-copy h1 {
		font-size: clamp(2.45rem, 1.8vw + 1.25rem, 3rem) !important;
		line-height: 1.08 !important;
		max-width: 560px !important;
	}

	.cgm-hero-lede {
		font-size: 0.98rem !important;
		line-height: 1.58 !important;
		margin-top: 16px !important;
		max-width: 565px !important;
	}

	.cgm-hero-copy p:not(.cgm-hero-lede) {
		display: none !important;
	}

	.cgm-hero-actions {
		gap: 12px !important;
		margin-top: 18px !important;
	}

	.cgm-hero-actions .cgm-button {
		border-radius: 14px !important;
		font-size: 0.82rem !important;
		line-height: 1.15 !important;
		padding: 12px 16px !important;
	}

	.cgm-trust-chips {
		margin-top: 16px !important;
	}

	.cgm-trust-chips span {
		font-size: 0.78rem !important;
		padding: 7px 10px !important;
	}

	.cgm-hero-photo-card {
		min-height: 430px !important;
	}

	.cgm-hero-photo-overlay {
		bottom: 20px !important;
		left: 20px !important;
	}

	.cgm-hero-photo-note {
		right: 20px !important;
		top: 20px !important;
	}
}

@media (min-width: 1181px) and (max-width: 1320px) {
	.cgm-hero-actions {
		flex-wrap: wrap !important;
	}
}

@media (max-width: 720px) {
	.cgm-eyebrow {
		font-size: 0.72rem !important;
		letter-spacing: 0.16em !important;
	}

	.cgm-hero-copy h1 {
		font-size: clamp(1.88rem, 9vw, 2.38rem) !important;
	}

	.cgm-hero-photo-card {
		min-height: 310px !important;
	}
}


/* V0.2.2 mobile priority: show the hero image/form sooner instead of stacking proof cards first. */
@media (max-width: 720px) {
	.cgm-hero {
		padding-bottom: 34px !important;
	}

	.cgm-trust-chips {
		display: none !important;
	}

	.cgm-hero-photo-card {
		margin-top: 14px !important;
		min-height: 292px !important;
	}

	.cgm-hero-photo-overlay span,
	.cgm-hero-photo-note {
		font-size: 0.68rem !important;
		padding: 7px 9px !important;
	}

	.cgm-hero-photo-note {
		display: none !important;
	}

	.cgm-contact-page .cgm-contact-hero {
		padding-bottom: 16px !important;
	}

	.cgm-contact-review-card {
		display: none !important;
	}

	.cgm-contact-page .cgm-form-section {
		padding-top: 20px !important;
	}

	.cgm-contact-page .cgm-form-section .cgm-form-copy p,
	.cgm-contact-page .cgm-form-points {
		display: none !important;
	}

	.cgm-contact-page .cgm-form-section .cgm-form-copy h2 {
		font-size: clamp(1.75rem, 9vw, 2.35rem) !important;
	}
}


/* V0.3.0 TailwindPlus-inspired homepage hero: white stage, bold type, product mockup. */
body.home,
body.blog {
	background:
		repeating-linear-gradient(135deg, rgba(148, 163, 184, 0.08) 0 1px, transparent 1px 14px),
		#020617 !important;
}

body.home .cgm-site-header,
body.blog .cgm-site-header {
	background: rgba(255, 255, 255, 0.92) !important;
	border-bottom: 1px solid rgba(226, 232, 240, 0.86) !important;
	box-shadow: none !important;
}

.cgm-taxpal-hero {
	background: transparent !important;
	overflow: hidden;
	padding: 118px 20px 0 !important;
}

.admin-bar .cgm-taxpal-hero {
	padding-top: 126px !important;
}

.cgm-taxpal-stage {
	background:
		radial-gradient(circle at 48% 44%, rgba(12, 149, 238, 0.1), transparent 23rem),
		linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
	border: 1px solid rgba(226, 232, 240, 0.92);
	border-radius: 32px 32px 0 0;
	box-shadow: 0 40px 90px rgba(2, 6, 23, 0.3);
	display: grid;
	grid-template-columns: minmax(0, 0.94fr) minmax(420px, 0.82fr);
	min-height: 760px;
	overflow: hidden;
	padding: 70px 68px 0;
	position: relative;
}

.cgm-taxpal-stage::before {
	background:
		linear-gradient(rgba(15, 23, 42, 0.03) 1px, transparent 1px),
		linear-gradient(90deg, rgba(15, 23, 42, 0.03) 1px, transparent 1px);
	background-size: 58px 58px;
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.cgm-taxpal-copy {
	align-self: center;	
	padding-bottom: 96px;
	position: relative;	z-index: 2;
}

.cgm-taxpal-eyebrow {
	color: #0c95ee;
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0.19em;
	margin-bottom: 28px;
	text-transform: uppercase;
}

.cgm-taxpal-copy h1 {
	color: #09111f;
	font-size: clamp(4rem, 5vw, 6.9rem) !important;
	font-weight: 850;
	letter-spacing: -0.055em;
	line-height: 0.97 !important;
	margin: 0 auto 28px;
	max-width: 880px !important;
}

.cgm-taxpal-copy h1 span {
	color: #2463eb;
	display: inline-block;
	position: relative;
}

.cgm-taxpal-copy h1 span::after {
	background: rgba(12, 149, 238, 0.24);
	border-radius: 999px;
	bottom: 0.07em;
	content: "";
	height: 0.12em;
	left: -0.03em;
	position: absolute;
	transform: rotate(-2deg);
	width: 106%;
	z-index: -1;
}

.cgm-taxpal-copy .cgm-hero-lede {
	color: #475569;
	font-size: clamp(1rem, 1.15vw, 1.22rem) !important;
	line-height: 1.75 !important;
	margin: 0 0 0.5rem !important;
	max-width: 720px !important;
}

.cgm-taxpal-copy .cgm-hero-actions {
	gap: 16px !important;
	margin-top: 34px !important;
}

.cgm-taxpal-copy .cgm-button {
	border-radius: 999px !important;
	font-size: 0.95rem !important;
	font-weight: 900 !important;
	padding: 15px 22px !important;
}

.cgm-taxpal-copy .cgm-button-secondary {
	background: #fff !important;
	border-color: #e2e8f0 !important;
	box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06) !important;
}

.cgm-taxpal-copy .cgm-trust-chips {
	margin-top: 28px !important;
}

.cgm-taxpal-copy .cgm-trust-chips span {
	background: #fff !important;
	border-color: #e5edf5 !important;
	box-shadow: 0 10px 26px rgba(15, 23, 42, 0.05);
	color: #0c95ee !important;
}

.cgm-product-mockup {
	align-self: end;
	min-height: 620px;
	position: relative;
	z-index: 2;
}

.cgm-mock-browser {
	background: rgba(255, 255, 255, 0.88);
	border: 1px solid #e2e8f0;
	border-radius: 26px;
	box-shadow: 0 30px 80px rgba(15, 23, 42, 0.16);
	left: -10px;
	overflow: hidden;
	padding: 18px;
	position: absolute;
	right: 20px;
	top: 116px;
}

.cgm-mock-browser-top {
	align-items: center;
	border-bottom: 1px solid #edf2f7;
	display: flex;
	gap: 8px;
	margin: -18px -18px 18px;
	padding: 14px 16px;
}

.cgm-mock-browser-top span {
	background: #dbe7f3;
	border-radius: 999px;
	height: 10px;
	width: 10px;
}

.cgm-mock-browser-top strong {
	color: #0f172a;
	font-size: 0.84rem;
	font-weight: 900;
	margin-left: 8px;
}

.cgm-mock-grid {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cgm-mock-metric,
.cgm-mock-chart {
	background: #f8fafc;
	border: 1px solid #e8eef5;
	border-radius: 18px;
	padding: 16px;
}

.cgm-mock-wide {
	grid-column: span 2;
}

.cgm-mock-metric small,
.cgm-mock-metric em {
	color: #64748b;
	display: block;
	font-size: 0.76rem;
	font-style: normal;
	font-weight: 750;
}

.cgm-mock-metric strong {
	color: #0f172a;
	display: block;
	font-size: 1.32rem;
	letter-spacing: -0.03em;
	line-height: 1.1;
	margin: 7px 0;
}

.cgm-mock-chart {
	align-items: end;
	display: flex;
	gap: 10px;
	height: 120px;
}

.cgm-mock-chart i {
	background: linear-gradient(180deg, #0c95ee, #97d7f3);
	border-radius: 999px 999px 9px 9px;
	display: block;
	height: var(--h);
	width: 100%;
}

.cgm-mock-phone {
	background: rgba(255, 255, 255, 0.96);
	border: 1px solid #dbe4ed;
	border-radius: 34px;
	box-shadow: 0 34px 90px rgba(15, 23, 42, 0.22);
	min-height: 430px;
	padding: 34px 32px;
	position: absolute;
	right: -36px;
	top: 246px;
	width: min(360px, 78%);
}

.cgm-phone-top {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-bottom: 72px;
}

.cgm-phone-top span {
	background: #2463eb;
	border-radius: 999px;
	height: 42px;
	position: relative;
	width: 42px;
}

.cgm-phone-top span::after {
	background: #fff;
	border-radius: 999px 999px 12px 12px;
	bottom: 9px;
	content: "";
	height: 10px;
	left: 8px;
	position: absolute;
	width: 26px;
}

.cgm-phone-top b {
	background: #2463eb;
	border-radius: 999px;
	color: #fff;
	font-size: 0.86rem;
	padding: 11px 18px;
}

.cgm-phone-top i,
.cgm-phone-top i::before,
.cgm-phone-top i::after {
	background: #334155;
	border-radius: 999px;
	display: block;
	height: 3px;
	position: relative;
	width: 20px;
}

.cgm-phone-top i::before,
.cgm-phone-top i::after {
	content: "";
	position: absolute;
}

.cgm-phone-top i::before { top: -7px; }
.cgm-phone-top i::after { top: 7px; }

.cgm-mock-phone h2 {
	color: #0f172a;
	font-size: clamp(2.6rem, 4vw, 4rem);
	letter-spacing: -0.06em;
	line-height: 0.98;
	margin: 0 0 18px;
}

.cgm-mock-phone h2 span {
	color: #2463eb;
	position: relative;
}

.cgm-mock-phone h2 span::after {
	background: rgba(12, 149, 238, 0.24);
	border-radius: 999px;
	bottom: 0.02em;
	content: "";
	height: 0.13em;
	left: -0.08em;
	position: absolute;
	transform: rotate(-4deg);
	width: 114%;
	z-index: -1;
}

.cgm-mock-phone p {
	color: #64748b;
	font-size: 0.92rem;
	line-height: 1.6;
}

@media (max-width: 1180px) {
	.cgm-taxpal-stage {
		grid-template-columns: 1fr;
		min-height: auto;
		padding: 56px 30px 0;
	}

	.cgm-taxpal-copy {
		padding-bottom: 28px;
		text-align: center;
	}

	.cgm-taxpal-copy .cgm-hero-actions,
	.cgm-taxpal-copy .cgm-trust-chips {
		justify-content: center;
	}

	.cgm-product-mockup {
		margin-inline: auto;
		min-height: 520px;
		width: min(100%, 760px);
	}
}

@media (max-width: 720px) {
	.cgm-taxpal-hero {
		padding: 78px 10px 0 !important;
	}

	.admin-bar .cgm-taxpal-hero {
		padding-top: 86px !important;
	}

	.cgm-taxpal-stage {
		border-radius: 24px 24px 0 0;
		padding: 44px 18px 0;
	}

	.cgm-taxpal-copy h1 {
		font-size: clamp(2.65rem, 14vw, 4.05rem) !important;
		line-height: 0.98 !important;
	}

	.cgm-taxpal-copy .cgm-hero-lede {
		font-size: 0.98rem !important;
		line-height: 1.65 !important;
	}

	.cgm-taxpal-copy .cgm-hero-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.cgm-taxpal-copy .cgm-button {
		justify-content: center;
	}

	.cgm-product-mockup {
		min-height: 390px;
		width: 100%;
	}

	.cgm-mock-browser {
		left: 0;
		right: 0;
		top: 24px;
	}

	.cgm-mock-phone {
		min-height: 300px;
		padding: 24px 22px;
		right: -18px;
		top: 130px;
		width: 70%;
	}

	.cgm-phone-top {
		margin-bottom: 42px;
	}

	.cgm-phone-top b {
		display: none;
	}

	.cgm-mock-phone h2 {
		font-size: clamp(2rem, 10vw, 3rem);
	}

	.cgm-mock-phone p,
	.cgm-mock-metric em,
	.cgm-mock-grid .cgm-mock-metric:not(.cgm-mock-wide),
	.cgm-mock-chart {
		display: none;
	}
}


/* V0.4.1 Salient-style RCM content and brand-color refinement. */
body.home,
body.blog {
	background: #fff !important;
}

body.home .cgm-site-header,
body.blog .cgm-site-header {
	background: rgba(255, 255, 255, 0.94) !important;
	border-bottom: 0 !important;
	box-shadow: none !important;
}

body.home .cgm-nav-shell,
body.blog .cgm-nav-shell {
	max-width: 1320px;
}

.cgm-salient-hero {
	background: #fff;
	padding: 126px 0 84px;
	position: relative;
}

.admin-bar .cgm-salient-hero {
	padding-top: 138px;
}

.cgm-salient-hero-inner {
	max-width: 1120px;
	text-align: center;
}

.cgm-salient-kicker,
.cgm-taxpal-eyebrow {
	color: #0c95ee;
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0.18em;
	margin-bottom: 26px;
	text-transform: uppercase;
}

.cgm-salient-hero h1 {
	color: #08111f;
	font-size: clamp(3.6rem, 6.8vw, 6.95rem);
	font-weight: 850;
	letter-spacing: -0.06em;
	line-height: 0.98;
	margin: 0 auto;
	max-width: 1050px;
}

.cgm-salient-hero h1 span,
.cgm-salient-gradient-cta h2 span {
	color: #1e3a5f;
	display: inline-block;
	position: relative;
}

.cgm-salient-hero h1 span::after {
	background: rgba(12, 149, 238, 0.22);
	border-radius: 999px;
	bottom: 0.04em;
	content: "";
	height: 0.12em;
	left: -0.06em;
	position: absolute;
	transform: rotate(-3deg);
	width: 112%;
	z-index: -1;
}

.cgm-salient-lede {
	color: #475569;
	font-size: 1.08rem;
	line-height: 1.75;
	margin: 28px auto 0;
	max-width: 760px;
}

.cgm-salient-actions {
	align-items: center;
	display: flex;
	gap: 14px;
	justify-content: center;
	margin-top: 34px;
}

.cgm-salient-actions .cgm-button,
.cgm-salient-gradient-cta .cgm-button,
.cgm-engagement-grid a {
	border-radius: 999px !important;
	font-weight: 900 !important;
}

.cgm-salient-proof-row {
	background: #fff;
	padding: 22px 0 78px;
	text-align: center;
}

.cgm-salient-proof-row p {
	color: #0f172a;
	font-size: 0.9rem;
	font-weight: 800;
	margin: 0 0 28px;
}

.cgm-salient-proof-logos {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 22px 34px;
	justify-content: center;
}

.cgm-salient-proof-logos span {
	align-items: center;
	color: #334155;
	display: inline-flex;
	font-size: 1.03rem;
	font-weight: 900;
	gap: 10px;
}

.cgm-salient-proof-logos span::before {
	border: 2px solid #94a3b8;
	border-radius: 999px;
	color: #0c95ee;
	content: "";
	height: 22px;
	width: 22px;
}

.cgm-salient-blue,
.cgm-salient-gradient-cta {
	background:
		radial-gradient(circle at 55% 55%, rgba(151, 215, 243, 0.65), transparent 24rem),
		linear-gradient(135deg, #1e3a5f 0%, #0f172a 72%, #14b8a6 125%);
	color: #fff;
	overflow: hidden;
	padding: 104px 0 0;
}

.cgm-salient-blue-head {
	text-align: center;
}

.cgm-salient-blue h2,
.cgm-salient-gradient-cta h2 {
	color: #fff;
	font-size: clamp(2.3rem, 4vw, 4.35rem);
	font-weight: 760;
	letter-spacing: -0.045em;
	line-height: 1.05;
	margin: 0 auto 18px;
	max-width: 1000px;
}

.cgm-salient-blue-head p,
.cgm-salient-gradient-cta p {
	color: rgba(255, 255, 255, 0.78);
	font-size: 1.04rem;
	line-height: 1.75;
	margin: 0 auto;
	max-width: 740px;
}

.cgm-salient-system-grid {
	display: grid;
	gap: 48px;
	grid-template-columns: minmax(280px, 0.38fr) minmax(560px, 0.62fr);
	margin-top: 74px;
}

.cgm-salient-system-list {
	display: grid;
	gap: 18px;
	padding-bottom: 92px;
}

.cgm-salient-system-list article {
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 16px;
	padding: 22px;
}

.cgm-salient-system-list article:not(.is-active) {
	background: transparent;
	border-color: transparent;
}

.cgm-salient-system-list h3 {
	color: #fff;
	font-size: 1.12rem;
	margin: 0 0 8px;
}

.cgm-salient-system-list p {
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.92rem;
	line-height: 1.65;
	margin: 0;
}

.cgm-salient-browser,
.cgm-salient-ledger {
	background: #e8eef6;
	border: 1px solid rgba(15, 23, 42, 0.1);
	border-radius: 28px 28px 0 0;
	box-shadow: 0 34px 80px rgba(15, 23, 42, 0.18);
	overflow: hidden;
}

.cgm-salient-browser {
	align-self: end;
	min-height: 560px;
}

.cgm-browser-bar {
	align-items: center;
	background: #f8fafc;
	display: flex;
	gap: 8px;
	padding: 15px 20px;
}

.cgm-browser-bar i {
	background: #cbd5e1;
	border-radius: 999px;
	height: 10px;
	width: 10px;
}

.cgm-browser-bar span {
	background: #edf2f7;
	border-radius: 8px;
	color: #94a3b8;
	font-size: 0.76rem;
	font-weight: 800;
	margin-left: auto;
	padding: 6px 80px;
}

.cgm-browser-body {
	display: grid;
	grid-template-columns: 180px 1fr;
	min-height: 500px;
}

.cgm-browser-body aside {
	background: #f8fafc;
	border-right: 1px solid #e2e8f0;
	display: flex;
	flex-direction: column;
	gap: 13px;
	padding: 30px 24px;
}

.cgm-browser-body aside strong {
	color: #0f172a;
	font-size: 0.95rem;
	margin-bottom: 14px;
}

.cgm-browser-body aside a {
	color: #64748b;
	font-size: 0.86rem;
	font-weight: 750;
}

.cgm-browser-table {
	background: #fff;
	padding: 30px;
}

.cgm-browser-table h3,
.cgm-ledger-card h3,
.cgm-ledger-side h3 {
	color: #0f172a;
	font-size: 1.08rem;
	margin: 0 0 18px;
}

.cgm-table-row,
.cgm-ledger-row {
	display: grid;
	gap: 16px;
	grid-template-columns: 1.4fr 0.8fr 0.8fr;
	padding: 14px 0;
}

.cgm-table-row,
.cgm-ledger-row {
	border-bottom: 1px solid #edf2f7;
	color: #475569;
	font-size: 0.86rem;
}

.cgm-table-row.is-head,
.cgm-ledger-row.is-head {
	color: #94a3b8;
	font-size: 0.75rem;
	font-weight: 900;
	text-transform: uppercase;
}

.cgm-salient-features {
	background: #fff;
	padding: 120px 0 112px;
}

.cgm-salient-section-head {
	text-align: center;
}

.cgm-salient-section-head h2 {
	color: #0f172a;
	font-size: clamp(2.25rem, 3.4vw, 4.2rem);
	letter-spacing: -0.05em;
	line-height: 1.08;
	margin: 0 auto 18px;
	max-width: 900px;
}

.cgm-salient-section-head p {
	color: #64748b;
	font-size: 1.02rem;
	line-height: 1.7;
	margin: 0 auto;
	max-width: 720px;
}

.cgm-feature-columns {
	display: grid;
	gap: 48px;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 76px;
}

.cgm-feature-columns article span {
	align-items: center;
	background: #1e3a5f;
	border-radius: 12px;
	color: #fff;
	display: inline-flex;
	font-size: 0.78rem;
	font-weight: 900;
	height: 42px;
	justify-content: center;
	margin-bottom: 24px;
	width: 42px;
}

.cgm-feature-columns article h3 {
	color: #0f172a;
	font-size: 1.35rem;
	letter-spacing: -0.02em;
	margin: 0 0 16px;
}

.cgm-feature-columns article p {
	color: #64748b;
	font-size: 0.96rem;
	line-height: 1.75;
	margin: 0;
}

.cgm-salient-ledger {
	display: grid;
	grid-template-columns: 1fr 0.36fr;
	margin-top: 82px;
	padding: 62px 58px;
}

.cgm-ledger-card,
.cgm-ledger-side {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 18px;
	box-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
	padding: 26px;
}

.cgm-ledger-side {
	background: #f8fafc;
	transform: translateX(32px);
}

.cgm-ledger-side p {
	color: #64748b;
	font-size: 0.94rem;
	line-height: 1.7;
}

.cgm-salient-gradient-cta {
	padding: 96px 0;
	text-align: center;
}

.cgm-salient-gradient-cta .cgm-button {
	background: #fff !important;
	color: #0f172a !important;
	margin-top: 28px;
}

.cgm-salient-proof-cards {
	background: #f8fafc;
	padding: 112px 0;
}

.cgm-proof-card-grid {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 64px;
}

.cgm-proof-card-grid article {
	background: #fff;
	border: 1px solid #edf2f7;
	border-radius: 18px;
	box-shadow: 0 18px 44px rgba(15, 23, 42, 0.06);
	padding: 30px;
}

.cgm-proof-card-grid h3 {
	color: #0f172a;
	font-size: 1.18rem;
	margin: 0 0 14px;
}

.cgm-proof-card-grid p {
	color: #64748b;
	font-size: 0.95rem;
	line-height: 1.7;
	margin: 0;
}

.cgm-salient-dark {
	background: #0f172a;
	color: #fff;
	padding: 120px 0;
}

.cgm-dark-head h2,
.cgm-dark-head p {
	color: #fff;
}

.cgm-dark-head p {
	color: rgba(255, 255, 255, 0.64);
}

.cgm-engagement-grid {
	display: grid;
	gap: 36px;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 74px;
}

.cgm-engagement-grid article {
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 24px;
	padding: 34px;
}

.cgm-engagement-grid article.is-featured {
	background: #1e3a5f;
	border-color: #1e3a5f;
	box-shadow: 0 24px 70px rgba(37, 99, 235, 0.3);
	transform: translateY(-18px);
}

.cgm-engagement-grid h3 {
	color: #fff;
	font-size: 1.65rem;
	letter-spacing: -0.03em;
	margin: 0 0 14px;
}

.cgm-engagement-grid p,
.cgm-engagement-grid li {
	color: rgba(255, 255, 255, 0.68);
	font-size: 0.95rem;
	line-height: 1.7;
}

.cgm-engagement-grid a {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.18);
	color: #fff;
	display: block;
	margin: 28px 0;
	padding: 13px 18px;
	text-align: center;
	text-decoration: none;
}

.cgm-engagement-grid .is-featured a {
	background: #fff;
	color: #0f172a;
}

.cgm-engagement-grid ul {
	display: grid;
	gap: 12px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.cgm-engagement-grid li::before {
	content: "✓";
	font-weight: 900;
	margin-right: 10px;
}

.cgm-salient-faq {
	background:
		radial-gradient(circle at 64% 28%, rgba(20, 184, 166, 0.16), transparent 30rem),
		radial-gradient(circle at 42% 44%, rgba(20, 184, 166, 0.14), transparent 24rem),
		#f8fafc;
	padding: 112px 0;
}

.cgm-faq-layout {
	display: grid;
	gap: 72px;
	grid-template-columns: 0.38fr 0.62fr;
}

.cgm-faq-layout h2 {
	color: #0f172a;
	font-size: clamp(2.35rem, 3.7vw, 4.3rem);
	letter-spacing: -0.055em;
	line-height: 1.04;
	margin: 0 0 26px;
}

.cgm-faq-layout > div > p {
	color: #475569;
	font-size: 1.02rem;
	line-height: 1.7;
}

.cgm-faq-grid {
	display: grid;
	gap: 34px 42px;
	grid-template-columns: repeat(2, 1fr);
}

.cgm-faq-grid h3 {
	color: #0f172a;
	font-size: 1.05rem;
	line-height: 1.35;
	margin: 0 0 12px;
}

.cgm-faq-grid p {
	color: #475569;
	font-size: 0.94rem;
	line-height: 1.7;
	margin: 0;
}

@media (max-width: 1180px) {
	.cgm-salient-system-grid,
	.cgm-salient-ledger,
	.cgm-faq-layout {
		grid-template-columns: 1fr;
	}

	.cgm-ledger-side {
		transform: none;
	}

	.cgm-engagement-grid,
	.cgm-proof-card-grid,
	.cgm-feature-columns {
		grid-template-columns: 1fr;
	}

	.cgm-engagement-grid article.is-featured {
		transform: none;
	}
}

@media (max-width: 720px) {
	.cgm-salient-hero {
		padding: 88px 0 58px;
	}

	.admin-bar .cgm-salient-hero {
		padding-top: 96px;
	}

	.cgm-salient-hero h1 {
		font-size: clamp(2.72rem, 14vw, 4.05rem);
	}

	.cgm-salient-lede {
		font-size: 0.98rem;
	}

	.cgm-salient-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.cgm-salient-actions .cgm-button {
		justify-content: center;
	}

	.cgm-salient-proof-row {
		padding-bottom: 52px;
	}

	.cgm-salient-blue,
	.cgm-salient-features,
	.cgm-salient-proof-cards,
	.cgm-salient-dark,
	.cgm-salient-faq {
		padding-block: 72px;
	}

	.cgm-salient-system-grid {
		margin-top: 48px;
	}

	.cgm-salient-system-list {
		padding-bottom: 0;
	}

	.cgm-browser-body {
		grid-template-columns: 1fr;
	}

	.cgm-browser-body aside {
		display: none;
	}

	.cgm-browser-bar span {
		padding-inline: 24px;
	}

	.cgm-salient-browser {
		min-height: auto;
	}

	.cgm-salient-ledger {
		padding: 22px;
	}

	.cgm-ledger-side {
		display: none;
	}

	.cgm-table-row,
	.cgm-ledger-row {
		grid-template-columns: 1fr 0.8fr;
	}

	.cgm-table-row span:last-child,
	.cgm-ledger-row span:last-child {
		display: none;
	}

	.cgm-faq-grid {
		grid-template-columns: 1fr;
	}
}


/* V0.4.1 RCM-specific copy fit and CG Meditrans brand color correction. */
.cgm-salient-kicker,
.cgm-taxpal-eyebrow {
	color: #1e3a5f !important;
}

.cgm-salient-hero h1 {
	font-size: clamp(3.15rem, 5.9vw, 6.25rem) !important;
	letter-spacing: -0.052em !important;
	line-height: 1.01 !important;
	max-width: 1180px !important;
}

.cgm-salient-hero h1 span,
.cgm-salient-gradient-cta h2 span {
	color: #14b8a6 !important;
}

.cgm-salient-hero h1 span::after {
	background: rgba(20, 184, 166, 0.2) !important;
}

.cgm-salient-lede {
	max-width: 860px !important;
}

.cgm-salient-sublede {
	color: #475569;
	font-size: 1.02rem;
	line-height: 1.72;
	margin: 14px auto 0;
	max-width: 830px;
}

.cgm-salient-trustline {
	color: #1e3a5f;
	font-size: 0.92rem;
	font-weight: 850;
	letter-spacing: 0.01em;
	margin: 20px auto 0;
}

.cgm-salient-blue,
.cgm-salient-gradient-cta {
	background:
		radial-gradient(circle at 68% 42%, rgba(20, 184, 166, 0.32), transparent 26rem),
		radial-gradient(circle at 20% 0%, rgba(148, 163, 184, 0.2), transparent 28rem),
		linear-gradient(135deg, #1e3a5f 0%, #0f172a 72%) !important;
}

.cgm-salient-blue-head p,
.cgm-salient-gradient-cta p {
	color: rgba(255, 255, 255, 0.76) !important;
	max-width: 820px !important;
}

.cgm-salient-system-list article.is-active {
	background: rgba(20, 184, 166, 0.18) !important;
	border-color: rgba(20, 184, 166, 0.36) !important;
}

.cgm-salient-system-list article:not(.is-active) {
	background: rgba(255, 255, 255, 0.06) !important;
	border-color: rgba(255, 255, 255, 0.1) !important;
}

.cgm-browser-bar span {
	color: #1e3a5f !important;
	padding-inline: 44px !important;
}

.cgm-table-row {
	grid-template-columns: 1.25fr 0.62fr 1fr !important;
}

.cgm-browser-note {
	background: #ecfeff;
	border: 1px solid rgba(20, 184, 166, 0.22);
	border-radius: 12px;
	color: #1e3a5f;
	font-size: 0.78rem;
	font-weight: 800;
	line-height: 1.55;
	margin: 22px 0 0;
	padding: 12px 14px;
}

.cgm-feature-columns article span,
.cgm-engagement-grid article.is-featured {
	background: #1e3a5f !important;
}

.cgm-feature-columns article span {
	box-shadow: inset 0 -6px 0 rgba(20, 184, 166, 0.22);
}

.cgm-engagement-grid article.is-featured {
	border-color: rgba(20, 184, 166, 0.48) !important;
	box-shadow: 0 24px 70px rgba(15, 23, 42, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}

.cgm-engagement-grid .is-featured a,
.cgm-salient-gradient-cta .cgm-button {
	color: #1e3a5f !important;
}

.cgm-salient-faq {
	background:
		radial-gradient(circle at 70% 18%, rgba(20, 184, 166, 0.18), transparent 28rem),
		radial-gradient(circle at 20% 44%, rgba(30, 58, 95, 0.1), transparent 30rem),
		#f8fafc !important;
}

.cgm-proof-card-grid article,
.cgm-ledger-card,
.cgm-ledger-side {
	border-color: rgba(226, 232, 240, 0.9) !important;
}

@media (max-width: 720px) {
	.cgm-salient-hero h1 {
		font-size: clamp(2.45rem, 12.2vw, 3.75rem) !important;
		letter-spacing: -0.045em !important;
	}

	.cgm-salient-sublede {
		font-size: 0.96rem;
	}

	.cgm-browser-bar span {
		padding-inline: 18px !important;
	}

	.cgm-table-row {
		grid-template-columns: 1fr !important;
		gap: 5px !important;
	}
}


/* V0.4.2 CG logo blue correction. The brand is bright CG medical blue, not teal. */
:root {
	--cgm-primary: #0c95ee;
	--cgm-accent: #0b73e0;
	--cgm-navy: #0a2752;
	--cgm-dark: #030405;
	--cgm-light-blue: #97d7f3;
	--cgm-silver: #9d9f9f;
}

body.home .cgm-site-header,
body.blog .cgm-site-header {
	background: rgba(255, 255, 255, 0.96) !important;
	border-bottom: 1px solid rgba(12, 149, 238, 0.08) !important;
}

.cgm-salient-kicker,
.cgm-taxpal-eyebrow,
.cgm-salient-trustline,
.cgm-browser-bar span,
.cgm-browser-note,
.cgm-engagement-grid .is-featured a,
.cgm-salient-gradient-cta .cgm-button {
	color: #0a2752 !important;
}

.cgm-salient-hero {
	background:
		radial-gradient(circle at 80% 12%, rgba(151, 215, 243, 0.42), transparent 30rem),
		radial-gradient(circle at 18% 0%, rgba(12, 149, 238, 0.08), transparent 28rem),
		#ffffff !important;
}

.cgm-salient-hero h1 {
	color: #030405 !important;
}

.cgm-salient-hero h1 span,
.cgm-salient-gradient-cta h2 span {
	color: #0c95ee !important;
}

.cgm-salient-hero h1 span::after {
	background: rgba(151, 215, 243, 0.58) !important;
}

.cgm-button-primary,
.cgm-salient-actions .cgm-button-primary,
.cgm-site-header .cgm-button-primary,
.cgm-mobile-cta,
.wp-block-button__link {
	background: linear-gradient(135deg, #0c95ee, #0b73e0) !important;
	border-color: #0c95ee !important;
	box-shadow: 0 14px 34px rgba(12, 149, 238, 0.25) !important;
	color: #fff !important;
}

.cgm-button-secondary,
.cgm-salient-actions .cgm-button-secondary {
	background: #fff !important;
	border-color: rgba(12, 149, 238, 0.22) !important;
	color: #0a2752 !important;
}

.cgm-salient-blue,
.cgm-salient-gradient-cta {
	background:
		radial-gradient(circle at 72% 36%, rgba(151, 215, 243, 0.5), transparent 25rem),
		radial-gradient(circle at 22% 0%, rgba(12, 149, 238, 0.35), transparent 26rem),
		linear-gradient(135deg, #0a2752 0%, #0b73e0 58%, #0c95ee 100%) !important;
}

.cgm-salient-system-list article.is-active {
	background: rgba(151, 215, 243, 0.18) !important;
	border-color: rgba(151, 215, 243, 0.38) !important;
}

.cgm-salient-system-list article:not(.is-active) {
	background: rgba(255, 255, 255, 0.08) !important;
	border-color: rgba(255, 255, 255, 0.12) !important;
}

.cgm-browser-note {
	background: #f5fbff !important;
	border-color: rgba(12, 149, 238, 0.22) !important;
}

.cgm-feature-columns article span,
.cgm-engagement-grid article.is-featured {
	background: linear-gradient(135deg, #0c95ee, #0b73e0) !important;
	border-color: #0c95ee !important;
}

.cgm-feature-columns article span {
	box-shadow: inset 0 -6px 0 rgba(151, 215, 243, 0.38) !important;
}

.cgm-salient-dark {
	background:
		radial-gradient(circle at 76% 14%, rgba(12, 149, 238, 0.18), transparent 24rem),
		linear-gradient(135deg, #030405 0%, #0a2752 100%) !important;
}

.cgm-engagement-grid article.is-featured {
	box-shadow: 0 24px 70px rgba(12, 149, 238, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.16) !important;
}

.cgm-salient-faq {
	background:
		radial-gradient(circle at 74% 18%, rgba(151, 215, 243, 0.32), transparent 30rem),
		radial-gradient(circle at 18% 42%, rgba(12, 149, 238, 0.08), transparent 30rem),
		#f5fbff !important;
}

.cgm-proof-card-grid article:hover,
.cgm-feature-columns article:hover,
.cgm-engagement-grid article:hover {
	border-color: rgba(12, 149, 238, 0.24) !important;
}


/* V0.4.3 first-screen polish: less poster, more RCM operations. */
.cgm-logo-raw img {
	height: auto !important;
	width: 72px !important;
}

.cgm-nav-shell {
	min-height: 82px !important;
}

.cgm-nav-action span {
	color: #334155 !important;
	font-size: 0.78rem !important;
	font-weight: 780 !important;
}

.cgm-salient-hero {
	padding: 118px 0 42px !important;
}

.admin-bar .cgm-salient-hero {
	padding-top: 128px !important;
}

.cgm-salient-hero-inner {
	max-width: 1120px !important;
}

.cgm-salient-kicker {
	font-size: 0.74rem !important;
	letter-spacing: 0.17em !important;
	margin-bottom: 20px !important;
}

.cgm-salient-hero h1 {
	font-size: clamp(3rem, 5.15vw, 5.55rem) !important;
	letter-spacing: -0.055em !important;
	line-height: 1.02 !important;
	max-width: 1080px !important;
}

.cgm-salient-lede {
	font-size: 1.03rem !important;
	line-height: 1.72 !important;
	margin-top: 24px !important;
	max-width: 820px !important;
}

.cgm-salient-sublede {
	color: #334155 !important;
	font-size: 0.98rem !important;
	font-weight: 650;
	line-height: 1.68 !important;
	max-width: 760px !important;
}

.cgm-salient-actions {
	margin-top: 28px !important;
}

.cgm-salient-actions .cgm-button {
	font-size: 0.92rem !important;
	padding: 13px 22px !important;
}

.cgm-hero-focus-row {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: center;
	margin: 22px auto 0;
	max-width: 780px;
}

.cgm-hero-focus-row span {
	background: rgba(151, 215, 243, 0.18);
	border: 1px solid rgba(12, 149, 238, 0.18);
	border-radius: 999px;
	color: #0a2752;
	font-size: 0.78rem;
	font-weight: 850;
	padding: 7px 12px;
}

.cgm-salient-proof-row {
	padding: 30px 0 56px !important;
}

.cgm-salient-proof-row p {
	color: #0a2752 !important;
	font-size: 0.86rem !important;
	letter-spacing: 0.08em;
	margin-bottom: 22px !important;
	text-transform: uppercase;
}

.cgm-salient-proof-logos {
	gap: 12px !important;
}

.cgm-salient-proof-logos span {
	background: #ffffff;
	border: 1px solid rgba(12, 149, 238, 0.14);
	border-radius: 999px;
	box-shadow: 0 10px 26px rgba(10, 39, 82, 0.05);
	color: #334155 !important;
	font-size: 0.9rem !important;
	font-weight: 850 !important;
	padding: 9px 13px 9px 10px;
}

.cgm-salient-proof-logos span::before {
	align-items: center;
	background: linear-gradient(135deg, #0c95ee, #0b73e0);
	border: 0 !important;
	color: #fff !important;
	content: "✓" !important;
	display: inline-flex;
	font-size: 0.72rem;
	font-weight: 900;
	height: 20px !important;
	justify-content: center;
	width: 20px !important;
}

.cgm-salient-blue {
	padding-top: 88px !important;
}

.cgm-salient-blue h2,
.cgm-salient-gradient-cta h2 {
	font-size: clamp(2.05rem, 3.35vw, 3.75rem) !important;
	letter-spacing: -0.045em !important;
	max-width: 930px !important;
}

.cgm-salient-blue-head p {
	font-size: 1rem !important;
	max-width: 820px !important;
}

@media (max-width: 720px) {
	.cgm-logo-raw img {
		width: 58px !important;
	}

	.cgm-nav-shell {
		min-height: 72px !important;
	}

	.cgm-salient-hero {
		padding: 86px 0 38px !important;
	}

	.admin-bar .cgm-salient-hero {
		padding-top: 92px !important;
	}

	.cgm-salient-hero h1 {
		font-size: clamp(2.35rem, 11.4vw, 3.45rem) !important;
		letter-spacing: -0.045em !important;
		line-height: 1.04 !important;
	}

	.cgm-salient-actions .cgm-button {
		font-size: 0.88rem !important;
		padding: 12px 18px !important;
	}

	.cgm-hero-focus-row {
		gap: 8px;
		justify-content: flex-start;
		margin-top: 18px;
	}

	.cgm-hero-focus-row span {
		font-size: 0.74rem;
	}

	.cgm-salient-proof-row {
		padding-bottom: 42px !important;
	}
}


/* V0.4.4 hero service visual: RCM company, not SaaS dashboard. */
.cgm-hero-with-review .cgm-salient-hero-inner {
	align-items: center;
	display: grid;
	gap: 56px;
	grid-template-columns: minmax(0, 0.62fr) minmax(330px, 0.38fr);
	max-width: 1240px !important;
	text-align: left !important;
}

.cgm-hero-with-review .cgm-hero-copy {
	min-width: 0;
}

.cgm-hero-with-review .cgm-salient-hero h1,
.cgm-hero-with-review h1,
.cgm-hero-with-review .cgm-salient-lede,
.cgm-hero-with-review .cgm-salient-sublede {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.cgm-hero-with-review h1 {
	font-size: clamp(3rem, 4.55vw, 5.25rem) !important;
	max-width: 820px !important;
}

.cgm-hero-with-review .cgm-salient-lede {
	max-width: 720px !important;
}

.cgm-hero-with-review .cgm-salient-sublede {
	max-width: 650px !important;
}

.cgm-hero-with-review .cgm-salient-actions,
.cgm-hero-with-review .cgm-hero-focus-row {
	justify-content: flex-start !important;
}

.cgm-hero-review-card {
	background:
		linear-gradient(#fff, #fff) padding-box,
		linear-gradient(135deg, rgba(12, 149, 238, 0.58), rgba(151, 215, 243, 0.2)) border-box;
	border: 1px solid transparent;
	border-radius: 28px;
	box-shadow: 0 32px 90px rgba(10, 39, 82, 0.14);
	padding: 24px;
	position: relative;
}

.cgm-hero-review-card::before {
	background: radial-gradient(circle, rgba(12, 149, 238, 0.2), transparent 18rem);
	content: "";
	inset: -42px;
	position: absolute;
	z-index: -1;
}

.cgm-review-card-head {
	border-bottom: 1px solid rgba(12, 149, 238, 0.12);
	padding-bottom: 18px;
}

.cgm-review-card-head span {
	color: #0c95ee;
	display: block;
	font-size: 0.75rem;
	font-weight: 900;
	letter-spacing: 0.12em;
	margin-bottom: 8px;
	text-transform: uppercase;
}

.cgm-review-card-head strong {
	color: #030405;
	display: block;
	font-size: 1.45rem;
	letter-spacing: -0.03em;
	line-height: 1.08;
}

.cgm-review-checks {
	display: grid;
	gap: 12px;
	margin-top: 18px;
}

.cgm-review-checks div {
	align-items: flex-start;
	background: #f5fbff;
	border: 1px solid rgba(12, 149, 238, 0.12);
	border-radius: 16px;
	display: grid;
	gap: 2px 12px;
	grid-template-columns: 34px 1fr;
	padding: 14px;
}

.cgm-review-checks span {
	align-items: center;
	background: linear-gradient(135deg, #0c95ee, #0b73e0);
	border-radius: 10px;
	color: #fff;
	display: inline-flex;
	font-size: 0.72rem;
	font-weight: 900;
	height: 30px;
	justify-content: center;
	width: 30px;
}

.cgm-review-checks strong {
	color: #0a2752;
	font-size: 0.96rem;
	line-height: 1.22;
}

.cgm-review-checks em {
	color: #475569;
	font-size: 0.8rem;
	font-style: normal;
	font-weight: 650;
	grid-column: 2;
	line-height: 1.35;
}

.cgm-hero-review-card p {
	background: #fff8e7;
	border-left: 3px solid #f4b740;
	border-radius: 12px;
	color: #5f4210;
	font-size: 0.78rem;
	font-weight: 750;
	line-height: 1.45;
	margin: 18px 0 0;
	padding: 12px 13px;
}

.cgm-salient-proof-row {
	background: linear-gradient(180deg, #ffffff 0%, #f5fbff 100%) !important;
}

@media (max-width: 1040px) {
	.cgm-hero-with-review .cgm-salient-hero-inner {
		grid-template-columns: 1fr;
		text-align: center !important;
	}

	.cgm-hero-with-review .cgm-salient-hero h1,
	.cgm-hero-with-review h1,
	.cgm-hero-with-review .cgm-salient-lede,
	.cgm-hero-with-review .cgm-salient-sublede {
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.cgm-hero-with-review .cgm-salient-actions,
	.cgm-hero-with-review .cgm-hero-focus-row {
		justify-content: center !important;
	}

	.cgm-hero-review-card {
		margin: 0 auto;
		max-width: 520px;
		width: 100%;
	}
}

@media (max-width: 720px) {
	.cgm-hero-with-review .cgm-salient-hero-inner {
		gap: 30px;
	}

	.cgm-hero-review-card {
		border-radius: 22px;
		padding: 18px;
	}

	.cgm-review-card-head strong {
		font-size: 1.22rem;
	}

	.cgm-review-checks div {
		padding: 12px;
	}
}


/* V0.4.5 hero balance fix: top-align columns and fit normal laptop height. */
.cgm-hero-with-review {
	margin-top: 0 !important;
	padding: 78px 0 38px !important;
}

.admin-bar .cgm-hero-with-review {
	padding-top: 86px !important;
}

.cgm-hero-with-review .cgm-salient-hero-inner {
	align-items: start !important;
	gap: 48px !important;
}

.cgm-hero-with-review .cgm-salient-kicker {
	margin-top: 2px !important;
}

.cgm-hero-with-review h1 {
	font-size: clamp(2.85rem, 4.25vw, 4.85rem) !important;
	letter-spacing: -0.05em !important;
	line-height: 1.03 !important;
	max-width: 790px !important;
}

.cgm-hero-with-review .cgm-salient-lede {
	font-size: 0.99rem !important;
	line-height: 1.62 !important;
	margin-top: 20px !important;
	max-width: 680px !important;
}

.cgm-hero-with-review .cgm-salient-sublede {
	font-size: 0.94rem !important;
	line-height: 1.58 !important;
	margin-top: 11px !important;
	max-width: 640px !important;
}

.cgm-hero-with-review .cgm-salient-actions {
	margin-top: 24px !important;
}

.cgm-hero-with-review .cgm-hero-focus-row {
	margin-top: 18px !important;
}

.cgm-hero-review-card {
	border-radius: 24px !important;
	box-shadow: 0 24px 62px rgba(10, 39, 82, 0.13) !important;
	padding: 20px !important;
}

.cgm-review-card-head {
	padding-bottom: 14px !important;
}

.cgm-review-card-head span {
	font-size: 0.68rem !important;
	margin-bottom: 6px !important;
}

.cgm-review-card-head strong {
	font-size: 1.26rem !important;
}

.cgm-review-checks {
	gap: 9px !important;
	margin-top: 14px !important;
}

.cgm-review-checks div {
	border-radius: 14px !important;
	grid-template-columns: 30px 1fr !important;
	padding: 11px 12px !important;
}

.cgm-review-checks span {
	border-radius: 9px !important;
	font-size: 0.68rem !important;
	height: 28px !important;
	width: 28px !important;
}

.cgm-review-checks strong {
	font-size: 0.9rem !important;
}

.cgm-review-checks em {
	font-size: 0.76rem !important;
	line-height: 1.28 !important;
}

.cgm-hero-review-card p {
	font-size: 0.72rem !important;
	line-height: 1.35 !important;
	margin-top: 13px !important;
	padding: 9px 11px !important;
}

.cgm-salient-proof-row {
	padding-top: 22px !important;
	padding-bottom: 46px !important;
}

@media (max-width: 1040px) {
	.cgm-hero-with-review .cgm-salient-hero-inner {
		align-items: center !important;
	}
}

@media (max-width: 720px) {
	.cgm-hero-with-review {
		padding: 62px 0 34px !important;
	}

	.admin-bar .cgm-hero-with-review {
		padding-top: 68px !important;
	}

	.cgm-hero-with-review h1 {
		font-size: clamp(2.2rem, 10.5vw, 3.15rem) !important;
	}

	.cgm-hero-with-review .cgm-salient-lede,
	.cgm-hero-with-review .cgm-salient-sublede {
		font-size: 0.92rem !important;
	}
}


/* V0.4.6 RCM services section: replace software mockup with services coverage. */
.cgm-rcm-service-band {
	padding: 84px 0 96px !important;
}

.cgm-section-kicker-light {
	color: rgba(255, 255, 255, 0.78) !important;
	font-size: 0.74rem !important;
	font-weight: 900;
	letter-spacing: 0.16em;
	margin: 0 0 16px !important;
	text-transform: uppercase;
}

.cgm-rcm-service-band .cgm-salient-blue-head h2 {
	max-width: 980px !important;
}

.cgm-rcm-service-layout {
	align-items: start;
	display: grid;
	gap: 34px;
	grid-template-columns: minmax(0, 1fr) 390px;
	margin-top: 56px;
}

.cgm-rcm-service-groups {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cgm-rcm-service-groups article {
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 20px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
	min-height: 190px;
	padding: 22px;
}

.cgm-rcm-service-groups article span {
	align-items: center;
	background: rgba(255, 255, 255, 0.94);
	border-radius: 10px;
	color: #0b73e0;
	display: inline-flex;
	font-size: 0.72rem;
	font-weight: 950;
	height: 30px;
	justify-content: center;
	margin-bottom: 18px;
	width: 34px;
}

.cgm-rcm-service-groups h3 {
	color: #fff;
	font-size: 1.07rem;
	letter-spacing: -0.02em;
	line-height: 1.2;
	margin: 0 0 10px;
}

.cgm-rcm-service-groups p {
	color: rgba(255, 255, 255, 0.76);
	font-size: 0.9rem;
	line-height: 1.62;
	margin: 0;
}

.cgm-rcm-coverage-board {
	background: #ffffff;
	border: 1px solid rgba(255, 255, 255, 0.5);
	border-radius: 26px;
	box-shadow: 0 30px 78px rgba(3, 4, 5, 0.2);
	padding: 24px;
	position: sticky;
	top: 104px;
}

.cgm-coverage-head {
	border-bottom: 1px solid #e2e8f0;
	padding-bottom: 18px;
}

.cgm-coverage-head span {
	color: #0c95ee;
	display: block;
	font-size: 0.72rem;
	font-weight: 900;
	letter-spacing: 0.14em;
	margin-bottom: 8px;
	text-transform: uppercase;
}

.cgm-coverage-head strong {
	color: #030405;
	display: block;
	font-size: 1.34rem;
	letter-spacing: -0.035em;
	line-height: 1.12;
}

.cgm-coverage-flow {
	display: grid;
	gap: 10px;
	margin-top: 18px;
}

.cgm-coverage-flow div {
	background: #f5fbff;
	border: 1px solid rgba(12, 149, 238, 0.12);
	border-radius: 14px;
	padding: 13px 14px;
	position: relative;
}

.cgm-coverage-flow b {
	color: #0a2752;
	display: block;
	font-size: 0.94rem;
	line-height: 1.2;
}

.cgm-coverage-flow small {
	color: #475569;
	display: block;
	font-size: 0.78rem;
	font-weight: 650;
	line-height: 1.35;
	margin-top: 3px;
}

.cgm-coverage-note {
	background: #fff8e7;
	border-left: 3px solid #f4b740;
	border-radius: 12px;
	color: #5f4210 !important;
	font-size: 0.76rem !important;
	font-weight: 750;
	line-height: 1.45 !important;
	margin: 16px 0 0 !important;
	padding: 11px 12px;
}

@media (max-width: 1100px) {
	.cgm-rcm-service-layout {
		grid-template-columns: 1fr;
	}

	.cgm-rcm-coverage-board {
		position: relative;
		top: 0;
	}
}

@media (max-width: 760px) {
	.cgm-rcm-service-band {
		padding: 66px 0 72px !important;
	}

	.cgm-rcm-service-groups {
		grid-template-columns: 1fr;
	}

	.cgm-rcm-service-groups article {
		min-height: auto;
		padding: 19px;
	}
}


/* V0.4.7 Revenue Leak Map diagnostic section. */
.cgm-leak-diagnostic {
	background:
		radial-gradient(circle at 78% 16%, rgba(151, 215, 243, 0.28), transparent 30rem),
		linear-gradient(180deg, #ffffff 0%, #f5fbff 100%) !important;
	padding: 98px 0 108px !important;
}

.cgm-section-kicker-dark {
	color: #0c95ee !important;
	font-size: 0.74rem !important;
	font-weight: 950;
	letter-spacing: 0.16em;
	margin: 0 0 16px !important;
	text-transform: uppercase;
}

.cgm-leak-map {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 62px;
	position: relative;
}

.cgm-leak-path {
	background: linear-gradient(90deg, rgba(12, 149, 238, 0.12), rgba(12, 149, 238, 0.58), rgba(12, 149, 238, 0.12));
	height: 2px;
	left: 7%;
	position: absolute;
	right: 7%;
	top: 36px;
}

.cgm-leak-map article {
	background: #fff;
	border: 1px solid rgba(12, 149, 238, 0.13);
	border-radius: 20px;
	box-shadow: 0 18px 44px rgba(10, 39, 82, 0.07);
	min-height: 205px;
	padding: 24px;
	position: relative;
	z-index: 1;
}

.cgm-leak-map article span {
	align-items: center;
	background: linear-gradient(135deg, #0c95ee, #0b73e0);
	border: 4px solid #fff;
	border-radius: 14px;
	box-shadow: 0 10px 24px rgba(12, 149, 238, 0.26);
	color: #fff;
	display: inline-flex;
	font-size: 0.75rem;
	font-weight: 950;
	height: 42px;
	justify-content: center;
	margin-bottom: 22px;
	width: 42px;
}

.cgm-leak-map h3 {
	color: #030405;
	font-size: 1.08rem;
	letter-spacing: -0.02em;
	line-height: 1.2;
	margin: 0 0 10px;
}

.cgm-leak-map p {
	color: #475569;
	font-size: 0.9rem;
	line-height: 1.58;
	margin: 0;
}

.cgm-leak-summary {
	align-items: center;
	background: #0a2752;
	border-radius: 28px;
	box-shadow: 0 28px 70px rgba(10, 39, 82, 0.18);
	color: #fff;
	display: grid;
	gap: 42px;
	grid-template-columns: minmax(0, 0.55fr) minmax(0, 0.45fr);
	margin-top: 34px;
	padding: 34px;
}

.cgm-leak-summary span {
	color: #97d7f3;
	display: block;
	font-size: 0.72rem;
	font-weight: 950;
	letter-spacing: 0.15em;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.cgm-leak-summary h3 {
	color: #fff;
	font-size: clamp(1.65rem, 2.4vw, 2.35rem);
	letter-spacing: -0.04em;
	line-height: 1.08;
	margin: 0 0 12px;
}

.cgm-leak-summary p {
	color: rgba(255, 255, 255, 0.72);
	font-size: 0.96rem;
	line-height: 1.65;
	margin: 0;
}

.cgm-leak-summary ul {
	display: grid;
	gap: 10px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.cgm-leak-summary li {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 14px;
	color: rgba(255, 255, 255, 0.86);
	font-size: 0.92rem;
	font-weight: 800;
	line-height: 1.35;
	padding: 12px 14px;
}

.cgm-leak-summary li::before {
	color: #97d7f3;
	content: "✓";
	font-weight: 950;
	margin-right: 9px;
}

@media (max-width: 1040px) {
	.cgm-leak-map {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cgm-leak-path {
		display: none;
	}

	.cgm-leak-summary {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.cgm-leak-diagnostic {
		padding: 72px 0 78px !important;
	}

	.cgm-leak-map {
		grid-template-columns: 1fr;
		margin-top: 42px;
	}

	.cgm-leak-map article {
		min-height: auto;
		padding: 20px;
	}

	.cgm-leak-summary {
		border-radius: 22px;
		padding: 24px;
	}
}


/* V0.4.8 CTA and proof section upgrade. */
.cgm-review-cta-band {
	background:
		radial-gradient(circle at 76% 18%, rgba(151, 215, 243, 0.42), transparent 26rem),
		linear-gradient(135deg, #0a2752 0%, #0b73e0 100%) !important;
	padding: 82px 0 !important;
	text-align: left !important;
}

.cgm-review-cta-inner {
	align-items: center;
	display: grid;
	gap: 54px;
	grid-template-columns: minmax(0, 0.62fr) 360px;
}

.cgm-review-cta-band h2 {
	font-size: clamp(2.2rem, 3.45vw, 4rem) !important;
	max-width: 760px !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.cgm-review-cta-band p:not(.cgm-section-kicker-light) {
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: 720px !important;
}

.cgm-review-cta-panel {
	background: #fff;
	border: 1px solid rgba(255, 255, 255, 0.42);
	border-radius: 24px;
	box-shadow: 0 24px 64px rgba(3, 4, 5, 0.2);
	padding: 24px;
}

.cgm-review-cta-panel strong {
	color: #0a2752;
	display: block;
	font-size: 1.1rem;
	letter-spacing: -0.02em;
	margin-bottom: 14px;
}

.cgm-review-cta-panel ul {
	display: grid;
	gap: 9px;
	list-style: none;
	margin: 0 0 16px;
	padding: 0;
}

.cgm-review-cta-panel li {
	background: #f5fbff;
	border: 1px solid rgba(12, 149, 238, 0.12);
	border-radius: 12px;
	color: #334155;
	font-size: 0.9rem;
	font-weight: 800;
	padding: 10px 12px;
}

.cgm-review-cta-panel li::before {
	color: #0c95ee;
	content: "✓";
	font-weight: 950;
	margin-right: 8px;
}

.cgm-review-cta-panel em {
	background: #fff8e7;
	border-left: 3px solid #f4b740;
	border-radius: 10px;
	color: #5f4210;
	display: block;
	font-size: 0.74rem;
	font-style: normal;
	font-weight: 750;
	line-height: 1.4;
	padding: 10px 11px;
}

.cgm-review-cta-panel .cgm-button {
	display: flex;
	justify-content: center;
	margin-top: 16px !important;
}

.cgm-ops-proof {
	background:
		radial-gradient(circle at 16% 12%, rgba(151, 215, 243, 0.24), transparent 28rem),
		#f8fbff !important;
	padding: 102px 0 !important;
}

.cgm-ops-proof-head {
	max-width: 900px;
	text-align: left;
}

.cgm-ops-proof-head h2 {
	color: #030405;
	font-size: clamp(2.25rem, 3.6vw, 4.2rem);
	letter-spacing: -0.052em;
	line-height: 1.06;
	margin: 0 0 18px;
}

.cgm-ops-proof-head p:not(.cgm-section-kicker-dark) {
	color: #475569;
	font-size: 1.02rem;
	line-height: 1.7;
	margin: 0;
	max-width: 760px;
}

.cgm-ops-proof-layout {
	align-items: start;
	display: grid;
	gap: 32px;
	grid-template-columns: minmax(0, 1fr) 420px;
	margin-top: 58px;
}

.cgm-ops-commitments {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cgm-ops-commitments article {
	background: #fff;
	border: 1px solid rgba(12, 149, 238, 0.12);
	border-radius: 22px;
	box-shadow: 0 18px 44px rgba(10, 39, 82, 0.06);
	padding: 26px;
}

.cgm-ops-commitments span {
	align-items: center;
	background: linear-gradient(135deg, #0c95ee, #0b73e0);
	border-radius: 12px;
	color: #fff;
	display: inline-flex;
	font-size: 0.72rem;
	font-weight: 950;
	height: 34px;
	justify-content: center;
	margin-bottom: 18px;
	width: 38px;
}

.cgm-ops-commitments h3 {
	color: #030405;
	font-size: 1.18rem;
	letter-spacing: -0.02em;
	margin: 0 0 10px;
}

.cgm-ops-commitments p {
	color: #475569;
	font-size: 0.94rem;
	line-height: 1.62;
	margin: 0;
}

.cgm-partner-comparison {
	background: #0a2752;
	border-radius: 26px;
	box-shadow: 0 26px 70px rgba(10, 39, 82, 0.18);
	color: #fff;
	padding: 24px;
	position: sticky;
	top: 104px;
}

.cgm-comparison-head {
	border-bottom: 1px solid rgba(255, 255, 255, 0.13);
	padding-bottom: 18px;
}

.cgm-comparison-head span {
	color: #97d7f3;
	display: block;
	font-size: 0.72rem;
	font-weight: 950;
	letter-spacing: 0.14em;
	margin-bottom: 8px;
	text-transform: uppercase;
}

.cgm-comparison-head strong {
	display: block;
	font-size: 1.36rem;
	letter-spacing: -0.035em;
	line-height: 1.12;
}

.cgm-comparison-row {
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 15px;
	margin-top: 12px;
	padding: 14px;
}

.cgm-comparison-row.is-cg {
	background: rgba(12, 149, 238, 0.22);
	border-color: rgba(151, 215, 243, 0.3);
}

.cgm-comparison-row b {
	display: block;
	font-size: 0.93rem;
	margin-bottom: 4px;
}

.cgm-comparison-row em {
	color: rgba(255, 255, 255, 0.72);
	display: block;
	font-size: 0.82rem;
	font-style: normal;
	font-weight: 650;
	line-height: 1.42;
}

@media (max-width: 1060px) {
	.cgm-review-cta-inner,
	.cgm-ops-proof-layout {
		grid-template-columns: 1fr;
	}

	.cgm-review-cta-panel,
	.cgm-partner-comparison {
		position: relative;
		top: 0;
	}
}

@media (max-width: 720px) {
	.cgm-review-cta-band,
	.cgm-ops-proof {
		padding: 72px 0 !important;
	}

	.cgm-ops-commitments {
		grid-template-columns: 1fr;
	}
}


/* V0.4.9 lower homepage polish: starting options, FAQ, final form. */
.cgm-starting-options {
	background:
		radial-gradient(circle at 50% 18%, rgba(12, 149, 238, 0.22), transparent 28rem),
		linear-gradient(135deg, #030405 0%, #0a2752 100%) !important;
	padding: 96px 0 !important;
}

.cgm-starting-grid {
	gap: 24px !important;
	margin-top: 56px !important;
}

.cgm-starting-grid article {
	background: rgba(255, 255, 255, 0.045) !important;
	border: 1px solid rgba(255, 255, 255, 0.14) !important;
	border-radius: 24px !important;
	padding: 28px !important;
	transform: none !important;
}

.cgm-starting-grid article.is-featured {
	background: linear-gradient(135deg, #0c95ee, #0b73e0) !important;
	box-shadow: 0 26px 70px rgba(12, 149, 238, 0.28) !important;
}

.cgm-starting-grid article > span {
	color: #97d7f3;
	display: block;
	font-size: 0.72rem;
	font-weight: 950;
	letter-spacing: 0.14em;
	margin-bottom: 16px;
	text-transform: uppercase;
}

.cgm-starting-grid .is-featured > span {
	color: rgba(255, 255, 255, 0.78);
}

.cgm-starting-grid h3 {
	font-size: 1.48rem !important;
}

.cgm-starting-grid a {
	border-radius: 999px !important;
	font-weight: 900;
}

.cgm-faq-accordion {
	background:
		radial-gradient(circle at 74% 20%, rgba(151, 215, 243, 0.3), transparent 28rem),
		#f5fbff !important;
	padding: 96px 0 !important;
}

.cgm-faq-accordion .cgm-faq-layout {
	align-items: start;
	gap: 56px;
	grid-template-columns: 0.34fr 0.66fr;
}

.cgm-faq-accordion .cgm-faq-grid {
	display: grid;
	gap: 12px;
	grid-template-columns: 1fr;
}

.cgm-faq-accordion details {
	background: #fff;
	border: 1px solid rgba(12, 149, 238, 0.12);
	border-radius: 18px;
	box-shadow: 0 12px 30px rgba(10, 39, 82, 0.04);
	padding: 0;
}

.cgm-faq-accordion summary {
	color: #030405;
	cursor: pointer;
	font-size: 1rem;
	font-weight: 900;
	list-style: none;
	padding: 18px 20px;
}

.cgm-faq-accordion summary::-webkit-details-marker {
	display: none;
}

.cgm-faq-accordion summary::after {
	color: #0c95ee;
	content: "+";
	float: right;
	font-weight: 950;
}

.cgm-faq-accordion details[open] summary::after {
	content: "-";
}

.cgm-faq-accordion details p {
	border-top: 1px solid #eef2f7;
	color: #475569;
	font-size: 0.94rem;
	line-height: 1.65;
	margin: 0;
	padding: 0 20px 18px;
}

.cgm-final-review-section {
	background:
		radial-gradient(circle at 82% 14%, rgba(151, 215, 243, 0.22), transparent 26rem),
		linear-gradient(145deg, #030405, #0a2752) !important;
	padding: 98px 0 !important;
}

.cgm-final-review-section .cgm-form-grid {
	align-items: start;
	gap: 48px;
}

.cgm-final-review-section .cgm-form-copy h2 {
	font-size: clamp(2.2rem, 3.25vw, 3.8rem) !important;
}

.cgm-form-safe-box {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.13);
	border-radius: 18px;
	margin-top: 24px;
	padding: 20px;
}

.cgm-form-safe-box strong {
	color: #fff;
	display: block;
	font-size: 1rem;
	margin-bottom: 8px;
}

.cgm-form-safe-box p {
	color: rgba(255, 255, 255, 0.7) !important;
	font-size: 0.92rem;
	line-height: 1.55;
	margin: 0;
}

.cgm-final-review-section .cgm-review-form {
	border: 1px solid rgba(151, 215, 243, 0.18);
	border-radius: 26px;
	box-shadow: 0 30px 90px rgba(3, 4, 5, 0.28);
	padding: 28px;
}

.cgm-final-review-section .cgm-form-step-head {
	background: #f5fbff;
	border: 1px solid rgba(12, 149, 238, 0.12);
	border-radius: 16px;
	padding: 14px 16px;
}

.cgm-final-review-section .cgm-review-form input:focus,
.cgm-final-review-section .cgm-review-form select:focus,
.cgm-final-review-section .cgm-review-form textarea:focus {
	border-color: rgba(12, 149, 238, 0.72) !important;
	box-shadow: 0 0 0 4px rgba(12, 149, 238, 0.12) !important;
}

@media (max-width: 980px) {
	.cgm-faq-accordion .cgm-faq-layout {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 720px) {
	.cgm-starting-options,
	.cgm-faq-accordion,
	.cgm-final-review-section {
		padding: 72px 0 !important;
	}

	.cgm-final-review-section .cgm-review-form {
		padding: 20px;
	}
}


/* V0.5.0 supplied CG Meditrans logo: visual crop excludes the website line. */
.cgm-logo-crop {
	background: transparent;
	display: block;
	line-height: 0;
	overflow: visible;
}

.cgm-logo-crop img {
	display: block;
	height: auto !important;
	max-height: none !important;
	object-fit: initial !important;
	width: 100% !important;
}

.cgm-logo-crop-header {
	height: auto;
	width: 92px;
}

.cgm-logo-raw .cgm-logo-crop-header img {
	width: 92px !important;
}

.cgm-brand-logo-footer {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	height: auto !important;
	padding: 0 !important;
	width: auto !important;
}

.cgm-logo-crop-footer {
	height: auto;
	width: 124px;
}

.cgm-brand-logo-footer .cgm-logo-crop-footer img {
	width: 124px !important;
}

@media (max-width: 720px) {
	.cgm-logo-crop-header {
		height: auto;
		width: 76px;
	}

	.cgm-logo-raw .cgm-logo-crop-header img {
		width: 76px !important;
	}

	.cgm-logo-crop-footer {
		height: auto;
		width: 104px;
	}

	.cgm-brand-logo-footer .cgm-logo-crop-footer img {
		width: 104px !important;
	}
}


/* V0.5.1 Revenue Leak Map: diagnostic route treatment. */
.cgm-leak-diagnostic {
	background:
		radial-gradient(circle at 8% 12%, rgba(12, 149, 238, 0.08), transparent 28rem),
		radial-gradient(circle at 88% 18%, rgba(151, 215, 243, 0.30), transparent 34rem),
		linear-gradient(180deg, #ffffff 0%, #f5fbff 100%) !important;
	padding: 104px 0 112px !important;
}

.cgm-leak-diagnostic .cgm-salient-section-head h2 {
	max-width: 910px !important;
}

.cgm-leak-diagnostic .cgm-salient-section-head p:last-child {
	max-width: 860px !important;
}

.cgm-leak-console {
	background: rgba(255, 255, 255, 0.72);
	border: 1px solid rgba(12, 149, 238, 0.14);
	border-radius: 34px;
	box-shadow: 0 34px 90px rgba(10, 39, 82, 0.10);
	margin-top: 54px;
	overflow: hidden;
	padding: 24px;
	position: relative;
}

.cgm-leak-console::before {
	background:
		linear-gradient(90deg, rgba(12, 149, 238, 0.06) 1px, transparent 1px),
		linear-gradient(180deg, rgba(12, 149, 238, 0.05) 1px, transparent 1px);
	background-size: 42px 42px;
	content: "";
	inset: 0;
	mask-image: linear-gradient(180deg, black, transparent 78%);
	opacity: 0.62;
	pointer-events: none;
	position: absolute;
}

.cgm-leak-route {
	align-items: center;
	background: linear-gradient(135deg, #071e3a, #0a2752);
	border: 1px solid rgba(151, 215, 243, 0.22);
	border-radius: 24px;
	display: grid;
	gap: 0;
	grid-template-columns: repeat(9, minmax(0, 1fr));
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.cgm-leak-route::before {
	background: linear-gradient(90deg, transparent, rgba(151, 215, 243, 0.32), transparent);
	content: "";
	height: 1px;
	left: 5%;
	position: absolute;
	right: 5%;
	top: 50%;
}

.cgm-leak-route span {
	align-items: center;
	color: rgba(255, 255, 255, 0.84);
	display: flex;
	font-size: 0.72rem;
	font-weight: 850;
	justify-content: center;
	line-height: 1.2;
	min-height: 72px;
	padding: 16px 10px;
	position: relative;
	text-align: center;
	z-index: 1;
}

.cgm-leak-route span::before {
	background: #0c95ee;
	border: 3px solid #0a2752;
	border-radius: 999px;
	box-shadow: 0 0 0 5px rgba(12, 149, 238, 0.16);
	content: "";
	height: 12px;
	left: 50%;
	position: absolute;
	top: calc(50% - 6px);
	transform: translateX(-50%);
	width: 12px;
}

.cgm-leak-route span:nth-child(5)::before,
.cgm-leak-route span:nth-child(6)::before,
.cgm-leak-route span:nth-child(8)::before {
	background: #f4b740;
	box-shadow: 0 0 0 5px rgba(244, 183, 64, 0.16);
}

.cgm-leak-map {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 22px;
	position: relative;
	z-index: 1;
}

.cgm-leak-path {
	display: none !important;
}

.cgm-leak-map article,
.cgm-leak-stage {
	background: rgba(255, 255, 255, 0.92) !important;
	border: 1px solid rgba(12, 149, 238, 0.14) !important;
	border-radius: 22px !important;
	box-shadow: 0 18px 46px rgba(10, 39, 82, 0.07) !important;
	min-height: 240px !important;
	padding: 22px !important;
	position: relative;
	transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.cgm-leak-stage::after {
	background: linear-gradient(90deg, #0c95ee, rgba(151, 215, 243, 0.16));
	border-radius: 999px;
	content: "";
	height: 3px;
	left: 22px;
	position: absolute;
	right: 22px;
	top: 0;
}

.cgm-leak-stage:hover {
	border-color: rgba(12, 149, 238, 0.34) !important;
	box-shadow: 0 24px 60px rgba(10, 39, 82, 0.11) !important;
	transform: translateY(-3px);
}

.cgm-leak-map article span {
	align-items: center;
	background: linear-gradient(135deg, #0c95ee, #0b73e0) !important;
	border: 0 !important;
	border-radius: 13px !important;
	box-shadow: 0 12px 24px rgba(12, 149, 238, 0.22) !important;
	color: #fff;
	display: inline-flex;
	font-size: 0.74rem;
	font-weight: 950;
	height: 38px;
	justify-content: center;
	margin: 0 0 18px !important;
	width: 38px;
}

.cgm-leak-stage small {
	color: #0c95ee;
	display: block;
	font-size: 0.68rem;
	font-weight: 950;
	letter-spacing: 0.12em;
	margin-bottom: 9px;
	text-transform: uppercase;
}

.cgm-leak-map h3 {
	color: #030405 !important;
	font-size: 1.08rem !important;
	letter-spacing: -0.025em !important;
	line-height: 1.18 !important;
	margin: 0 0 10px !important;
}

.cgm-leak-map p {
	color: #475569 !important;
	font-size: 0.9rem !important;
	line-height: 1.55 !important;
	margin: 0 0 16px !important;
}

.cgm-leak-stage em {
	background: #f5fbff;
	border: 1px solid rgba(12, 149, 238, 0.12);
	border-radius: 999px;
	color: #0a2752;
	display: inline-flex;
	font-size: 0.76rem;
	font-style: normal;
	font-weight: 850;
	line-height: 1.2;
	padding: 8px 10px;
}

.cgm-leak-summary {
	background:
		radial-gradient(circle at 84% 0%, rgba(12, 149, 238, 0.24), transparent 20rem),
		linear-gradient(135deg, #030405, #0a2752 72%) !important;
	border: 1px solid rgba(151, 215, 243, 0.18);
	border-radius: 26px !important;
	box-shadow: 0 30px 80px rgba(10, 39, 82, 0.18) !important;
	margin-top: 22px !important;
	position: relative;
	z-index: 1;
}

@media (max-width: 1040px) {
	.cgm-leak-route {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.cgm-leak-route::before {
		display: none;
	}

	.cgm-leak-map {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 680px) {
	.cgm-leak-console {
		border-radius: 24px;
		margin-top: 36px;
		padding: 16px;
	}

	.cgm-leak-route {
		grid-template-columns: 1fr;
	}

	.cgm-leak-route span {
		justify-content: flex-start;
		min-height: 46px;
		padding-left: 42px;
		text-align: left;
	}

	.cgm-leak-route span::before {
		left: 20px;
		transform: none;
	}

	.cgm-leak-map {
		grid-template-columns: 1fr;
	}

	.cgm-leak-map article,
	.cgm-leak-stage {
		min-height: auto !important;
		padding: 20px !important;
	}
}


/* V0.5.2 Revenue route readability correction. */
.cgm-leak-route {
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 20px 45px rgba(10, 39, 82, 0.10);
}

.cgm-leak-route::before {
	left: 6%;
	right: 6%;
	top: 28px !important;
}

.cgm-leak-route span {
	align-items: flex-end !important;
	font-size: 0.76rem !important;
	justify-content: center !important;
	min-height: 88px !important;
	padding: 44px 8px 18px !important;
	white-space: normal;
}

.cgm-leak-route span::before {
	top: 22px !important;
}

@media (max-width: 1040px) {
	.cgm-leak-route span {
		align-items: center !important;
		justify-content: flex-start !important;
		min-height: 58px !important;
		padding: 16px 14px 16px 44px !important;
		text-align: left !important;
	}

	.cgm-leak-route span::before {
		left: 20px !important;
		top: calc(50% - 6px) !important;
		transform: none !important;
	}
}

@media (max-width: 680px) {
	.cgm-leak-route span {
		min-height: 48px !important;
		padding: 14px 14px 14px 42px !important;
	}
}


/* V0.5.3 Revenue route compact polish. */
.cgm-leak-console {
	padding: 22px !important;
}

.cgm-leak-route {
	border-radius: 20px !important;
}

.cgm-leak-route::before {
	top: 23px !important;
}

.cgm-leak-route span {
	font-size: 0.72rem !important;
	font-weight: 900 !important;
	min-height: 72px !important;
	padding: 36px 8px 13px !important;
}

.cgm-leak-route span::before {
	height: 10px !important;
	top: 18px !important;
	width: 10px !important;
}

.cgm-leak-map {
	margin-top: 18px !important;
}

@media (max-width: 1040px) {
	.cgm-leak-route span {
		min-height: 52px !important;
		padding: 14px 14px 14px 42px !important;
	}

	.cgm-leak-route span::before {
		top: calc(50% - 5px) !important;
	}
}


/* V0.5.4 Free Revenue Cycle Check CTA band. */
.cgm-review-brief-band {
	background:
		radial-gradient(circle at 84% 14%, rgba(151, 215, 243, 0.38), transparent 30rem),
		radial-gradient(circle at 18% 80%, rgba(12, 149, 238, 0.30), transparent 30rem),
		linear-gradient(135deg, #071e3a 0%, #0a2752 48%, #0b73e0 100%) !important;
	overflow: hidden;
	padding: 88px 0 !important;
	position: relative;
	text-align: left !important;
}

.cgm-review-brief-band::before {
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
		linear-gradient(180deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
	background-size: 48px 48px;
	content: "";
	inset: 0;
	mask-image: linear-gradient(90deg, black, transparent 78%);
	opacity: 0.6;
	pointer-events: none;
	position: absolute;
}

.cgm-review-brief-inner {
	align-items: center;
	display: grid;
	gap: 56px;
	grid-template-columns: minmax(0, 0.58fr) minmax(360px, 0.42fr);
	position: relative;
	z-index: 1;
}

.cgm-review-brief-copy h2 {
	color: #ffffff !important;
	font-size: clamp(2.35rem, 3.55vw, 4rem) !important;
	letter-spacing: -0.055em !important;
	line-height: 1.02 !important;
	margin: 0 !important;
	max-width: 790px !important;
}

.cgm-review-brief-copy p:not(.cgm-section-kicker-light) {
	color: rgba(255, 255, 255, 0.76) !important;
	font-size: 1rem !important;
	line-height: 1.72 !important;
	margin: 22px 0 0 !important;
	max-width: 710px !important;
}

.cgm-review-brief-actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 18px;
	margin-top: 28px;
}

.cgm-inline-link-light {
	color: #ffffff !important;
}

.cgm-inline-link-light::after {
	color: #97d7f3 !important;
}

.cgm-review-brief-panel {
	background: rgba(255, 255, 255, 0.96);
	border: 1px solid rgba(255, 255, 255, 0.55);
	border-radius: 28px;
	box-shadow: 0 28px 80px rgba(3, 4, 5, 0.24);
	padding: 26px;
}

.cgm-review-panel-head {
	border-bottom: 1px solid #e8f2f8;
	margin-bottom: 18px;
	padding-bottom: 16px;
}

.cgm-review-panel-head span {
	color: #0c95ee;
	display: block;
	font-size: 0.72rem;
	font-weight: 950;
	letter-spacing: 0.14em;
	margin-bottom: 7px;
	text-transform: uppercase;
}

.cgm-review-panel-head strong {
	color: #030405;
	display: block;
	font-size: 1.35rem;
	letter-spacing: -0.035em;
	line-height: 1.05;
}

.cgm-review-brief-list {
	display: grid;
	gap: 12px;
}

.cgm-review-brief-list article {
	align-items: start;
	background: #f5fbff;
	border: 1px solid rgba(12, 149, 238, 0.13);
	border-radius: 16px;
	display: grid;
	gap: 13px;
	grid-template-columns: 38px 1fr;
	padding: 14px;
}

.cgm-review-brief-list article > span {
	align-items: center;
	background: linear-gradient(135deg, #0c95ee, #0b73e0);
	border-radius: 12px;
	box-shadow: 0 10px 22px rgba(12, 149, 238, 0.20);
	color: #fff;
	display: inline-flex;
	font-size: 0.72rem;
	font-weight: 950;
	height: 36px;
	justify-content: center;
	width: 36px;
}

.cgm-review-brief-list strong {
	color: #0a2752;
	display: block;
	font-size: 0.95rem;
	font-weight: 900;
	margin-bottom: 4px;
}

.cgm-review-brief-list p {
	color: #475569 !important;
	font-size: 0.84rem !important;
	line-height: 1.45 !important;
	margin: 0 !important;
}

.cgm-review-brief-warning {
	background: #fff8e7;
	border: 1px solid rgba(244, 183, 64, 0.34);
	border-left: 4px solid #f4b740;
	border-radius: 16px;
	margin-top: 16px;
	padding: 14px 16px;
}

.cgm-review-brief-warning strong {
	color: #5f4210;
	display: block;
	font-size: 0.84rem;
	font-weight: 950;
	margin-bottom: 4px;
}

.cgm-review-brief-warning p {
	color: #5f4210 !important;
	font-size: 0.82rem !important;
	font-weight: 750;
	line-height: 1.42 !important;
	margin: 0 !important;
}

@media (max-width: 1060px) {
	.cgm-review-brief-inner {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 720px) {
	.cgm-review-brief-band {
		padding: 72px 0 !important;
	}

	.cgm-review-brief-actions .cgm-button {
		width: 100%;
	}

	.cgm-review-brief-panel {
		border-radius: 22px;
		padding: 20px;
	}
}


/* V0.5.5 Why CG dark proof section. */
.cgm-ops-proof-dark {
	background:
		radial-gradient(circle at 15% 16%, rgba(12, 149, 238, 0.26), transparent 30rem),
		radial-gradient(circle at 82% 12%, rgba(151, 215, 243, 0.18), transparent 28rem),
		linear-gradient(145deg, #030405 0%, #071e3a 46%, #0a2752 100%) !important;
	overflow: hidden;
	padding: 108px 0 !important;
	position: relative;
}

.cgm-ops-proof-dark::before {
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
		linear-gradient(180deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
	background-size: 50px 50px;
	content: "";
	inset: 0;
	mask-image: radial-gradient(circle at 50% 20%, black, transparent 75%);
	opacity: 0.52;
	pointer-events: none;
	position: absolute;
}

.cgm-ops-proof-topline,
.cgm-ops-proof-dark .cgm-ops-proof-layout {
	position: relative;
	z-index: 1;
}

.cgm-ops-proof-topline {
	align-items: end;
	display: grid;
	gap: 44px;
	grid-template-columns: minmax(0, 0.68fr) minmax(320px, 0.32fr);
}

.cgm-ops-proof-dark .cgm-ops-proof-head {
	max-width: 900px;
}

.cgm-ops-proof-dark .cgm-ops-proof-head h2 {
	color: #ffffff !important;
	font-size: clamp(2.35rem, 3.55vw, 4.15rem) !important;
	letter-spacing: -0.055em !important;
	line-height: 1.04 !important;
	margin: 0 0 20px !important;
}

.cgm-ops-proof-dark .cgm-ops-proof-head p:not(.cgm-section-kicker-light) {
	color: rgba(255, 255, 255, 0.74) !important;
	font-size: 1.02rem !important;
	line-height: 1.72 !important;
	margin: 0 !important;
	max-width: 780px !important;
}

.cgm-proof-standard-card {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(151, 215, 243, 0.20);
	border-radius: 24px;
	box-shadow: 0 26px 70px rgba(3, 4, 5, 0.22);
	padding: 24px;
}

.cgm-proof-standard-card span {
	color: #97d7f3;
	display: block;
	font-size: 0.72rem;
	font-weight: 950;
	letter-spacing: 0.14em;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.cgm-proof-standard-card strong {
	color: #fff;
	display: block;
	font-size: 1.28rem;
	letter-spacing: -0.035em;
	line-height: 1.1;
	margin-bottom: 10px;
}

.cgm-proof-standard-card p {
	color: rgba(255, 255, 255, 0.68) !important;
	font-size: 0.92rem !important;
	line-height: 1.58 !important;
	margin: 0 !important;
}

.cgm-ops-proof-dark .cgm-ops-proof-layout {
	gap: 28px;
	grid-template-columns: minmax(0, 1fr) 420px;
	margin-top: 54px;
}

.cgm-ops-proof-dark .cgm-ops-commitments {
	gap: 16px;
}

.cgm-ops-proof-dark .cgm-ops-commitments article {
	background: rgba(255, 255, 255, 0.95) !important;
	border: 1px solid rgba(151, 215, 243, 0.18) !important;
	border-radius: 22px !important;
	box-shadow: 0 22px 54px rgba(3, 4, 5, 0.18) !important;
	padding: 24px !important;
}

.cgm-ops-proof-dark .cgm-ops-commitments article:hover {
	transform: translateY(-3px);
}

.cgm-ops-proof-dark .cgm-ops-commitments h3 {
	color: #030405 !important;
	font-size: 1.12rem !important;
}

.cgm-ops-proof-dark .cgm-ops-commitments p {
	color: #475569 !important;
	font-size: 0.92rem !important;
	line-height: 1.62 !important;
}

.cgm-ops-proof-dark .cgm-partner-comparison {
	background: rgba(255, 255, 255, 0.08) !important;
	border: 1px solid rgba(151, 215, 243, 0.18);
	box-shadow: 0 26px 70px rgba(3, 4, 5, 0.24) !important;
}

.cgm-ops-proof-dark .cgm-comparison-row {
	background: rgba(255, 255, 255, 0.07) !important;
}

.cgm-ops-proof-dark .cgm-comparison-row.is-cg {
	background: rgba(12, 149, 238, 0.24) !important;
	border-color: rgba(151, 215, 243, 0.34) !important;
}

@media (max-width: 1060px) {
	.cgm-ops-proof-topline,
	.cgm-ops-proof-dark .cgm-ops-proof-layout {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 720px) {
	.cgm-ops-proof-dark {
		padding: 76px 0 !important;
	}
}


/* V0.5.6 Where to Start decision paths. */
.cgm-start-paths {
	background:
		radial-gradient(circle at 12% 16%, rgba(12, 149, 238, 0.20), transparent 30rem),
		radial-gradient(circle at 86% 70%, rgba(151, 215, 243, 0.14), transparent 32rem),
		linear-gradient(135deg, #030405 0%, #071e3a 52%, #0a2752 100%) !important;
	overflow: hidden;
	padding: 104px 0 !important;
	position: relative;
}

.cgm-start-paths::before {
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px),
		linear-gradient(180deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
	background-size: 52px 52px;
	content: "";
	inset: 0;
	opacity: 0.5;
	pointer-events: none;
	position: absolute;
}

.cgm-start-path-head,
.cgm-start-path-layout {
	position: relative;
	z-index: 1;
}

.cgm-start-path-head h2 {
	max-width: 960px !important;
}

.cgm-start-path-head p {
	max-width: 830px !important;
}

.cgm-start-path-layout {
	align-items: start;
	display: grid;
	gap: 28px;
	grid-template-columns: minmax(0, 1fr) 340px;
	margin-top: 54px;
}

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

.cgm-start-path-grid article {
	background: rgba(255, 255, 255, 0.07) !important;
	border: 1px solid rgba(255, 255, 255, 0.13) !important;
	border-radius: 26px !important;
	box-shadow: 0 24px 64px rgba(3, 4, 5, 0.18);
	display: flex;
	flex-direction: column;
	min-height: 480px;
	padding: 26px !important;
	transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

.cgm-start-path-grid article:hover {
	border-color: rgba(151, 215, 243, 0.30) !important;
	transform: translateY(-3px);
}

.cgm-start-path-grid article.is-featured {
	background: linear-gradient(135deg, #0c95ee, #0b73e0) !important;
	border-color: rgba(151, 215, 243, 0.44) !important;
	box-shadow: 0 30px 80px rgba(12, 149, 238, 0.28) !important;
}

.cgm-start-path-top {
	align-items: center;
	display: flex;
	gap: 10px;
	justify-content: space-between;
	margin-bottom: 22px;
}

.cgm-start-path-top span {
	background: rgba(151, 215, 243, 0.16);
	border: 1px solid rgba(151, 215, 243, 0.24);
	border-radius: 999px;
	color: #97d7f3;
	font-size: 0.68rem;
	font-weight: 950;
	letter-spacing: 0.12em;
	padding: 7px 10px;
	text-transform: uppercase;
}

.cgm-start-path-grid .is-featured .cgm-start-path-top span {
	background: rgba(255, 255, 255, 0.16);
	border-color: rgba(255, 255, 255, 0.28);
	color: #fff;
}

.cgm-start-path-top strong {
	color: rgba(255, 255, 255, 0.72);
	font-size: 0.78rem;
	font-weight: 850;
}

.cgm-start-path-grid h3 {
	color: #fff !important;
	font-size: 1.55rem !important;
	letter-spacing: -0.04em !important;
	line-height: 1.08 !important;
	margin: 0 0 14px !important;
}

.cgm-start-path-grid p {
	color: rgba(255, 255, 255, 0.72) !important;
	font-size: 0.93rem !important;
	line-height: 1.62 !important;
	margin: 0 0 20px !important;
}

.cgm-start-path-grid ul {
	display: grid;
	gap: 9px;
	list-style: none;
	margin: auto 0 22px;
	padding: 0;
}

.cgm-start-path-grid li {
	color: rgba(255, 255, 255, 0.82) !important;
	font-size: 0.86rem !important;
	font-weight: 800;
	line-height: 1.35;
	padding-left: 22px;
	position: relative;
}

.cgm-start-path-grid li::before {
	color: #97d7f3;
	content: "✓";
	font-weight: 950;
	left: 0;
	position: absolute;
	top: 0;
}

.cgm-start-path-grid .is-featured li::before {
	color: #fff;
}

.cgm-start-path-grid a {
	align-items: center;
	background: #ffffff;
	border-radius: 999px !important;
	color: #0a2752 !important;
	display: inline-flex;
	font-size: 0.9rem;
	font-weight: 950;
	justify-content: center;
	padding: 12px 16px;
	text-decoration: none;
}

.cgm-start-path-grid a::after {
	content: "→";
	margin-left: 9px;
}

.cgm-start-path-note {
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid rgba(151, 215, 243, 0.20);
	border-radius: 26px;
	box-shadow: 0 26px 70px rgba(3, 4, 5, 0.22);
	padding: 24px;
	position: sticky;
	top: 104px;
}

.cgm-start-path-note > span {
	color: #0c95ee;
	display: block;
	font-size: 0.72rem;
	font-weight: 950;
	letter-spacing: 0.14em;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.cgm-start-path-note h3 {
	color: #030405;
	font-size: 1.45rem;
	letter-spacing: -0.04em;
	line-height: 1.08;
	margin: 0 0 12px;
}

.cgm-start-path-note p {
	color: #475569;
	font-size: 0.92rem;
	line-height: 1.58;
	margin: 0 0 16px;
}

.cgm-start-path-note ul {
	display: grid;
	gap: 9px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.cgm-start-path-note li {
	background: #f5fbff;
	border: 1px solid rgba(12, 149, 238, 0.12);
	border-radius: 12px;
	color: #0a2752;
	font-size: 0.84rem;
	font-weight: 850;
	padding: 10px 12px;
}

@media (max-width: 1120px) {
	.cgm-start-path-layout {
		grid-template-columns: 1fr;
	}

	.cgm-start-path-note {
		position: relative;
		top: 0;
	}
}

@media (max-width: 920px) {
	.cgm-start-path-grid {
		grid-template-columns: 1fr;
	}

	.cgm-start-path-grid article {
		min-height: auto;
	}
}

@media (max-width: 720px) {
	.cgm-start-paths {
		padding: 76px 0 !important;
	}
}


/* V0.5.7 FAQ buyer-confidence polish. */
.cgm-faq-premium {
	background:
		radial-gradient(circle at 76% 12%, rgba(151, 215, 243, 0.34), transparent 30rem),
		radial-gradient(circle at 10% 80%, rgba(12, 149, 238, 0.08), transparent 26rem),
		#f5fbff !important;
	padding: 104px 0 !important;
}

.cgm-faq-premium .cgm-faq-layout {
	align-items: start;
	gap: 64px;
	grid-template-columns: minmax(300px, 0.36fr) minmax(0, 0.64fr) !important;
}

.cgm-faq-intro {
	position: sticky;
	top: 104px;
}

.cgm-faq-intro h2 {
	font-size: clamp(2.15rem, 3.25vw, 3.65rem) !important;
	letter-spacing: -0.055em !important;
	line-height: 1.04 !important;
	margin-bottom: 18px !important;
}

.cgm-faq-intro > p:not(.cgm-section-kicker-dark) {
	color: #475569 !important;
	font-size: 0.98rem !important;
	line-height: 1.7 !important;
	margin: 0 !important;
}

.cgm-faq-note {
	background: #ffffff;
	border: 1px solid rgba(12, 149, 238, 0.14);
	border-left: 4px solid #0c95ee;
	border-radius: 18px;
	box-shadow: 0 18px 44px rgba(10, 39, 82, 0.06);
	margin-top: 24px;
	padding: 18px;
}

.cgm-faq-note strong {
	color: #0a2752;
	display: block;
	font-size: 0.92rem;
	font-weight: 950;
	margin-bottom: 6px;
}

.cgm-faq-note span {
	color: #475569;
	display: block;
	font-size: 0.86rem;
	font-weight: 700;
	line-height: 1.5;
}

.cgm-faq-premium .cgm-faq-grid {
	display: grid;
	gap: 14px;
}

.cgm-faq-premium details {
	background: rgba(255, 255, 255, 0.96) !important;
	border: 1px solid rgba(12, 149, 238, 0.13) !important;
	border-radius: 20px !important;
	box-shadow: 0 16px 38px rgba(10, 39, 82, 0.055) !important;
	overflow: hidden;
}

.cgm-faq-premium details[open] {
	border-color: rgba(12, 149, 238, 0.24) !important;
	box-shadow: 0 22px 52px rgba(10, 39, 82, 0.08) !important;
}

.cgm-faq-premium summary {
	align-items: center;
	display: flex;
	font-size: 1.02rem !important;
	gap: 18px;
	justify-content: space-between;
	line-height: 1.35;
	padding: 20px 22px !important;
}

.cgm-faq-premium summary::after {
	align-items: center;
	background: #f5fbff;
	border: 1px solid rgba(12, 149, 238, 0.14);
	border-radius: 999px;
	color: #0c95ee !important;
	content: "+";
	display: inline-flex;
	flex: 0 0 30px;
	font-size: 1rem;
	height: 30px;
	justify-content: center;
	margin-left: 18px;
	width: 30px;
}

.cgm-faq-premium details[open] summary::after {
	content: "-";
}

.cgm-faq-premium details p {
	border-top: 1px solid #e8f2f8 !important;
	font-size: 0.94rem !important;
	line-height: 1.72 !important;
	padding: 0 22px 22px !important;
}

@media (max-width: 980px) {
	.cgm-faq-premium .cgm-faq-layout {
		grid-template-columns: 1fr !important;
	}

	.cgm-faq-intro {
		position: relative;
		top: 0;
	}
}

@media (max-width: 720px) {
	.cgm-faq-premium {
		padding: 76px 0 !important;
	}
}


/* V0.5.8 Final review form launch-readiness polish. */
.cgm-final-review-section {
	background:
		radial-gradient(circle at 82% 14%, rgba(151, 215, 243, 0.22), transparent 26rem),
		radial-gradient(circle at 12% 84%, rgba(12, 149, 238, 0.16), transparent 28rem),
		linear-gradient(145deg, #030405, #071e3a 44%, #0a2752) !important;
	padding: 104px 0 !important;
}

.cgm-final-review-section .cgm-form-copy h2 {
	font-size: clamp(2.35rem, 3.35vw, 3.95rem) !important;
	letter-spacing: -0.055em !important;
	line-height: 1.04 !important;
}

.cgm-final-review-section .cgm-form-copy p {
	max-width: 720px !important;
}

.cgm-final-review-section .cgm-form-points span {
	background: rgba(255, 255, 255, 0.08) !important;
	border: 1px solid rgba(151, 215, 243, 0.18) !important;
	color: rgba(255, 255, 255, 0.9) !important;
}

.cgm-final-review-section .cgm-review-form {
	background: rgba(255, 255, 255, 0.98) !important;
	border: 1px solid rgba(151, 215, 243, 0.20) !important;
	border-radius: 28px !important;
	box-shadow: 0 34px 90px rgba(3, 4, 5, 0.30) !important;
	padding: 30px !important;
}

.cgm-final-review-section .cgm-form-step-head {
	align-items: center;
	background: linear-gradient(135deg, #f5fbff, #ffffff) !important;
	border: 1px solid rgba(12, 149, 238, 0.14) !important;
	border-radius: 18px !important;
	display: flex;
	justify-content: space-between;
	margin-bottom: 18px;
	padding: 16px 18px !important;
}

.cgm-final-review-section .cgm-form-step-head span {
	color: #0c95ee !important;
	font-size: 0.72rem !important;
	font-weight: 950 !important;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.cgm-final-review-section .cgm-form-step-head strong {
	color: #0a2752 !important;
	font-size: 1.18rem !important;
	letter-spacing: -0.03em;
}

.cgm-final-review-section .cgm-review-form label {
	color: #0a2752 !important;
	font-size: 0.86rem !important;
	font-weight: 900 !important;
}

.cgm-final-review-section .cgm-review-form input,
.cgm-final-review-section .cgm-review-form select,
.cgm-final-review-section .cgm-review-form textarea {
	background: #f8fbff !important;
	border: 1px solid rgba(10, 39, 82, 0.16) !important;
	border-radius: 14px !important;
	margin-top: 8px;
}

.cgm-final-review-section .cgm-review-form input:focus,
.cgm-final-review-section .cgm-review-form select:focus,
.cgm-final-review-section .cgm-review-form textarea:focus {
	background: #ffffff !important;
	border-color: rgba(12, 149, 238, 0.72) !important;
	box-shadow: 0 0 0 4px rgba(12, 149, 238, 0.13) !important;
}

.cgm-final-review-section .cgm-phi-warning {
	background: #fff8e7 !important;
	border: 1px solid rgba(244, 183, 64, 0.34) !important;
	border-left: 4px solid #f4b740 !important;
	border-radius: 14px !important;
	color: #5f4210 !important;
	font-weight: 850 !important;
	line-height: 1.45 !important;
	padding: 13px 15px !important;
}

@media (max-width: 720px) {
	.cgm-final-review-section {
		padding: 76px 0 !important;
	}

	.cgm-final-review-section .cgm-review-form {
		padding: 20px !important;
	}

	.cgm-final-review-section .cgm-form-step-head {
		align-items: flex-start;
		flex-direction: column;
		gap: 5px;
	}
}


/* V0.5.9 Footer polish and footer CTA. */
.cgm-footer {
	background:
		radial-gradient(circle at 84% 10%, rgba(12, 149, 238, 0.18), transparent 30rem),
		radial-gradient(circle at 8% 90%, rgba(151, 215, 243, 0.08), transparent 26rem),
		linear-gradient(145deg, #030405 0%, #071e3a 52%, #0a2752 100%) !important;
	border-top: 1px solid rgba(151, 215, 243, 0.18);
	padding: 54px 24px 30px !important;
}

.cgm-footer-glow {
	background: radial-gradient(circle, rgba(12, 149, 238, 0.18), transparent 30rem) !important;
}

.cgm-footer-cta {
	align-items: center;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(151, 215, 243, 0.18);
	border-radius: 26px;
	box-shadow: 0 24px 70px rgba(3, 4, 5, 0.24);
	display: flex;
	gap: 24px;
	justify-content: space-between;
	margin: 0 auto 52px;
	max-width: 1160px;
	padding: 22px 24px;
	position: relative;
	z-index: 1;
}

.cgm-footer-cta span {
	color: #97d7f3;
	display: block;
	font-size: 0.72rem;
	font-weight: 950;
	letter-spacing: 0.14em;
	margin-bottom: 7px;
	text-transform: uppercase;
}

.cgm-footer-cta strong {
	color: #fff;
	display: block;
	font-size: clamp(1.15rem, 1.7vw, 1.65rem);
	letter-spacing: -0.035em;
	line-height: 1.12;
}

.cgm-footer-grid {
	gap: 50px !important;
}

.cgm-footer-grid > div:not(.cgm-footer-brand) {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
}

.cgm-footer h2 {
	color: #97d7f3 !important;
	font-size: 0.76rem !important;
	font-weight: 950;
	letter-spacing: 0.16em !important;
	margin: 0 0 18px;
}

.cgm-footer a {
	color: rgba(255, 255, 255, 0.70) !important;
	font-weight: 750;
	line-height: 1.35;
	margin-top: 12px !important;
	transition: color 160ms ease, transform 160ms ease;
}

.cgm-footer a:hover,
.cgm-footer a:focus-visible {
	color: #ffffff !important;
	transform: translateX(3px);
}

.cgm-footer-brand > p:not(.cgm-footer-warning) {
	color: rgba(255, 255, 255, 0.72);
	font-size: 0.95rem;
	line-height: 1.6;
	max-width: 330px;
}

.cgm-footer-warning {
	background: rgba(244, 183, 64, 0.12) !important;
	border: 1px solid rgba(244, 183, 64, 0.26) !important;
	border-left: 4px solid #f4b740;
	border-radius: 16px !important;
	color: #ffe8b8 !important;
	font-size: 0.88rem;
	font-weight: 800;
	line-height: 1.5;
	max-width: 330px;
	padding: 14px 16px !important;
}

.cgm-footer-bottom {
	border-top: 1px solid rgba(151, 215, 243, 0.16) !important;
	color: rgba(255, 255, 255, 0.66);
	gap: 12px 24px !important;
}

.cgm-footer-bottom p {
	font-weight: 650;
}

@media (max-width: 820px) {
	.cgm-footer-cta {
		align-items: flex-start;
		flex-direction: column;
	}

	.cgm-footer-cta .cgm-button {
		width: 100%;
	}
}
/* V0.6.0 responsive QA fixes */
.cgm-footer {
	overflow: hidden;
}

.cgm-footer-glow {
	right: 0 !important;
	max-width: min(520px, 42vw);
}

@media (max-width: 640px) {
	.cgm-footer-glow {
		max-width: 72vw;
		opacity: 0.55;
	}
}
/* V0.6.1 mobile hero review card containment */
.cgm-hero-review-card,
.cgm-hero-review-card * {
	box-sizing: border-box;
}

@media (max-width: 720px) {
	.cgm-hero-review-card {
		max-width: calc(100vw - 36px) !important;
		width: 100% !important;
	}

	.cgm-hero-review-card::before {
		inset: -20px !important;
	}

	.cgm-review-checks div,
	.cgm-review-card-head,
	.cgm-hero-review-card p {
		max-width: 100%;
	}
}
/* V0.7.0 — wire new homepage patterns: revenue-leak-map, service-tabs, process-timeline, why-cg, specialty-explorer, india-operations */
.cgm-specialty-list {
	overflow-y: auto;
	max-height: 480px;
	scrollbar-width: thin;
}

@media (max-width: 720px) {
	.cgm-specialty-list {
		max-height: none;
		overflow-y: visible;
	}
}

.cgm-inline-link {
	color: var(--cgm-accent);
	font-size: 0.92rem;
	font-weight: 750;
	text-decoration: none;
}

.cgm-inline-link:hover,
.cgm-inline-link:focus {
	text-decoration: underline;
}

.cgm-severity {
	background: rgba(244, 183, 64, 0.12);
	border: 1px solid rgba(244, 183, 64, 0.3);
	border-radius: 100px;
	color: #b87c10;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	padding: 3px 11px;
	text-transform: uppercase;
}

.cgm-status-pill {
	background: rgba(20, 184, 166, 0.1);
	border: 1px solid rgba(20, 184, 166, 0.25);
	border-radius: 100px;
	color: var(--cgm-accent);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	padding: 3px 11px;
	text-transform: uppercase;
}

.cgm-risk-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 16px 0;
}

/* V0.7.0 fix — neutralize stale 4-column leak-map rule from earlier iteration */
.cgm-leak-map {
	grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr) !important;
	margin-top: 0 !important;
}

.cgm-risk-chips span {
	background: rgba(20, 184, 166, 0.08);
	border: 1px solid rgba(20, 184, 166, 0.2);
	border-radius: 100px;
	color: #0d7a6e;
	font-size: 0.82rem;
	font-weight: 750;
	padding: 4px 12px;
}

/* ============================================
   V0.7.3 — Inner page styles
   ============================================ */

/* Page hero */
.cgm-page-hero {
	background: linear-gradient(180deg, #f0f7ff 0%, #f8fafc 100%);
	padding-block: 96px 80px;
}

.cgm-page-hero h1 {
	font-size: clamp(2rem, 4vw, 3rem);
	letter-spacing: -0.04em;
	line-height: 1.1;
	margin: 16px 0 24px;
	max-width: 860px;
}

.cgm-hero-lede {
	color: var(--cgm-muted);
	font-size: 1.1rem;
	line-height: 1.65;
	max-width: 720px;
}

/* CTA band light */
.cgm-cta-band-light {
	background: linear-gradient(135deg, rgba(20, 184, 166, 0.06), rgba(30, 58, 95, 0.04));
	border-top: 1px solid var(--cgm-border);
}

.cgm-cta-band-inner {
	align-items: center;
	display: flex;
	gap: 40px;
	justify-content: space-between;
}

.cgm-cta-band-inner h2 {
	font-size: clamp(1.4rem, 2.5vw, 2rem);
	letter-spacing: -0.03em;
	margin: 0 0 10px;
}

.cgm-cta-band-inner p {
	color: var(--cgm-muted);
	margin: 0;
}

.cgm-cta-band-inner .cgm-button {
	flex-shrink: 0;
}

/* Two-column about section */
.cgm-two-col-section {
	display: grid;
	gap: 48px;
	grid-template-columns: 1fr 1fr;
}

.cgm-two-col-section h2 {
	font-size: 1.6rem;
	letter-spacing: -0.03em;
	margin: 12px 0 16px;
}

.cgm-two-col-section p {
	color: var(--cgm-muted);
	line-height: 1.65;
	margin-bottom: 16px;
}

/* Steps list (process page) */
.cgm-steps-list {
	display: flex;
	flex-direction: column;
	gap: 24px;
	margin-top: 48px;
}

.cgm-step-card {
	align-items: flex-start;
	background: var(--cgm-card);
	border: 1px solid var(--cgm-border);
	border-radius: 20px;
	box-shadow: var(--cgm-card-shadow);
	display: flex;
	gap: 28px;
	padding: 28px 32px;
}

.cgm-step-num {
	background: linear-gradient(135deg, var(--cgm-primary), #2d5f9e);
	border-radius: 14px;
	color: #fff;
	flex-shrink: 0;
	font-size: 0.8rem;
	font-weight: 950;
	height: 44px;
	letter-spacing: 0.05em;
	line-height: 44px;
	text-align: center;
	width: 44px;
}

.cgm-step-body h3 {
	font-size: 1.2rem;
	letter-spacing: -0.03em;
	margin: 0 0 10px;
}

.cgm-step-body p {
	color: var(--cgm-muted);
	line-height: 1.65;
	margin: 0 0 14px;
}

.cgm-step-what {
	background: rgba(20, 184, 166, 0.06);
	border-left: 3px solid var(--cgm-accent);
	border-radius: 0 8px 8px 0;
	color: var(--cgm-primary);
	font-size: 0.9rem;
	padding: 10px 14px;
}

/* Comparison table */
.cgm-comparison-table {
	border: 1px solid var(--cgm-border);
	border-radius: 20px;
	margin-top: 40px;
	overflow: hidden;
}

.cgm-comparison-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

.cgm-comparison-row.cgm-comparison-head {
	background: var(--cgm-primary);
	color: #fff;
	font-size: 0.88rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.cgm-comparison-row > div {
	font-size: 0.95rem;
	line-height: 1.5;
	padding: 16px 24px;
}

.cgm-comparison-row:not(.cgm-comparison-head) {
	border-top: 1px solid var(--cgm-border);
}

.cgm-comparison-row:not(.cgm-comparison-head) > div:first-child {
	border-right: 1px solid var(--cgm-border);
	color: var(--cgm-muted);
}

.cgm-comparison-row:not(.cgm-comparison-head) > div:last-child {
	color: var(--cgm-primary);
	font-weight: 600;
}

.cgm-comparison-row:not(.cgm-comparison-head):nth-child(even) {
	background: rgba(248, 250, 252, 0.7);
}

/* Roles grid (careers page) */
.cgm-roles-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 40px;
}

.cgm-role-card {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 16px;
	padding: 22px 24px;
}

.cgm-role-card strong {
	color: #fff;
	display: block;
	font-size: 1rem;
	margin-bottom: 8px;
}

.cgm-role-card p {
	color: rgba(255, 255, 255, 0.65);
	font-size: 0.88rem;
	line-height: 1.55;
	margin: 0;
}

.cgm-careers-skills {
	background: linear-gradient(180deg, #ffffff 0%, #f6fbff 100%);
	border-top: 1px solid rgba(12, 149, 238, 0.08);
}

.cgm-careers-skills .cgm-proof-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cgm-careers-skills .cgm-proof-grid article {
	background: #ffffff;
	border: 1px solid rgba(12, 149, 238, 0.14);
	border-radius: 12px;
	box-shadow: 0 14px 34px rgba(10, 39, 82, 0.055);
	min-height: 100%;
	padding: 24px;
}

.cgm-careers-skills .cgm-proof-grid article span {
	align-items: center;
	background: rgba(12, 149, 238, 0.08);
	border-radius: 999px;
	color: #0c95ee !important;
	display: inline-flex;
	font-size: 0.78rem;
	height: 34px;
	justify-content: center;
	min-width: 34px;
	padding: 0 10px;
}

.cgm-careers-skills .cgm-proof-grid h3 {
	color: #071d35;
	font-size: 1.05rem;
	letter-spacing: 0;
	line-height: 1.25;
	margin: 16px 0 10px;
}

.cgm-careers-skills .cgm-proof-grid p {
	color: #536476;
	font-size: 0.94rem;
	line-height: 1.62;
	margin: 0;
}

@media (max-width: 1100px) {
	.cgm-careers-skills .cgm-proof-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* Responsive */
@media (max-width: 960px) {
	.cgm-cta-band-inner {
		flex-direction: column;
		align-items: flex-start;
	}

	.cgm-two-col-section {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.cgm-roles-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 720px) {
	.cgm-page-hero {
		padding-block: 72px 60px;
	}

	.cgm-step-card {
		flex-direction: column;
		gap: 16px;
		padding: 20px;
	}

	.cgm-comparison-table {
		overflow-x: auto;
	}

	.cgm-roles-grid {
		grid-template-columns: 1fr;
	}
}

/* V0.7.5 — Form success state */
.cgm-form-success {
	align-items: center;
	background: rgba(16, 185, 129, 0.06);
	border: 1px solid rgba(16, 185, 129, 0.25);
	border-radius: 20px;
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 40px 32px;
	text-align: center;
}

.cgm-form-success-icon {
	align-items: center;
	background: #10b981;
	border-radius: 50%;
	color: #fff;
	display: inline-flex;
	font-size: 1.4rem;
	height: 52px;
	justify-content: center;
	width: 52px;
}

.cgm-form-success strong {
	font-size: 1.3rem;
	letter-spacing: -0.02em;
}

.cgm-form-success p {
	color: var(--cgm-muted);
	font-size: 0.95rem;
	line-height: 1.6;
	margin: 0;
	max-width: 420px;
}

/* V0.7.6 — Billing software credibility section */
.cgm-software-section {
	background: #f6fbff;
	border-bottom: 1px solid rgba(10, 143, 220, 0.14);
	border-top: 1px solid rgba(10, 143, 220, 0.14);
	padding: 56px 20px;
}

.cgm-software-copy {
	margin: 0 auto 28px;
	max-width: 760px;
	text-align: center;
}

.cgm-software-copy h2 {
	color: #071d35;
	font-size: clamp(30px, 4vw, 48px);
	letter-spacing: 0;
	line-height: 1.05;
	margin: 0;
}

.cgm-software-copy p:not(.cgm-eyebrow) {
	color: #536476;
	font-size: 18px;
	line-height: 1.65;
	margin: 16px auto 0;
}

.cgm-software-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cgm-software-logo {
	align-items: center;
	background: #ffffff;
	border: 1px solid rgba(10, 143, 220, 0.18);
	border-radius: 8px;
	box-shadow: 0 18px 45px rgba(7, 29, 53, 0.06);
	display: flex;
	justify-content: center;
	min-height: 112px;
	padding: 22px;
}

.cgm-software-logo img {
	display: block;
	max-height: 58px;
	max-width: 100%;
	object-fit: contain;
}

@media (max-width: 860px) {
	.cgm-software-section {
		padding: 44px 18px;
	}

	.cgm-software-grid {
		gap: 12px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 520px) {
	.cgm-software-grid {
		grid-template-columns: 1fr;
	}

	.cgm-software-logo {
		min-height: 96px;
	}
}

/* V0.7.9 — SEO-rich RCM case studies section */
.cgm-case-section {
	background:
		linear-gradient(180deg, #ffffff 0%, #f7fbff 52%, #ffffff 100%);
	border-top: 1px solid rgba(10, 143, 220, 0.1);
	padding: 64px 20px;
}

.cgm-case-header {
	margin: 0 auto 30px;
	max-width: 980px;
	text-align: center;
}

.cgm-case-header h2 {
	color: #071d35;
	font-size: clamp(30px, 3.4vw, 46px);
	letter-spacing: 0;
	line-height: 1.08;
	margin: 0;
}

.cgm-case-header > p {
	color: #536476;
	font-size: 17px;
	line-height: 1.7;
	margin: 16px auto 0;
	max-width: 820px;
}

.cgm-case-results {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-bottom: 22px;
}

.cgm-case-results > div {
	background: #ffffff;
	border: 1px solid rgba(10, 143, 220, 0.18);
	border-radius: 8px;
	box-shadow: 0 14px 34px rgba(7, 29, 53, 0.055);
	color: #071d35;
	overflow: hidden;
	padding: 18px;
	position: relative;
}

.cgm-case-results > div::before {
	background: #0a8fdc;
	content: "";
	height: 3px;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.cgm-case-results span {
	color: #0a8fdc;
	display: block;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.1em;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.cgm-case-results strong {
	color: #071d35;
	display: block;
	font-size: clamp(22px, 2.2vw, 30px);
	line-height: 1.05;
	margin-bottom: 8px;
}

.cgm-case-results em {
	color: #536476;
	display: block;
	font-size: 13px;
	font-style: normal;
	line-height: 1.45;
}

.cgm-case-featured-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-bottom: 16px;
}

.cgm-case-card {
	background: #ffffff;
	border: 1px solid rgba(10, 143, 220, 0.14);
	border-radius: 8px;
	box-shadow: 0 16px 40px rgba(7, 29, 53, 0.055);
	display: flex;
	flex-direction: column;
	gap: 16px;
	min-height: 100%;
	padding: 24px;
}

.cgm-case-card-top {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.cgm-case-card-top span {
	color: #0a8fdc;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.cgm-case-card-top strong {
	color: #071d35;
	font-size: 20px;
	letter-spacing: 0;
	line-height: 1.16;
}

.cgm-case-card p {
	color: #536476;
	font-size: 15px;
	line-height: 1.6;
	margin: 0;
}

.cgm-case-card ul {
	border-top: 1px solid rgba(10, 143, 220, 0.12);
	display: grid;
	gap: 0;
	list-style: none;
	margin: auto 0 0;
	padding: 0;
}

.cgm-case-card li {
	background: transparent;
	border: 0;
	border-bottom: 1px solid rgba(10, 143, 220, 0.12);
	border-radius: 0;
	color: #153757;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.25;
	padding: 10px 0;
}

.cgm-case-card li:last-child {
	border-bottom: 0;
}

.cgm-case-more {
	background: rgba(255, 255, 255, 0.7);
	border: 1px solid rgba(10, 143, 220, 0.12);
	border-radius: 8px;
	margin-top: 16px;
	padding: 18px;
}

.cgm-case-more-header {
	align-items: baseline;
	display: flex;
	gap: 12px;
	justify-content: space-between;
	margin-bottom: 12px;
}

.cgm-case-more-header strong {
	color: #071d35;
	font-size: 20px;
	line-height: 1.2;
}

.cgm-case-more-header span {
	color: #536476;
	font-size: 14px;
}

.cgm-case-more-list {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cgm-case-mini {
	align-items: start;
	background: #ffffff;
	border: 1px solid rgba(10, 143, 220, 0.12);
	border-radius: 8px;
	display: grid;
	gap: 14px;
	grid-template-columns: minmax(180px, 0.9fr) minmax(0, 1.1fr);
	padding: 16px;
}

.cgm-case-mini span {
	color: #0a8fdc;
	display: block;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.1em;
	margin-bottom: 7px;
	text-transform: uppercase;
}

.cgm-case-mini strong {
	color: #071d35;
	display: block;
	font-size: 17px;
	line-height: 1.22;
}

.cgm-case-mini ul {
	display: grid;
	gap: 6px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.cgm-case-mini li {
	color: #536476;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	padding-left: 14px;
	position: relative;
}

.cgm-case-mini li::before {
	background: #0a8fdc;
	border-radius: 999px;
	content: "";
	height: 5px;
	left: 0;
	position: absolute;
	top: 0.58em;
	width: 5px;
}

.cgm-case-cta {
	align-items: center;
	background: #071d35;
	border: 1px solid rgba(10, 143, 220, 0.22);
	border-radius: 8px;
	box-shadow: 0 18px 45px rgba(7, 29, 53, 0.08);
	display: flex;
	gap: 24px;
	justify-content: space-between;
	margin-top: 18px;
	padding: 24px;
}

.cgm-case-cta strong {
	color: #ffffff;
	display: block;
	font-size: 22px;
	line-height: 1.2;
	margin-bottom: 6px;
}

.cgm-case-cta p {
	color: rgba(255, 255, 255, 0.72);
	font-size: 15px;
	line-height: 1.6;
	margin: 0;
	max-width: 760px;
}

.cgm-case-cta a {
	background: #0a8fdc;
	border-radius: 999px;
	color: #ffffff;
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 15px;
	font-weight: 800;
	justify-content: center;
	line-height: 1.2;
	padding: 14px 18px;
	text-decoration: none;
}

@media (max-width: 980px) {
	.cgm-case-results,
	.cgm-case-featured-grid,
	.cgm-case-more-list {
		grid-template-columns: 1fr;
	}

	.cgm-case-mini {
		grid-template-columns: 1fr;
	}

	.cgm-case-cta {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 620px) {
	.cgm-case-section {
		padding: 48px 18px;
	}

	.cgm-case-card,
	.cgm-case-results > div,
	.cgm-case-more,
	.cgm-case-mini,
	.cgm-case-cta {
		padding: 18px;
	}

	.cgm-case-more-header {
		align-items: flex-start;
		flex-direction: column;
		gap: 4px;
	}

	.cgm-case-card-top strong,
	.cgm-case-cta strong {
		font-size: 20px;
	}
}

/* V0.8.0 — Complete case study redesign */
.cgm-case-section {
	background: #f7fbff;
	border-top: 1px solid rgba(10, 143, 220, 0.12);
	padding: 72px 20px;
}

.cgm-case-hero {
	background: #ffffff;
	border: 1px solid rgba(10, 143, 220, 0.14);
	border-radius: 8px;
	box-shadow: 0 20px 50px rgba(7, 29, 53, 0.06);
	margin-bottom: 18px;
	padding: 34px;
	text-align: left;
}

.cgm-case-hero h2 {
	color: #071d35;
	font-size: clamp(34px, 4vw, 54px);
	letter-spacing: 0;
	line-height: 1.04;
	margin: 0;
	max-width: 900px;
}

.cgm-case-hero > p:not(.cgm-eyebrow) {
	color: #536476;
	font-size: 18px;
	line-height: 1.7;
	margin: 18px 0 0;
	max-width: 920px;
}

.cgm-case-proof {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 24px;
}

.cgm-case-proof span {
	background: #eef8ff;
	border: 1px solid rgba(10, 143, 220, 0.18);
	border-radius: 999px;
	color: #153757;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
	padding: 10px 13px;
}

.cgm-study-list {
	display: grid;
	gap: 16px;
}

.cgm-study-card {
	background: #ffffff;
	border: 1px solid rgba(10, 143, 220, 0.14);
	border-radius: 8px;
	box-shadow: 0 18px 45px rgba(7, 29, 53, 0.055);
	display: grid;
	grid-template-columns: 160px minmax(0, 1fr);
	overflow: hidden;
}

.cgm-study-heading {
	background: #071d35;
	color: #ffffff;
	padding: 24px 20px;
}

.cgm-study-heading span {
	color: rgba(255, 255, 255, 0.68);
	display: block;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.1em;
	margin-bottom: 12px;
	text-transform: uppercase;
}

.cgm-study-heading strong {
	display: block;
	font-size: 19px;
	letter-spacing: 0;
	line-height: 1.18;
}

.cgm-study-content {
	display: grid;
	gap: 22px;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 0.36fr);
	padding: 26px;
}

.cgm-study-main h3 {
	color: #071d35;
	font-size: clamp(24px, 2.2vw, 34px);
	letter-spacing: 0;
	line-height: 1.12;
	margin: 0;
}

.cgm-study-summary {
	color: #536476;
	font-size: 16px;
	line-height: 1.65;
	margin: 12px 0 0;
	max-width: 820px;
}

.cgm-study-detail-grid {
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
	margin-top: 22px;
}

.cgm-study-detail-grid > div {
	background: #f7fbff;
	border: 1px solid rgba(10, 143, 220, 0.12);
	border-radius: 8px;
	padding: 18px;
}

.cgm-study-detail-grid h4,
.cgm-study-results span {
	color: #0a8fdc;
	display: block;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.1em;
	margin: 0 0 10px;
	text-transform: uppercase;
}

.cgm-study-detail-grid p {
	color: #536476;
	font-size: 15px;
	line-height: 1.6;
	margin: 0;
}

.cgm-study-detail-grid ul,
.cgm-study-results ul {
	display: grid;
	gap: 9px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.cgm-study-detail-grid li,
.cgm-study-results li {
	color: #536476;
	font-size: 15px;
	line-height: 1.5;
	padding-left: 18px;
	position: relative;
}

.cgm-study-detail-grid li::before,
.cgm-study-results li::before {
	background: #0a8fdc;
	border-radius: 999px;
	content: "";
	height: 6px;
	left: 0;
	position: absolute;
	top: 0.62em;
	width: 6px;
}

.cgm-study-results {
	align-self: stretch;
	background: #eef8ff;
	border: 1px solid rgba(10, 143, 220, 0.2);
	border-radius: 8px;
	padding: 20px;
}

.cgm-study-results li {
	color: #153757;
	font-weight: 800;
}

.cgm-case-cta {
	align-items: center;
	background: #071d35;
	border: 1px solid rgba(10, 143, 220, 0.22);
	border-radius: 8px;
	box-shadow: 0 18px 45px rgba(7, 29, 53, 0.08);
	display: flex;
	gap: 24px;
	justify-content: space-between;
	margin-top: 18px;
	padding: 26px;
}

.cgm-case-cta strong {
	color: #ffffff;
	display: block;
	font-size: 23px;
	line-height: 1.2;
	margin-bottom: 6px;
}

.cgm-case-cta p {
	color: rgba(255, 255, 255, 0.72);
	font-size: 15px;
	line-height: 1.6;
	margin: 0;
	max-width: 760px;
}

.cgm-case-cta a {
	background: #0a8fdc;
	border-radius: 999px;
	color: #ffffff;
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 15px;
	font-weight: 800;
	justify-content: center;
	line-height: 1.2;
	padding: 14px 18px;
	text-decoration: none;
}

@media (max-width: 1080px) {
	.cgm-study-card,
	.cgm-study-content,
	.cgm-study-detail-grid {
		grid-template-columns: 1fr;
	}

	.cgm-study-heading {
		padding: 20px 24px;
	}
}

@media (max-width: 720px) {
	.cgm-case-section {
		padding: 52px 18px;
	}

	.cgm-case-hero,
	.cgm-study-content,
	.cgm-study-detail-grid > div,
	.cgm-study-results,
	.cgm-case-cta {
		padding: 20px;
	}

	.cgm-case-proof {
		flex-direction: column;
	}

	.cgm-case-proof span {
		border-radius: 8px;
	}

	.cgm-case-cta {
		align-items: flex-start;
		flex-direction: column;
	}
}

/* V0.8.1 - Animated hero benefit text */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	border: 0;
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	white-space: nowrap;
	width: 1px;
}

.cgm-hero-with-review h1 .cgm-hero-rotator {
	display: grid !important;
	line-height: 1.05;
	margin-top: 0.02em;
	min-height: 1.18em;
	overflow: visible;
	padding: 0 0.12em 0.1em 0;
	position: relative;
	width: 100%;
}

.cgm-hero-with-review h1 .cgm-hero-rotator::after {
	content: none !important;
	display: none !important;
}

.cgm-hero-with-review h1 .cgm-hero-rotator-word {
	animation: cgmHeroRotator 7.5s infinite;
	grid-area: 1 / 1;
	opacity: 0;
	position: relative;
	transform: translateY(0.8em);
	white-space: nowrap;
	will-change: opacity, transform;
}

.cgm-hero-with-review h1 .cgm-hero-rotator-word::after {
	content: none !important;
	display: none !important;
}

.cgm-hero-with-review h1 .cgm-hero-rotator-word:nth-child(2) {
	animation-delay: 2.5s;
}

.cgm-hero-with-review h1 .cgm-hero-rotator-word:nth-child(3) {
	animation-delay: 5s;
}

@keyframes cgmHeroRotator {
	0% {
		opacity: 0;
		transform: translateY(0.8em);
	}
	10%,
	30% {
		opacity: 1;
		transform: translateY(0);
	}
	40%,
	100% {
		opacity: 0;
		transform: translateY(-0.8em);
	}
}

@media (prefers-reduced-motion: reduce) {
	.cgm-hero-with-review h1 .cgm-hero-rotator-word {
		animation: none;
		opacity: 0;
		transform: none;
	}

	.cgm-hero-with-review h1 .cgm-hero-rotator-word:first-child {
		opacity: 1;
	}
}

@media (max-width: 520px) {
	.cgm-hero-with-review h1 .cgm-hero-rotator-word {
		white-space: normal;
	}
}

/* V0.9.1 - Background-photo hero trial. */
.cgm-hero-image-bg {
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.94) 42%, rgba(245, 251, 255, 0.5) 66%, rgba(245, 251, 255, 0.16) 100%),
		linear-gradient(180deg, rgba(245, 251, 255, 0.42), rgba(255, 255, 255, 0.82)),
		url("../img/cg-hero-practice-background.png") right center / cover no-repeat !important;
	overflow: hidden;
	position: relative;
}

.cgm-hero-image-bg .cgm-salient-hero-inner {
	align-items: center !important;
	grid-template-columns: minmax(0, 0.56fr) minmax(0, 0.44fr) !important;
	min-height: 620px;
	position: relative;
	z-index: 1;
}

.cgm-hero-image-bg .cgm-hero-copy {
	max-width: 720px;
	position: relative;
	z-index: 2;
}

.cgm-hero-image-bg .cgm-salient-lede,
.cgm-hero-image-bg .cgm-salient-sublede {
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.56);
}

.cgm-hero-image-bg .cgm-salient-actions .cgm-button {
	white-space: nowrap;
}

@media (max-width: 1040px) {
	.cgm-hero-image-bg {
		background:
			linear-gradient(180deg, rgba(255, 255, 255, 0.94) 0%, rgba(255, 255, 255, 0.9) 44%, rgba(245, 251, 255, 0.96) 100%),
			url("../img/cg-hero-practice-background.png") center top / cover no-repeat !important;
	}

	.cgm-hero-image-bg .cgm-salient-hero-inner {
		grid-template-columns: 1fr !important;
		min-height: 0;
	}
}

@media (max-width: 720px) {
	.cgm-hero-image-bg {
		background:
			linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.93) 38%, rgba(245, 251, 255, 0.98) 100%),
			url("../img/cg-hero-practice-background.png") 62% top / auto 390px no-repeat !important;
	}

.cgm-hero-image-bg .cgm-salient-actions .cgm-button {
		white-space: normal;
	}
}

/* V0.9.4 - Minimal operational proof strip below the hero. */
.cgm-proof-strip {
	background: #ffffff !important;
	padding: 0 0 42px !important;
	text-align: left !important;
}

.cgm-proof-strip-panel {
	background: rgba(255, 255, 255, 0.9);
	border: 1px solid rgba(12, 149, 238, 0.1);
	border-radius: 14px;
	box-shadow: 0 18px 45px rgba(10, 39, 82, 0.045);
	padding: 22px 28px;
}

.cgm-proof-strip-label {
	color: #516172 !important;
	font-size: 0.72rem;
	font-weight: 850 !important;
	letter-spacing: 0.12em !important;
	line-height: 1.4 !important;
	margin: 0 0 18px !important;
	text-transform: uppercase;
}

.cgm-proof-strip-grid {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cgm-proof-strip-grid article {
	border-left: 1px solid rgba(12, 149, 238, 0.12);
	min-width: 0;
	padding: 0 24px;
}

.cgm-proof-strip-grid article:first-child {
	border-left: 0;
	padding-left: 0;
}

.cgm-proof-strip-grid strong {
	color: #0a2752;
	display: block;
	font-size: 0.94rem;
	font-weight: 900;
	letter-spacing: -0.015em;
	line-height: 1.22;
	margin-bottom: 7px;
}

.cgm-proof-strip-grid span {
	color: #5f7082;
	display: block;
	font-size: 0.78rem;
	font-weight: 650;
	line-height: 1.45;
}

@media (max-width: 1040px) {
	.cgm-proof-strip-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cgm-proof-strip-grid article {
		border-left: 0;
		border-top: 1px solid rgba(12, 149, 238, 0.1);
		padding: 18px 0 0;
	}

	.cgm-proof-strip-grid article:nth-child(-n + 2) {
		border-top: 0;
		padding-top: 0;
	}

	.cgm-proof-strip-grid article:nth-child(odd) {
		padding-right: 20px;
	}

	.cgm-proof-strip-grid article:nth-child(even) {
		border-left: 1px solid rgba(12, 149, 238, 0.1);
		padding-left: 20px;
	}
}

@media (max-width: 720px) {
	.cgm-proof-strip {
		padding-bottom: 34px !important;
	}

	.cgm-proof-strip-panel {
		border-radius: 12px;
		padding: 20px;
	}

	.cgm-proof-strip-grid {
		grid-template-columns: 1fr;
	}

	.cgm-proof-strip-grid article,
	.cgm-proof-strip-grid article:first-child,
	.cgm-proof-strip-grid article:nth-child(-n + 2),
	.cgm-proof-strip-grid article:nth-child(even),
	.cgm-proof-strip-grid article:nth-child(odd) {
		border-left: 0;
		border-top: 1px solid rgba(12, 149, 238, 0.1);
		padding: 16px 0 0;
	}

	.cgm-proof-strip-grid article:first-child {
		border-top: 0;
		padding-top: 0;
	}
}

/* V0.8.6 - Keep logo/header alignment consistent across home and inner pages */
body.home .cgm-nav-shell,
body.blog .cgm-nav-shell {
	max-width: 1360px !important;
}

/* V0.8.8 - Route detailed content through one Revenue Cycle Solutions destination */
.cgm-home-routes {
	background: #fff;
	padding-block: 86px !important;
}

.cgm-home-route-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cgm-solutions-route-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cgm-home-route-grid a {
	background: rgba(255, 255, 255, 0.9);
	border: 1px solid var(--cgm-border);
	border-radius: 20px;
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.05);
	color: inherit;
	display: block;
	min-height: 100%;
	padding: 24px;
	text-decoration: none;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.cgm-home-route-grid a:hover,
.cgm-home-route-grid a:focus {
	border-color: rgba(12, 149, 238, 0.28);
	box-shadow: 0 22px 52px rgba(12, 149, 238, 0.1);
	transform: translateY(-2px);
}

.cgm-home-route-grid span {
	color: var(--cgm-accent);
	display: block;
	font-size: 0.72rem;
	font-weight: 900;
	letter-spacing: 0.13em;
	margin-bottom: 18px;
	text-transform: uppercase;
}

.cgm-home-route-grid strong {
	color: var(--cgm-primary);
	display: block;
	font-size: 1.28rem;
	letter-spacing: -0.035em;
	line-height: 1.12;
	margin-bottom: 10px;
}

.cgm-home-route-grid p {
	color: var(--cgm-muted);
	font-size: 0.93rem;
	line-height: 1.58;
	margin: 0;
}

@media (max-width: 1180px) {
	.cgm-home-route-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cgm-solutions-route-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.cgm-solutions-route-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.cgm-home-routes {
		padding-block: 64px !important;
	}

	.cgm-home-route-grid {
		grid-template-columns: 1fr;
	}
}

/* V0.8.2 - Revenue Leak Map orbital layout */
.cgm-leak-orbital-map {
	align-items: stretch;
	gap: 32px;
	grid-template-columns: minmax(520px, 1.08fr) minmax(340px, 0.92fr) !important;
}

.cgm-leak-orbit-card {
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.94), rgba(240, 247, 255, 0.78));
	border: 1px solid var(--cgm-border);
	border-radius: var(--cgm-radius);
	box-shadow: var(--cgm-card-shadow);
	min-height: 560px;
	overflow: hidden;
	padding: 28px;
	position: relative;
}

.cgm-leak-orbit-card::before {
	background:
		radial-gradient(circle at 50% 50%, rgba(20, 184, 166, 0.13), transparent 34%),
		radial-gradient(circle at 12% 18%, rgba(30, 58, 95, 0.08), transparent 28%),
		radial-gradient(circle at 86% 80%, rgba(244, 183, 64, 0.12), transparent 24%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.cgm-leak-orbit-shell {
	aspect-ratio: 1;
	margin: 0 auto;
	max-width: 560px;
	position: relative;
	width: 100%;
	z-index: 1;
}

.cgm-leak-ring {
	border: 1px solid rgba(30, 58, 95, 0.13);
	border-radius: 999px;
	inset: 9%;
	position: absolute;
}

.cgm-leak-ring-inner {
	border-color: rgba(20, 184, 166, 0.18);
	inset: 25%;
}

.cgm-leak-ring-outer::before,
.cgm-leak-ring-outer::after {
	background: rgba(30, 58, 95, 0.09);
	content: "";
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
}

.cgm-leak-ring-outer::before {
	height: 1px;
	width: 100%;
}

.cgm-leak-ring-outer::after {
	height: 100%;
	width: 1px;
}

.cgm-leak-hub {
	align-items: center;
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid rgba(20, 184, 166, 0.24);
	border-radius: 999px;
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
	display: flex;
	flex-direction: column;
	gap: 6px;
	inset: 50% auto auto 50%;
	justify-content: center;
	min-height: 168px;
	padding: 20px;
	position: absolute;
	text-align: center;
	transform: translate(-50%, -50%);
	width: 168px;
	z-index: 2;
}

.cgm-leak-hub span {
	color: var(--cgm-accent);
	font-size: 0.74rem;
	font-weight: 900;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.cgm-leak-hub strong {
	color: var(--cgm-primary);
	font-size: 1rem;
	letter-spacing: -0.02em;
	line-height: 1.08;
}

.cgm-leak-hub em {
	color: var(--cgm-muted);
	font-size: 0.72rem;
	font-style: normal;
	line-height: 1.35;
	max-width: 118px;
}

.cgm-leak-orbital-map .cgm-leak-nodes {
	background: transparent;
	border: 0;
	box-shadow: none;
	display: block;
	inset: 0;
	padding: 0;
	position: absolute;
}

.cgm-leak-orbital-map .cgm-leak-node {
	align-items: flex-start;
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(30, 58, 95, 0.15);
	border-radius: 14px;
	box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
	display: flex;
	flex-direction: column;
	gap: 6px;
	justify-content: center;
	min-height: 68px;
	padding: 12px 14px;
	position: absolute;
	text-align: left;
	transform: translate(-50%, -50%);
	width: 136px;
	z-index: 3;
}

.cgm-leak-orbital-map .cgm-leak-node span {
	color: var(--cgm-accent);
	font-size: 0.7rem;
	font-weight: 900;
	letter-spacing: 0.08em;
	line-height: 1;
}

.cgm-leak-orbital-map .cgm-leak-node strong {
	color: inherit;
	font-size: 0.88rem;
	line-height: 1.12;
}

.cgm-leak-orbital-map .cgm-leak-node:hover,
.cgm-leak-orbital-map .cgm-leak-node.is-active {
	background: rgba(255, 255, 255, 0.98);
	box-shadow: 0 18px 38px rgba(20, 184, 166, 0.18);
}

.cgm-leak-orbital-map .cgm-leak-node:nth-child(1) {
	left: 50%;
	top: 8%;
}

.cgm-leak-orbital-map .cgm-leak-node:nth-child(2) {
	left: 75%;
	top: 15%;
}

.cgm-leak-orbital-map .cgm-leak-node:nth-child(3) {
	left: 89%;
	top: 38%;
}

.cgm-leak-orbital-map .cgm-leak-node:nth-child(4) {
	left: 84%;
	top: 66%;
}

.cgm-leak-orbital-map .cgm-leak-node:nth-child(5) {
	left: 62%;
	top: 86%;
}

.cgm-leak-orbital-map .cgm-leak-node:nth-child(6) {
	left: 38%;
	top: 86%;
}

.cgm-leak-orbital-map .cgm-leak-node:nth-child(7) {
	left: 16%;
	top: 66%;
}

.cgm-leak-orbital-map .cgm-leak-node:nth-child(8) {
	left: 11%;
	top: 38%;
}

.cgm-leak-orbital-map .cgm-leak-node:nth-child(9) {
	left: 25%;
	top: 15%;
}

.cgm-leak-orbital-map .cgm-leak-panel {
	align-self: stretch;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

@media (max-width: 1060px) {
	.cgm-leak-orbital-map {
		grid-template-columns: 1fr !important;
	}

	.cgm-leak-orbit-card {
		min-height: 520px;
	}
}

@media (max-width: 720px) {
	.cgm-leak-orbit-card {
		min-height: 0;
		padding: 20px;
	}

	.cgm-leak-orbit-shell {
		aspect-ratio: auto;
		max-width: none;
	}

	.cgm-leak-ring {
		display: none;
	}

	.cgm-leak-hub {
		border-radius: 18px;
		margin-bottom: 16px;
		min-height: 0;
		padding: 18px;
		position: static;
		transform: none;
		width: 100%;
	}

	.cgm-leak-hub em {
		max-width: none;
	}

	.cgm-leak-orbital-map .cgm-leak-nodes {
		display: grid;
		gap: 10px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		position: static;
	}

	.cgm-leak-orbital-map .cgm-leak-node {
		min-height: 74px;
		position: static;
		transform: none;
		width: auto;
	}
}

@media (max-width: 460px) {
	.cgm-leak-orbital-map .cgm-leak-nodes {
		grid-template-columns: 1fr;
	}
}

/* V0.9.7 - Minimal booking/contact experience. */
.cgm-contact-page .cgm-contact-main {
	background:
		radial-gradient(circle at 16% 6%, rgba(12, 149, 238, 0.11), transparent 28rem),
		linear-gradient(180deg, #ffffff 0%, #f5fbff 42%, #ffffff 100%) !important;
}

.cgm-contact-page .cgm-contact-hero {
	padding-bottom: 26px !important;
	padding-top: 110px !important;
}

.cgm-contact-page .cgm-contact-hero-grid {
	align-items: end;
	gap: 46px;
	grid-template-columns: minmax(0, 0.7fr) minmax(320px, 0.3fr) !important;
}

.cgm-contact-page .cgm-contact-hero h1 {
	color: #030405;
	font-size: clamp(2.35rem, 3.6vw, 4.25rem) !important;
	line-height: 1.03 !important;
	max-width: 760px;
}

.cgm-contact-reassurance {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 22px;
}

.cgm-contact-reassurance span {
	background: #ffffff;
	border: 1px solid rgba(12, 149, 238, 0.13);
	border-radius: 999px;
	color: #0a2752;
	font-size: 0.78rem;
	font-weight: 850;
	padding: 8px 11px;
}

.cgm-contact-page .cgm-contact-card {
	background: #ffffff !important;
	border: 1px solid rgba(12, 149, 238, 0.13) !important;
	border-radius: 16px !important;
	box-shadow: 0 18px 46px rgba(10, 39, 82, 0.055) !important;
	padding: 22px !important;
}

.cgm-contact-page .cgm-contact-card strong {
	color: #0a2752;
	font-size: 0.98rem;
	margin-bottom: 12px;
}

.cgm-contact-page .cgm-contact-card ul {
	display: grid;
	gap: 8px;
	list-style: none;
	padding-left: 0;
}

.cgm-contact-page .cgm-contact-card li {
	color: #475569;
	font-size: 0.88rem;
	font-weight: 750;
	line-height: 1.35;
	padding-left: 18px;
	position: relative;
}

.cgm-contact-page .cgm-contact-card li::before {
	background: #0c95ee;
	border-radius: 999px;
	content: "";
	height: 6px;
	left: 0;
	position: absolute;
	top: 0.48em;
	width: 6px;
}

.cgm-booking-section,
.cgm-final-review-section.cgm-booking-section {
	background: #ffffff !important;
	padding: 56px 0 74px !important;
}

.cgm-booking-section .cgm-form-grid {
	align-items: start;
	display: grid;
	gap: 26px !important;
	grid-template-columns: minmax(280px, 0.38fr) minmax(0, 0.62fr);
}

.cgm-booking-section .cgm-form-copy {
	background: #f5fbff;
	border: 1px solid rgba(12, 149, 238, 0.12);
	border-radius: 18px;
	box-shadow: none;
	padding: 26px;
	position: sticky;
	top: 104px;
}

.cgm-booking-section .cgm-form-copy h2 {
	color: #0a2752 !important;
	font-size: clamp(1.55rem, 1.75vw, 2.2rem) !important;
	letter-spacing: -0.045em !important;
	line-height: 1.08 !important;
}

.cgm-booking-section .cgm-form-copy p {
	color: #475569 !important;
	font-size: 0.94rem !important;
	line-height: 1.65 !important;
}

.cgm-booking-section .cgm-form-points {
	gap: 8px;
	margin-top: 20px;
}

.cgm-booking-section .cgm-form-points span {
	background: #ffffff !important;
	border: 1px solid rgba(12, 149, 238, 0.12) !important;
	color: #0a2752 !important;
	font-size: 0.76rem;
	padding: 8px 10px;
}

.cgm-booking-section .cgm-form-safe-box {
	background: #ffffff;
	border: 1px solid rgba(244, 183, 64, 0.28);
	border-left: 3px solid #f4b740;
	border-radius: 14px;
	margin-top: 20px;
	padding: 15px;
}

.cgm-booking-section .cgm-form-safe-box strong {
	color: #5f4210;
	font-size: 0.88rem;
}

.cgm-booking-section .cgm-form-safe-box p {
	color: #6b4b11 !important;
	font-size: 0.82rem !important;
	line-height: 1.45 !important;
}

.cgm-booking-section .cgm-review-form {
	background: #ffffff !important;
	border: 1px solid rgba(12, 149, 238, 0.13) !important;
	border-radius: 18px !important;
	box-shadow: 0 20px 54px rgba(10, 39, 82, 0.07) !important;
	padding: 26px !important;
}

.cgm-booking-section .cgm-review-form,
.cgm-booking-section .cgm-review-form * {
	box-sizing: border-box;
}

.cgm-booking-section .cgm-form-step-head {
	background: transparent !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(12, 149, 238, 0.12) !important;
	border-radius: 0 !important;
	margin-bottom: 22px;
	padding: 0 0 16px !important;
}

.cgm-booking-section .cgm-form-step-head span {
	color: #0c95ee !important;
}

.cgm-booking-section .cgm-form-step-head strong {
	color: #0a2752 !important;
	font-size: 1.16rem !important;
}

.cgm-form-field-grid {
	display: grid;
	gap: 14px 16px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cgm-booking-section .cgm-review-form label {
	color: #0a2752 !important;
	font-size: 0.84rem !important;
	font-weight: 850 !important;
	margin-bottom: 14px;
}

.cgm-booking-section .cgm-field-label {
	display: inline-block;
}

.cgm-booking-section .cgm-field-label em {
	color: #0c95ee;
	font-style: normal;
	font-weight: 950;
}

.cgm-booking-section .cgm-review-form input,
.cgm-booking-section .cgm-review-form select,
.cgm-booking-section .cgm-review-form textarea {
	background: #ffffff !important;
	border: 1px solid rgba(10, 39, 82, 0.16) !important;
	border-radius: 10px !important;
	min-height: 46px;
	padding: 12px 13px !important;
}

.cgm-booking-section .cgm-review-form textarea {
	min-height: 112px;
}

.cgm-booking-section .cgm-phi-warning {
	background: #fffaf0 !important;
	border: 1px solid rgba(244, 183, 64, 0.30) !important;
	border-left: 3px solid #f4b740 !important;
	border-radius: 12px !important;
	color: #6b4b11 !important;
	font-size: 0.84rem !important;
	font-weight: 750 !important;
	padding: 12px 14px !important;
}

.cgm-contact-page .cgm-contact-details-band {
	background: #ffffff !important;
	color: #0a2752;
	padding: 30px 0 80px !important;
}

.cgm-contact-page .cgm-contact-detail-grid article {
	background: #f5fbff;
	border: 1px solid rgba(12, 149, 238, 0.11);
	border-radius: 14px;
	box-shadow: none;
}

.cgm-contact-page .cgm-contact-detail-grid p,
.cgm-contact-page .cgm-contact-detail-grid a {
	color: #475569;
}

.cgm-contact-page .cgm-contact-detail-grid small {
	color: #64748b;
	display: block;
	font-size: 0.78rem;
	line-height: 1.55;
	margin-top: 8px;
}

.cgm-contact-map-section {
	background: #f8fbff;
	border-top: 1px solid rgba(12, 149, 238, 0.1);
	padding: 56px 0 84px !important;
}

.cgm-contact-map-grid {
	align-items: stretch;
	display: grid;
	gap: 28px;
	grid-template-columns: minmax(0, 0.56fr) minmax(320px, 0.44fr);
}

.cgm-contact-map-grid h2 {
	color: #071d35;
	font-size: clamp(1.7rem, 2.5vw, 2.45rem);
	letter-spacing: 0;
	line-height: 1.08;
	margin: 10px 0 14px;
	max-width: 680px;
}

.cgm-contact-map-grid p {
	color: #536476;
	font-size: 1rem;
	line-height: 1.7;
	margin: 0;
	max-width: 720px;
}

.cgm-contact-map-card {
	background: #ffffff;
	border: 1px solid rgba(12, 149, 238, 0.14);
	border-radius: 16px;
	box-shadow: 0 18px 48px rgba(7, 29, 53, 0.08);
	overflow: hidden;
	position: relative;
}

.cgm-contact-map-card iframe {
	aspect-ratio: 16 / 10;
	border: 0;
	display: block;
	filter: saturate(0.92) contrast(0.98);
	min-height: 310px;
	width: 100%;
}

.cgm-contact-map-card a {
	background: #ffffff;
	border-top: 1px solid rgba(12, 149, 238, 0.12);
	color: #0a8fdc;
	display: block;
	font-size: 0.86rem;
	font-weight: 850;
	letter-spacing: 0;
	padding: 14px 18px;
	text-decoration: none;
}

@media (max-width: 980px) {
	.cgm-contact-page .cgm-contact-hero-grid,
	.cgm-booking-section .cgm-form-grid,
	.cgm-contact-map-grid {
		grid-template-columns: 1fr !important;
	}

	.cgm-booking-section .cgm-form-copy {
		position: relative;
		top: 0;
	}
}

@media (max-width: 720px) {
	.cgm-contact-page .cgm-contact-hero {
		padding-top: 72px !important;
	}

	.cgm-booking-section,
	.cgm-final-review-section.cgm-booking-section {
		padding: 38px 0 58px !important;
	}

	.cgm-form-field-grid {
		grid-template-columns: 1fr;
	}

	.cgm-booking-section .cgm-review-form,
	.cgm-booking-section .cgm-form-copy {
		border-radius: 16px !important;
		padding: 20px !important;
	}

	.cgm-contact-page .cgm-booking-section .cgm-form-copy p {
		display: block !important;
	}

	.cgm-contact-page .cgm-booking-section .cgm-form-points {
		display: flex !important;
	}
}

/* V0.9.9 - Blog section and article templates. */
.cgm-blog-main,
.cgm-blog-article-main {
	background: #ffffff;
}

.cgm-blog-hero,
.cgm-blog-article-hero {
	background:
		radial-gradient(circle at 14% 8%, rgba(12, 149, 238, 0.12), transparent 28rem),
		linear-gradient(180deg, #ffffff 0%, #f5fbff 100%);
	padding: 128px 0 76px !important;
}

.cgm-blog-hero h1,
.cgm-blog-article-hero h1 {
	color: #030405;
	font-size: clamp(2.55rem, 4vw, 4.7rem);
	letter-spacing: -0.055em;
	line-height: 1.02;
	margin: 0 0 20px;
	max-width: 940px;
}

.cgm-blog-hero p,
.cgm-blog-article-hero p {
	color: #475569;
	font-size: 1.06rem;
	line-height: 1.72;
	margin: 0;
	max-width: 820px;
}

.cgm-blog-index {
	padding: 72px 0 88px !important;
}

.cgm-blog-layout {
	align-items: start;
	display: grid;
	gap: 24px;
	grid-template-columns: minmax(0, 1fr) 320px;
}

.cgm-blog-featured,
.cgm-blog-topics,
.cgm-blog-card,
.cgm-blog-article-cta {
	background: #ffffff;
	border: 1px solid rgba(12, 149, 238, 0.13);
	border-radius: 18px;
	box-shadow: 0 18px 46px rgba(10, 39, 82, 0.06);
}

.cgm-blog-featured {
	padding: 30px;
}

.cgm-blog-featured > span,
.cgm-blog-card span,
.cgm-blog-topics strong {
	color: #0c95ee;
	display: block;
	font-size: 0.72rem;
	font-weight: 950;
	letter-spacing: 0.13em;
	margin-bottom: 12px;
	text-transform: uppercase;
}

.cgm-blog-featured h2 {
	color: #0a2752;
	font-size: clamp(1.8rem, 2.4vw, 3rem);
	letter-spacing: -0.045em;
	line-height: 1.08;
	margin: 0 0 16px;
	max-width: 780px;
}

.cgm-blog-featured p,
.cgm-blog-card p,
.cgm-blog-cta p,
.cgm-blog-article-cta p {
	color: #475569;
	font-size: 0.96rem;
	line-height: 1.65;
}

.cgm-blog-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 20px 0 24px;
}

.cgm-blog-meta em {
	background: #f5fbff;
	border: 1px solid rgba(12, 149, 238, 0.12);
	border-radius: 999px;
	color: #0a2752;
	font-size: 0.78rem;
	font-style: normal;
	font-weight: 850;
	padding: 8px 10px;
}

.cgm-blog-topics {
	display: grid;
	gap: 9px;
	padding: 22px;
	position: sticky;
	top: 104px;
}

.cgm-blog-topics a {
	background: #f5fbff;
	border: 1px solid rgba(12, 149, 238, 0.10);
	border-radius: 12px;
	color: #0a2752;
	font-size: 0.88rem;
	font-weight: 850;
	padding: 10px 12px;
	text-decoration: none;
}

.cgm-blog-latest {
	margin-top: 74px;
}

.cgm-blog-card-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cgm-blog-card {
	color: inherit;
	display: block;
	padding: 22px;
	text-decoration: none;
}

.cgm-blog-card strong {
	color: #0a2752;
	display: block;
	font-size: 1.1rem;
	letter-spacing: -0.025em;
	line-height: 1.22;
	margin-bottom: 12px;
}

.cgm-blog-card.is-placeholder {
	opacity: 0.72;
}

.cgm-blog-cta {
	background: #f5fbff;
	padding: 0 0 86px !important;
}

.cgm-blog-cta-inner {
	align-items: center;
	background: #ffffff;
	border: 1px solid rgba(12, 149, 238, 0.13);
	border-radius: 18px;
	display: flex;
	gap: 24px;
	justify-content: space-between;
	padding: 24px;
}

.cgm-blog-cta strong,
.cgm-blog-article-cta strong {
	color: #0a2752;
	display: block;
	font-size: 1.25rem;
	letter-spacing: -0.025em;
	line-height: 1.18;
	margin-bottom: 8px;
}

.cgm-blog-back {
	color: #0c95ee;
	display: inline-flex;
	font-size: 0.86rem;
	font-weight: 900;
	margin-bottom: 24px;
	text-decoration: none;
}

.cgm-blog-article-layout {
	align-items: start;
	display: grid;
	gap: 54px;
	grid-template-columns: 260px minmax(0, 780px);
	min-width: 0;
	padding-bottom: 92px;
	padding-top: 64px;
}

.cgm-blog-toc {
	background: #f5fbff;
	border: 1px solid rgba(12, 149, 238, 0.12);
	border-radius: 16px;
	display: grid;
	gap: 9px;
	padding: 18px;
	position: sticky;
	top: 104px;
}

.cgm-blog-toc strong {
	color: #0a2752;
	font-size: 0.9rem;
	margin-bottom: 4px;
}

.cgm-blog-toc a {
	color: #475569;
	font-size: 0.86rem;
	font-weight: 800;
	text-decoration: none;
}

.cgm-blog-content {
	color: #1f2937;
	font-size: 1rem;
	line-height: 1.78;
	min-width: 0;
}

.cgm-blog-content h2 {
	color: #0a2752;
	font-size: clamp(1.65rem, 2vw, 2.35rem);
	letter-spacing: -0.04em;
	line-height: 1.12;
	margin: 44px 0 14px;
}

.cgm-blog-content h3 {
	color: #0a2752;
	font-size: 1.13rem;
	letter-spacing: -0.02em;
	line-height: 1.28;
	margin: 28px 0 8px;
}

.cgm-blog-content p {
	margin: 0 0 18px;
}

.cgm-blog-content ul {
	display: grid;
	gap: 9px;
	margin: 0 0 20px;
	padding-left: 22px;
}

.cgm-blog-content li {
	padding-left: 4px;
}

.cgm-blog-table-wrap {
	border: 1px solid rgba(12, 149, 238, 0.13);
	border-radius: 14px;
	margin: 26px 0 30px;
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.cgm-blog-table {
	border-collapse: collapse;
	min-width: 680px;
	width: 100%;
}

.cgm-blog-table th,
.cgm-blog-table td {
	border-bottom: 1px solid rgba(12, 149, 238, 0.10);
	color: #334155;
	font-size: 0.9rem;
	line-height: 1.48;
	padding: 13px 14px;
	text-align: left;
	vertical-align: top;
}

.cgm-blog-table th {
	background: #f5fbff;
	color: #0a2752;
	font-weight: 900;
}

.cgm-blog-table tr:last-child td {
	border-bottom: 0;
}

.cgm-blog-faq {
	border-top: 1px solid rgba(12, 149, 238, 0.13);
	margin-top: 46px;
	padding-top: 12px;
}

.cgm-blog-article-cta {
	margin-top: 44px;
	padding: 24px;
}

.cgm-blog-article-cta .cgm-button {
	margin-top: 8px;
}

@media (max-width: 1040px) {
	.cgm-blog-layout,
	.cgm-blog-article-layout {
		grid-template-columns: 1fr;
	}

	.cgm-blog-topics,
	.cgm-blog-toc {
		position: relative;
		top: 0;
	}

	.cgm-blog-card-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 720px) {
	.cgm-blog-hero,
	.cgm-blog-article-hero {
		padding: 82px 0 54px !important;
	}

	.cgm-blog-index,
	.cgm-blog-article-layout {
		padding-top: 46px;
	}

	.cgm-blog-featured,
	.cgm-blog-topics,
	.cgm-blog-card,
	.cgm-blog-article-cta {
		border-radius: 16px;
		padding: 20px;
	}

	.cgm-blog-cta-inner {
		align-items: stretch;
		flex-direction: column;
	}
}

/* V0.10.0 - Header logo alignment polish across every page. */
.cgm-nav-shell,
body.home .cgm-nav-shell,
body.blog .cgm-nav-shell {
	box-sizing: border-box;
	max-width: 1208px !important;
	padding-inline: 24px !important;
}

.cgm-logo-raw {
	justify-self: start;
	margin-left: 0 !important;
}

.cgm-logo-crop-header {
	width: 86px !important;
}

.cgm-logo-raw .cgm-logo-crop-header img {
	width: 86px !important;
}

@media (max-width: 720px) {
	.cgm-nav-shell,
	body.home .cgm-nav-shell,
	body.blog .cgm-nav-shell {
		padding-inline: 18px !important;
	}

	.cgm-logo-crop-header {
		width: 72px !important;
	}

	.cgm-logo-raw .cgm-logo-crop-header img {
		width: 72px !important;
	}
}

/* V0.10.1 - Minimal footer cleanup. */
.cgm-footer {
	background: linear-gradient(145deg, #030405 0%, #071e3a 58%, #0a2752 100%) !important;
	padding: 46px 24px 28px !important;
}

.cgm-footer-glow {
	opacity: 0.38;
}

.cgm-footer-cta {
	background: rgba(255, 255, 255, 0.045) !important;
	border-color: rgba(151, 215, 243, 0.14) !important;
	border-radius: 18px !important;
	box-shadow: none !important;
	margin-bottom: 42px !important;
	padding: 18px 20px !important;
}

.cgm-footer-cta span {
	font-size: 0.68rem !important;
	letter-spacing: 0.12em !important;
	margin-bottom: 5px !important;
}

.cgm-footer-cta strong {
	font-size: clamp(1.05rem, 1.45vw, 1.35rem) !important;
	line-height: 1.18 !important;
}

.cgm-footer-cta .cgm-button {
	border-radius: 14px !important;
	box-sizing: border-box;
	font-size: 0.9rem !important;
	justify-content: center;
	max-width: 100%;
	padding: 12px 18px !important;
	text-align: center;
	white-space: nowrap;
}

.cgm-footer-grid {
	gap: 34px !important;
	grid-template-columns: minmax(240px, 1.15fr) repeat(3, minmax(150px, 0.75fr)) !important;
}

.cgm-logo-crop-footer,
.cgm-brand-logo-footer .cgm-logo-crop-footer img {
	width: 96px !important;
}

.cgm-footer-brand > p:not(.cgm-footer-warning) {
	font-size: 0.9rem !important;
	line-height: 1.55 !important;
	margin: 18px 0 0 !important;
	max-width: 300px !important;
}

.cgm-footer-warning {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	color: rgba(255, 232, 184, 0.78) !important;
	font-size: 0.78rem !important;
	font-weight: 750 !important;
	line-height: 1.45 !important;
	margin-top: 16px !important;
	max-width: 300px !important;
	padding: 0 !important;
}

.cgm-footer h2 {
	font-size: 0.7rem !important;
	letter-spacing: 0.14em !important;
	margin-bottom: 14px !important;
}

.cgm-footer a {
	font-size: 0.88rem !important;
	line-height: 1.28 !important;
	margin-top: 10px !important;
}

.cgm-footer-bottom {
	gap: 10px 22px !important;
	margin-top: 38px !important;
	padding-top: 20px !important;
}

.cgm-footer-bottom p {
	font-size: 0.76rem !important;
	font-weight: 600 !important;
}

@media (max-width: 980px) {
	.cgm-footer-grid {
		grid-template-columns: 1fr 1fr !important;
	}
}

@media (max-width: 640px) {
	.cgm-footer {
		padding-inline: 18px !important;
	}

	.cgm-footer-cta {
		gap: 16px !important;
		margin-bottom: 34px !important;
		padding: 18px !important;
	}

	.cgm-footer-cta .cgm-button {
		white-space: normal;
		width: 100% !important;
	}

	.cgm-footer-grid {
		gap: 26px !important;
		grid-template-columns: 1fr !important;
	}

	.cgm-logo-crop-footer,
	.cgm-brand-logo-footer .cgm-logo-crop-footer img {
		width: 88px !important;
	}
}

/* V0.10.2 - Lightweight motion polish inspired by Framer-style staging. */
.cgm-motion-enhanced .cgm-motion-seed {
	opacity: 0;
	transform: translate3d(0, 18px, 0) scale(0.992);
	transition:
		opacity 620ms cubic-bezier(0.22, 1, 0.36, 1),
		transform 620ms cubic-bezier(0.22, 1, 0.36, 1);
	transition-delay: var(--cgm-motion-delay, 0ms);
	will-change: opacity, transform;
}

.cgm-motion-enhanced .cgm-motion-seed.cgm-motion-in {
	opacity: 1;
	transform: translate3d(0, 0, 0) scale(1);
}

.cgm-motion-enhanced .cgm-salient-hero-inner > .cgm-salient-kicker,
.cgm-motion-enhanced .cgm-salient-hero-inner > h1 {
	transform: translate3d(0, 12px, 0);
}

.cgm-motion-enhanced .cgm-salient-hero-inner > .cgm-salient-kicker.cgm-motion-in,
.cgm-motion-enhanced .cgm-salient-hero-inner > h1.cgm-motion-in {
	transform: translate3d(0, 0, 0) scale(1);
}

.cgm-motion-enhanced .cgm-home-route-grid > *,
.cgm-motion-enhanced .cgm-feature-columns > *,
.cgm-motion-enhanced .cgm-proof-card-grid > *,
.cgm-motion-enhanced .cgm-engagement-grid > *,
.cgm-motion-enhanced .cgm-proof-grid > *,
.cgm-motion-enhanced .cgm-blog-card,
.cgm-motion-enhanced .cgm-case-study {
	transition-duration: 700ms;
}

.cgm-button {
	transition:
		background 180ms ease,
		border-color 180ms ease,
		box-shadow 180ms ease,
		color 180ms ease,
		transform 180ms ease;
}

.cgm-button:hover,
.cgm-button:focus-visible {
	transform: translateY(-1px);
}

.cgm-home-route-grid a,
.cgm-blog-card,
.cgm-case-study,
.cgm-proof-grid article,
.cgm-proof-card-grid article,
.cgm-feature-columns article,
.cgm-engagement-grid article {
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.cgm-home-route-grid a:hover,
.cgm-home-route-grid a:focus-visible,
.cgm-blog-card:hover,
.cgm-blog-card:focus-visible,
.cgm-case-study:hover,
.cgm-case-study:focus-within,
.cgm-proof-grid article:hover,
.cgm-proof-card-grid article:hover,
.cgm-feature-columns article:hover,
.cgm-engagement-grid article:hover {
	transform: translateY(-3px);
}

@media (prefers-reduced-motion: reduce) {
	.cgm-motion-enhanced .cgm-motion-seed,
	.cgm-motion-enhanced .cgm-motion-seed.cgm-motion-in,
	.cgm-button,
	.cgm-home-route-grid a,
	.cgm-blog-card,
	.cgm-case-study,
	.cgm-proof-grid article,
	.cgm-proof-card-grid article,
	.cgm-feature-columns article,
	.cgm-engagement-grid article {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
}

/* V0.10.3 - Header proportion tune. */
.cgm-logo-crop-header,
.cgm-logo-raw .cgm-logo-crop-header img {
	width: 92px !important;
}

.cgm-primary-nav {
	gap: 18px !important;
}

.cgm-primary-nav a {
	font-size: 0.86rem !important;
	font-weight: 720 !important;
	letter-spacing: 0 !important;
}

.cgm-site-header .cgm-button-small {
	font-size: 0.82rem !important;
	padding: 10px 14px !important;
}

@media (max-width: 1180px) {
	.cgm-logo-crop-header,
	.cgm-logo-raw .cgm-logo-crop-header img {
		width: 84px !important;
	}
}

@media (max-width: 720px) {
	.cgm-logo-crop-header,
	.cgm-logo-raw .cgm-logo-crop-header img {
		width: 76px !important;
	}
}

/* V0.10.5 - Bring blog article content into view sooner. */
.cgm-blog-article-hero {
	padding: 96px 0 54px !important;
}

.cgm-blog-article-layout {
	padding-top: 42px !important;
}

.cgm-blog-article-hero h1 {
	font-size: clamp(2.1rem, 3.45vw, 4.1rem) !important;
	max-width: 880px !important;
}

.cgm-blog-article-hero p {
	max-width: 760px !important;
}

@media (max-width: 720px) {
	.cgm-blog-article-hero {
		padding: 68px 0 38px !important;
	}

	.cgm-blog-article-layout {
		padding-top: 30px !important;
	}

	.cgm-blog-article-layout .cgm-blog-toc {
		display: none;
	}

	.cgm-blog-article-hero h1 {
		font-size: clamp(2rem, 9vw, 2.85rem) !important;
		line-height: 1.04 !important;
	}
}

/* V0.10.7 - Make blog article pages read as articles immediately. */
.cgm-blog-article-hero {
	padding: 78px 0 34px !important;
}

.cgm-blog-article-hero .cgm-blog-back {
	margin-bottom: 16px !important;
}

.cgm-blog-article-hero h1 {
	margin-bottom: 14px !important;
}

.cgm-blog-article-hero p {
	font-size: 1rem !important;
	line-height: 1.58 !important;
}

.cgm-blog-article-hero .cgm-blog-meta {
	margin: 16px 0 0 !important;
}

.cgm-blog-article-layout {
	padding-top: 24px !important;
}

@media (max-width: 720px) {
	.cgm-blog-article-hero {
		padding: 34px 0 22px !important;
	}

	.cgm-blog-article-hero .cgm-blog-back {
		margin-bottom: 12px !important;
	}

	.cgm-blog-article-hero h1 {
		font-size: clamp(1.75rem, 7.6vw, 2.35rem) !important;
		line-height: 1.06 !important;
		margin-bottom: 12px !important;
	}

	.cgm-blog-article-hero p {
		font-size: 0.96rem !important;
		line-height: 1.5 !important;
	}

	.cgm-blog-article-hero .cgm-blog-meta {
		gap: 6px !important;
		margin-top: 14px !important;
	}

	.cgm-blog-article-hero .cgm-blog-meta em {
		font-size: 0.72rem !important;
		padding: 7px 9px !important;
	}

	.cgm-blog-article-layout {
		padding-top: 18px !important;
	}
}

/* V0.10.8 - Never hide blog article bodies behind reveal animation. */
.cgm-blog-article-layout,
.cgm-blog-article-layout.cgm-motion-seed,
.cgm-blog-article-layout.cgm-motion-in,
.cgm-blog-content,
.cgm-blog-content.cgm-motion-seed,
.cgm-blog-content.cgm-motion-in {
	opacity: 1 !important;
	transform: none !important;
	transition: none !important;
	visibility: visible !important;
}

/* V0.11.1 - Consistent picture-led hero format for main pages. */
.cgm-page-hero-photo {
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.96) 43%, rgba(248, 252, 255, 0.72) 64%, rgba(248, 252, 255, 0.2) 100%),
		linear-gradient(180deg, rgba(245, 251, 255, 0.44), rgba(255, 255, 255, 0.86)),
		url("../img/cg-hero-practice-background.png") right center / cover no-repeat !important;
	isolation: isolate;
	overflow: hidden;
	position: relative;
}

.cgm-page-hero-people {
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.96) 43%, rgba(248, 252, 255, 0.76) 65%, rgba(248, 252, 255, 0.24) 100%),
		linear-gradient(180deg, rgba(245, 251, 255, 0.48), rgba(255, 255, 255, 0.88)),
		url("../img/cg-meditrans-diverse-doctors-hero.png") right center / cover no-repeat !important;
}

.cgm-page-hero-photo > .cgm-container,
.cgm-blog-hero.cgm-page-hero-photo > .cgm-container,
.cgm-contact-hero.cgm-page-hero-photo > .cgm-container {
	position: relative;
	z-index: 1;
}

.cgm-page-hero.cgm-page-hero-photo {
	padding-block: 112px 92px;
}

.cgm-page-hero-photo h1,
.cgm-blog-hero.cgm-page-hero-photo h1,
.cgm-contact-hero.cgm-page-hero-photo h1,
.cgm-case-hero.cgm-page-hero-photo h2 {
	letter-spacing: 0 !important;
	max-width: 780px;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.56);
}

.cgm-page-hero-photo .cgm-hero-lede,
.cgm-page-hero-photo > p:not(.cgm-eyebrow),
.cgm-blog-hero.cgm-page-hero-photo p,
.cgm-contact-hero.cgm-page-hero-photo p,
.cgm-case-hero.cgm-page-hero-photo > p:not(.cgm-eyebrow) {
	max-width: 700px;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.58);
}

.cgm-blog-hero.cgm-page-hero-photo {
	padding: 112px 0 86px !important;
}

.cgm-contact-hero.cgm-page-hero-photo {
	padding-block: 108px 84px;
}

.cgm-case-hero.cgm-page-hero-photo {
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.96) 42%, rgba(248, 252, 255, 0.76) 66%, rgba(248, 252, 255, 0.26) 100%),
		linear-gradient(180deg, rgba(245, 251, 255, 0.5), rgba(255, 255, 255, 0.9)),
		url("../img/cg-hero-practice-background.png") right center / cover no-repeat !important;
	padding: 52px 42px;
}

.cgm-case-hero.cgm-page-hero-photo .cgm-case-proof {
	max-width: 760px;
}

@media (max-width: 1040px) {
	.cgm-page-hero-photo,
	.cgm-page-hero-people,
	.cgm-case-hero.cgm-page-hero-photo {
		background:
			linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.94) 42%, rgba(248, 252, 255, 0.98) 100%),
			url("../img/cg-hero-practice-background.png") center top / cover no-repeat !important;
	}

	.cgm-page-hero-people {
		background:
			linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.94) 42%, rgba(248, 252, 255, 0.98) 100%),
			url("../img/cg-meditrans-diverse-doctors-hero.png") center top / cover no-repeat !important;
	}
}

@media (max-width: 720px) {
	.cgm-page-hero.cgm-page-hero-photo,
	.cgm-blog-hero.cgm-page-hero-photo,
	.cgm-contact-hero.cgm-page-hero-photo {
		padding-block: 68px 48px !important;
	}

	.cgm-page-hero-photo,
	.cgm-page-hero-people,
	.cgm-case-hero.cgm-page-hero-photo {
		background:
			linear-gradient(180deg, rgba(255, 255, 255, 0.97) 0%, rgba(255, 255, 255, 0.95) 38%, rgba(248, 252, 255, 0.99) 100%),
			url("../img/cg-hero-practice-background.png") 62% top / auto 360px no-repeat !important;
	}

	.cgm-page-hero-people {
		background:
			linear-gradient(180deg, rgba(255, 255, 255, 0.97) 0%, rgba(255, 255, 255, 0.95) 38%, rgba(248, 252, 255, 0.99) 100%),
			url("../img/cg-meditrans-diverse-doctors-hero.png") 62% top / auto 360px no-repeat !important;
	}

	.cgm-page-hero-photo h1,
	.cgm-blog-hero.cgm-page-hero-photo h1,
	.cgm-contact-hero.cgm-page-hero-photo h1,
	.cgm-case-hero.cgm-page-hero-photo h2 {
		max-width: 100%;
	}

	.cgm-case-hero.cgm-page-hero-photo {
		padding: 28px 22px;
	}
}
