.login-section {
		position: relative;
		overflow: hidden;
		padding: 72px 0 64px;
		background:
			radial-gradient(ellipse at 10% 10%, rgba(23, 92, 221, 0.08), transparent 34%),
			linear-gradient(135deg, #f6f9ff 0%, #f7fbfc 100%);
	}

	.login-card {
		min-height: 570px;
		border: 1px solid rgba(17, 35, 68, 0.07);
		border-radius: 24px;
		background: #fff;
		box-shadow: 0 24px 70px rgba(25, 52, 91, 0.12);
	}

	.login-intro {
		position: relative;
		isolation: isolate;
		overflow: hidden;
		padding: 48px;
		color: #fff;
		background: linear-gradient(145deg, #123f8b 0%, #175cdd 58%, #3588e8 100%);
	}

	.login-brand {
		position: relative;
		z-index: 1;
		display: inline-flex;
		align-items: center;
		gap: 11px;
		color: #fff;
		font-family: var(--heading-font);
		font-size: 1.25rem;
		font-weight: 800;
		letter-spacing: 0.04em;
	}

	.login-brand:hover {
		color: #fff;
	}

	.login-brand-icon {
		display: grid;
		width: 38px;
		height: 38px;
		place-items: center;
		border: 1px solid rgba(255, 255, 255, 0.38);
		border-radius: 12px;
		background: rgba(255, 255, 255, 0.14);
		font-size: 1.1rem;
	}

	.login-intro-copy,
	.login-trust {
		position: relative;
		z-index: 1;
	}

	.login-intro-copy {
		max-width: 400px;
		margin-top: 86px;
	}

	.login-eyebrow {
		display: inline-flex;
		align-items: center;
		padding: 8px 13px;
		border: 1px solid rgba(255, 255, 255, 0.23);
		border-radius: 30px;
		background: rgba(255, 255, 255, 0.1);
		color: #e5efff;
		font-size: 0.76rem;
		font-weight: 600;
		letter-spacing: 0.08em;
		text-transform: uppercase;
	}

	.login-intro h1 {
		margin: 22px 0 16px;
		color: #fff;
		font-size: clamp(2.25rem, 4vw, 3.2rem);
		font-weight: 700;
		letter-spacing: -0.045em;
		line-height: 1.12;
	}

	.login-intro-copy p {
		max-width: 360px;
		margin: 0;
		color: rgba(255, 255, 255, 0.78);
		font-size: 1rem;
		line-height: 1.75;
	}

	.login-trust {
		display: flex;
		align-items: center;
		gap: 13px;
		margin-top: 54px;
	}

	.login-trust-icon {
		display: grid;
		width: 44px;
		height: 44px;
		flex: 0 0 44px;
		place-items: center;
		border: 1px solid rgba(255, 255, 255, 0.2);
		border-radius: 14px;
		background: rgba(255, 255, 255, 0.12);
		font-size: 1.2rem;
	}

	.login-trust strong,
	.login-trust div > span {
		display: block;
	}

	.login-trust strong {
		font-size: 0.9rem;
		font-weight: 600;
	}

	.login-trust div > span {
		margin-top: 3px;
		color: rgba(255, 255, 255, 0.72);
		font-size: 0.78rem;
	}

	.login-orbit {
		position: absolute;
		z-index: -1;
		border: 1px solid rgba(255, 255, 255, 0.1);
		border-radius: 50%;
		pointer-events: none;
	}

	.login-orbit-one {
		top: 25%;
		right: -145px;
		width: 390px;
		height: 390px;
	}

	.login-orbit-two {
		top: 34%;
		right: -90px;
		width: 280px;
		height: 280px;
		background: rgba(255, 255, 255, 0.035);
	}

	.login-form-panel {
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 56px;
	}

	.login-form-content {
		width: 100%;
		max-width: 390px;
	}

	.login-welcome {
		color: #175cdd;
		font-size: 0.72rem;
		font-weight: 700;
		letter-spacing: 0.14em;
	}

	.login-form-heading h2 {
		margin: 12px 0 8px;
		color: #112344;
		font-size: 1.8rem;
		font-weight: 700;
		letter-spacing: -0.04em;
	}

	.login-form-heading p {
		margin: 0 0 32px;
		color: #727d8e;
		font-size: 0.92rem;
	}

	.login-form-content .form-label {
		margin-bottom: 9px;
		color: #273750;
		font-size: 0.85rem;
		font-weight: 600;
	}

	.login-input-group .input-group-text,
	.login-input-group .form-control {
		min-height: 52px;
		border-color: #e2e8f0;
		background: #fbfcfe;
	}

	.login-input-group .input-group-text {
		padding-left: 16px;
		border-right: 0;
		border-radius: 12px 0 0 12px;
		color: #8290a4;
	}

	.login-input-group .form-control {
		border-left: 0;
		border-radius: 0 12px 12px 0;
		color: #112344;
		font-size: 0.9rem;
		box-shadow: none;
	}

	.login-input-group .form-control::placeholder {
		color: #a4afbe;
	}

	.login-input-group:focus-within .input-group-text,
	.login-input-group:focus-within .form-control {
		border-color: #8db2f5;
		background: #fff;
	}

	.login-input-group:focus-within .input-group-text {
		color: #175cdd;
	}

	.login-form-options {
		margin: 15px 0 25px;
		font-size: 0.82rem;
	}

	.login-form-options .form-check-input {
		margin-top: 0.18em;
		border-color: #cbd5e1;
	}

	.login-form-options .form-check-input:checked {
		border-color: #175cdd;
		background-color: #175cdd;
	}

	.login-form-options .form-check-label {
		color: #697689;
	}

	.login-form-options a,
	.login-support a {
		color: #175cdd;
		font-weight: 600;
	}

	.login-submit {
		min-height: 52px;
		border: 0;
		border-radius: 12px;
		background: linear-gradient(100deg, #175cdd, #2879e6);
		color: #fff;
		font-size: 0.92rem;
		font-weight: 600;
		box-shadow: 0 9px 20px rgba(23, 92, 221, 0.2);
		transition: transform 0.2s ease, box-shadow 0.2s ease;
	}

	.login-submit:hover,
	.login-submit:focus {
		transform: translateY(-1px);
		background: linear-gradient(100deg, #124ebf, #216dd3);
		color: #fff;
		box-shadow: 0 12px 24px rgba(23, 92, 221, 0.26);
	}

	.login-support {
		margin-top: 30px;
		padding-top: 22px;
		border-top: 1px solid #edf0f5;
		color: #7a8594;
		font-size: 0.8rem;
		text-align: center;
	}

	.login-support > i {
		color: #175cdd;
	}

	.login-legal {
		margin: 20px 0 0;
		color: #8490a0;
		font-size: 0.76rem;
		text-align: center;
	}

	@media (max-width: 991.98px) {
		.login-section {
			padding: 48px 0;
		}

		.login-card {
			max-width: 590px;
			margin: 0 auto;
		}

		.login-intro {
			min-height: 350px;
			padding: 36px;
		}

		.login-intro-copy {
			margin-top: 42px;
		}

		.login-intro h1 {
			font-size: 2.5rem;
		}

		.login-trust {
			margin-top: 30px;
		}

		.login-form-panel {
			padding: 42px 36px;
		}
	}

	@media (max-width: 575.98px) {
		.login-section {
			padding: 30px 0;
		}

		.login-card {
			border-radius: 18px;
		}

		.login-intro {
			min-height: 315px;
			padding: 28px 24px;
		}

		.login-intro-copy {
			margin-top: 34px;
		}

		.login-intro h1 {
			font-size: 2.15rem;
		}

		.login-intro-copy p {
			font-size: 0.9rem;
		}

		.login-form-panel {
			padding: 34px 24px;
		}

		.login-form-heading h2 {
			font-size: 1.55rem;
		}

		.login-form-options {
			align-items: flex-start !important;
			gap: 12px;
		}
	}

	.signup-section {
		position: relative;
		overflow: hidden;
		padding: 64px 0 56px;
		background:
			radial-gradient(ellipse at 90% 12%, rgba(23, 92, 221, 0.08), transparent 34%),
			linear-gradient(135deg, #f6f9ff 0%, #f7fbfc 100%);
	}

	.signup-card {
		border: 1px solid rgba(17, 35, 68, 0.07);
		border-radius: 24px;
		background: #fff;
		box-shadow: 0 24px 70px rgba(25, 52, 91, 0.12);
	}

	.signup-intro {
		position: relative;
		isolation: isolate;
		overflow: hidden;
		padding: 44px;
		color: #fff;
		background: linear-gradient(150deg, #123f8b 0%, #175cdd 58%, #3588e8 100%);
	}

	.signup-brand {
		position: relative;
		z-index: 1;
		display: inline-flex;
		align-items: center;
		gap: 11px;
		color: #fff;
		font-family: var(--heading-font);
		font-size: 1.25rem;
		font-weight: 800;
		letter-spacing: 0.04em;
	}

	.signup-brand:hover {
		color: #fff;
	}

	.signup-brand-icon {
		display: grid;
		width: 38px;
		height: 38px;
		place-items: center;
		border: 1px solid rgba(255, 255, 255, 0.38);
		border-radius: 12px;
		background: rgba(255, 255, 255, 0.14);
		font-size: 1.1rem;
	}

	.signup-intro-copy,
	.signup-benefits {
		position: relative;
		z-index: 1;
	}

	.signup-intro-copy {
		margin-top: 94px;
	}

	.signup-eyebrow {
		display: inline-flex;
		align-items: center;
		padding: 8px 13px;
		border: 1px solid rgba(255, 255, 255, 0.23);
		border-radius: 30px;
		background: rgba(255, 255, 255, 0.1);
		color: #e5efff;
		font-size: 0.72rem;
		font-weight: 600;
		letter-spacing: 0.07em;
		text-transform: uppercase;
	}

	.signup-intro h1 {
		max-width: 360px;
		margin: 22px 0 16px;
		color: #fff;
		font-size: clamp(2.2rem, 3.6vw, 3rem);
		font-weight: 700;
		letter-spacing: -0.045em;
		line-height: 1.12;
	}

	.signup-intro-copy p {
		max-width: 360px;
		margin: 0;
		color: rgba(255, 255, 255, 0.78);
		font-size: 0.95rem;
		line-height: 1.75;
	}

	.signup-benefits {
		display: grid;
		gap: 17px;
		margin-top: 54px;
	}

	.signup-benefits > div {
		display: flex;
		align-items: center;
		gap: 11px;
		color: rgba(255, 255, 255, 0.9);
		font-size: 0.84rem;
	}

	.signup-benefits i {
		color: #b9f0e3;
		font-size: 1.1rem;
	}

	.signup-decoration {
		position: absolute;
		z-index: -1;
		border: 1px solid rgba(255, 255, 255, 0.1);
		border-radius: 50%;
		pointer-events: none;
	}

	.signup-decoration-one {
		top: 21%;
		right: -175px;
		width: 410px;
		height: 410px;
	}

	.signup-decoration-two {
		top: 31%;
		right: -112px;
		width: 280px;
		height: 280px;
		background: rgba(255, 255, 255, 0.035);
	}

	.signup-form-panel {
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 48px 52px;
	}

	.signup-form-content {
		width: 100%;
		max-width: 520px;
	}

	.signup-welcome {
		color: #175cdd;
		font-size: 0.72rem;
		font-weight: 700;
		letter-spacing: 0.14em;
	}

	.signup-heading h2 {
		margin: 11px 0 7px;
		color: #112344;
		font-size: 1.8rem;
		font-weight: 700;
		letter-spacing: -0.04em;
	}

	.signup-heading p {
		margin: 0 0 25px;
		color: #727d8e;
		font-size: 0.88rem;
	}

	.signup-form-content .form-label {
		margin-bottom: 7px;
		color: #273750;
		font-size: 0.8rem;
		font-weight: 600;
	}

	.signup-input-group .input-group-text,
	.signup-input-group .form-control {
		min-height: 48px;
		border-color: #e2e8f0;
		background: #fbfcfe;
	}

	.signup-input-group .input-group-text {
		padding-left: 13px;
		border-right: 0;
		border-radius: 11px 0 0 11px;
		color: #8290a4;
	}

	.signup-input-group .form-control {
		border-left: 0;
		border-radius: 0 11px 11px 0;
		color: #112344;
		font-size: 0.84rem;
		box-shadow: none;
	}

	.signup-input-group .form-control::placeholder {
		color: #a4afbe;
	}

	.signup-input-group:focus-within .input-group-text,
	.signup-input-group:focus-within .form-control {
		border-color: #8db2f5;
		background: #fff;
	}

	.signup-input-group:focus-within .input-group-text {
		color: #175cdd;
	}

	.signup-input-group.has-error .input-group-text,
	.signup-input-group.has-error .form-control,
	.signup-input-group .form-control.is-invalid {
		border-color: #dc3545;
		background-image: none;
	}

	.signup-input-group.has-error .input-group-text {
		color: #dc3545;
	}

	.signup-field-error {
		margin-top: 5px;
		font-size: 0.76rem;
	}

	.signup-terms {
		margin: 21px 0 19px;
		padding-left: 1.65em;
		color: #697689;
		font-size: 0.77rem;
		line-height: 1.6;
	}

	.signup-terms .form-check-input.is-invalid {
		border-color: #dc3545;
	}

	.signup-terms-error {
		margin: -13px 0 14px;
	}

	.signup-terms .form-check-input {
		margin-top: 0.25em;
		border-color: #cbd5e1;
	}

	.signup-terms .form-check-input:checked {
		border-color: #175cdd;
		background-color: #175cdd;
	}

	.signup-terms a,
	.signup-login-link a {
		color: #175cdd;
		font-weight: 600;
	}

	.signup-submit {
		min-height: 50px;
		border: 0;
		border-radius: 12px;
		background: linear-gradient(100deg, #175cdd, #2879e6);
		color: #fff;
		font-size: 0.9rem;
		font-weight: 600;
		box-shadow: 0 9px 20px rgba(23, 92, 221, 0.2);
		transition: transform 0.2s ease, box-shadow 0.2s ease;
	}

	.signup-submit:hover,
	.signup-submit:focus {
		transform: translateY(-1px);
		background: linear-gradient(100deg, #124ebf, #216dd3);
		color: #fff;
		box-shadow: 0 12px 24px rgba(23, 92, 221, 0.26);
	}

	.signup-submit:disabled {
		transform: none;
		cursor: wait;
		opacity: 0.75;
	}

	.signup-response {
		display: none;
		margin: 0 0 14px;
		padding: 11px 13px;
		border-radius: 10px;
		font-size: 0.82rem;
		line-height: 1.5;
	}

	.signup-response.is-error,
	.signup-response.is-success {
		display: block;
	}

	.signup-response.is-error {
		border: 1px solid #f1b9bf;
		background: #fff5f6;
		color: #b42332;
	}

	.signup-response.is-success {
		border: 1px solid #b7e4cd;
		background: #f1fbf5;
		color: #176b3a;
	}

	.signup-login-link {
		margin-top: 22px;
		color: #7a8594;
		font-size: 0.81rem;
		text-align: center;
	}

	.signup-legal {
		margin: 18px 0 0;
		color: #8490a0;
		font-size: 0.76rem;
		text-align: center;
	}

	.signup-legal i {
		color: #175cdd;
	}

	@media (max-width: 991.98px) {
		.signup-section {
			padding: 48px 0;
		}

		.signup-card {
			max-width: 650px;
			margin: 0 auto;
		}

		.signup-intro {
			min-height: 370px;
			padding: 36px;
		}

		.signup-intro-copy {
			margin-top: 42px;
		}

		.signup-intro h1 {
			font-size: 2.5rem;
		}

		.signup-benefits {
			grid-template-columns: 1fr 1fr;
			gap: 12px;
			margin-top: 30px;
		}

		.signup-form-panel {
			padding: 42px 36px;
		}
	}

	@media (max-width: 575.98px) {
		.signup-section {
			padding: 30px 0;
		}

		.signup-card {
			border-radius: 18px;
		}

		.signup-intro {
			min-height: 365px;
			padding: 28px 24px;
		}

		.signup-intro-copy {
			margin-top: 35px;
		}

		.signup-intro h1 {
			font-size: 2.15rem;
		}

		.signup-benefits {
			grid-template-columns: 1fr;
			gap: 10px;
			margin-top: 25px;
		}

		.signup-form-panel {
			padding: 34px 24px;
		}

		.signup-heading h2 {
			font-size: 1.55rem;
		}
	}

/* Laboratory information management system landing page */
.lims-page {
	--lims-ink: #112344;
	--lims-muted: #61718a;
	--lims-blue: #175cdd;
	--lims-teal: #0b8588;
	--lims-line: #e2eaf3;
	color: var(--lims-muted);
	overflow: hidden;
}

.lims-page h1,
.lims-page h2,
.lims-page h3 {
	color: var(--lims-ink);
}

.lims-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .09), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #ffffff 58%, #f0f9f8 100%);
}

.lims-eyebrow,
.lims-section-kicker {
	margin: 0 0 14px;
	color: var(--lims-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.lims-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.lims-hero h1 {
	max-width: 620px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.lims-hero h1 span {
	color: var(--lims-blue);
}

.lims-hero-copy,
.lims-section-copy {
	color: var(--lims-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.lims-hero-copy {
	max-width: 570px;
	margin-bottom: 22px;
}

.lims-hero-points,
.lims-benefits-list {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.lims-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.lims-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.lims-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.lims-button-primary,
.lims-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--lims-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.lims-button-primary:hover,
.lims-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.lims-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--lims-blue);
	font-size: .9rem;
	font-weight: 650;
}

.lims-text-link:hover,
.lims-text-link:focus {
	color: #104dbf;
}

.lims-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.lims-hero-note i {
	color: var(--lims-teal);
	font-size: 1rem;
}

.lims-hero-visual {
	position: relative;
	max-width: 610px;
	margin-left: auto;
	padding: 0 22px 38px 0;
}

.lims-hero-image {
	display: block;
	width: 100%;
	height: 485px;
	border-radius: 25px;
	object-fit: cover;
	box-shadow: 0 28px 65px rgba(24, 58, 96, .18);
}

.lims-result-card {
	position: absolute;
	right: -4px;
	bottom: 10px;
	width: min(380px, 88%);
	padding: 20px;
	border: 1px solid rgba(218, 228, 239, .9);
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 17px 48px rgba(20, 44, 77, .16);
}

.lims-result-heading,
.lims-result-row {
	display: flex;
	align-items: center;
}

.lims-result-heading {
	gap: 11px;
	padding-bottom: 15px;
	border-bottom: 1px solid #edf1f6;
	color: #8090a5;
}

.lims-result-heading > div,
.lims-result-row > div {
	flex: 1;
}

.lims-result-heading strong,
.lims-result-heading small,
.lims-result-row strong,
.lims-result-row small {
	display: block;
}

.lims-result-heading strong {
	color: var(--lims-ink);
	font-size: .83rem;
}

.lims-result-heading small,
.lims-result-row small {
	margin-top: 3px;
	color: #8390a1;
	font-size: .69rem;
}

.lims-result-icon {
	display: grid;
	width: 39px;
	height: 39px;
	place-items: center;
	border-radius: 12px;
	background: #eaf4ff;
	color: var(--lims-blue);
	font-size: 1.15rem;
}

.lims-result-row {
	gap: 10px;
	padding-top: 15px;
}

.lims-result-row strong {
	color: #273750;
	font-size: .77rem;
}

.lims-result-dot {
	width: 9px;
	height: 9px;
	flex: 0 0 9px;
	border-radius: 50%;
	background: #23a67b;
	box-shadow: 0 0 0 4px #e8f7f1;
}

.lims-result-dot-muted {
	background: #8fa4bd;
	box-shadow: 0 0 0 4px #edf2f7;
}

.lims-result-status {
	padding: 5px 8px;
	border-radius: 50px;
	background: #eaf7f1;
	color: #18825f;
	font-size: .65rem;
	font-weight: 650;
}

.lims-visual-tag {
	position: absolute;
	top: 24px;
	left: -20px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .93);
	color: #33445d;
	font-size: .76rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.lims-visual-tag i {
	color: var(--lims-teal);
}

.lims-intro-section {
	padding: 65px 0;
	background: #fff;
}

.lims-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.lims-intro-section .lims-section-title {
	max-width: 520px;
	margin-bottom: 0;
}

.lims-section-copy {
	margin: 0;
}

.lims-workflow-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.lims-section-heading {
	max-width: 720px;
	margin: 0 auto;
}

.lims-section-heading .lims-section-copy {
	max-width: 610px;
	margin: 0 auto;
}

.lims-workflow-grid {
	margin-top: 34px;
}

.lims-workflow-card,
.lims-module-card {
	position: relative;
	height: 100%;
	padding: 27px;
	border: 1px solid var(--lims-line);
	border-radius: 16px;
	background: #fff;
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.lims-workflow-card:hover,
.lims-module-card:hover {
	transform: translateY(-4px);
	border-color: #c1d6fa;
	box-shadow: 0 16px 35px rgba(30, 58, 93, .09);
}

.lims-step-number {
	position: absolute;
	top: 23px;
	right: 24px;
	color: #b8c5d6;
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.lims-icon-box {
	display: inline-grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: 14px;
	background: #eaf1ff;
	color: var(--lims-blue);
	font-size: 1.25rem;
}

.lims-workflow-card h3,
.lims-module-card h3 {
	margin: 20px 0 9px;
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.lims-workflow-card p,
.lims-module-card p {
	margin: 0;
	color: var(--lims-muted);
	font-size: .86rem;
	line-height: 1.7;
}

.lims-modules-section {
	padding: 84px 0 92px;
	background: #fff;
}

.lims-modules-heading {
	margin-bottom: 31px;
}

.lims-modules-heading .lims-section-title {
	margin-bottom: 0;
}

.lims-module-card {
	display: flex;
	flex-direction: column;
	min-height: 252px;
	padding: 26px;
}

.lims-module-card h3 {
	margin-top: 17px;
}

.lims-module-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: auto;
	padding-top: 20px;
	color: var(--lims-blue);
	font-size: .78rem;
	font-weight: 650;
}

.lims-benefits-section {
	padding: 85px 0 92px;
	background: linear-gradient(135deg, #f5f8fc 0%, #eef5fb 100%);
}

.lims-benefits-visual {
	position: relative;
	padding: 17px;
	border: 1px solid #e1e9f2;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 22px 55px rgba(24, 52, 88, .1);
}

.lims-dashboard-image {
	display: block;
	width: 100%;
	height: 330px;
	border-radius: 13px;
	object-fit: cover;
	object-position: top left;
}

.lims-dashboard-caption {
	position: absolute;
	right: -18px;
	bottom: 34px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px 17px;
	border: 1px solid #e5ebf2;
	border-radius: 13px;
	background: #fff;
	box-shadow: 0 12px 30px rgba(24, 52, 88, .12);
}

.lims-dashboard-caption > span {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border-radius: 11px;
	background: #e8f7f1;
	color: #168660;
}

.lims-dashboard-caption strong,
.lims-dashboard-caption small {
	display: block;
}

.lims-dashboard-caption strong {
	color: var(--lims-ink);
	font-size: .78rem;
}

.lims-dashboard-caption small {
	margin-top: 3px;
	color: #7e8da0;
	font-size: .68rem;
}

.lims-benefits-section .lims-section-title {
	margin-bottom: 15px;
}

.lims-benefits-list {
	gap: 15px;
	margin: 24px 0 25px;
}

.lims-benefits-list li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #52637b;
	font-size: .88rem;
	line-height: 1.6;
}

.lims-benefits-list li > i {
	display: grid;
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	place-items: center;
	margin-top: 1px;
	border-radius: 50%;
	background: #e3f5ee;
	color: #168660;
	font-size: .8rem;
}

.lims-benefits-list strong {
	color: #2c3b52;
}

.lims-cta-section {
	padding: 70px 0 85px;
	background: #fff;
}

.lims-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.lims-cta-panel h2 {
	max-width: 640px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.lims-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.lims-cta-panel p:not(.lims-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.lims-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.lims-button-light:hover,
.lims-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.lims-cta-phone {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
}

.lims-cta-phone:hover,
.lims-cta-phone:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.lims-hero {
		padding-top: 70px;
	}

	.lims-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.lims-hero-image {
		height: 430px;
	}

	.lims-visual-tag {
		left: 0;
	}

	.lims-dashboard-caption {
		right: 0;
	}

	.lims-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.lims-hero {
		padding: 55px 0 60px;
	}

	.lims-hero h1 {
		font-size: 2.45rem;
	}

	.lims-hero-copy {
		font-size: .94rem;
	}

	.lims-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.lims-hero-visual {
		padding: 0 7px 32px 0;
	}

	.lims-hero-image {
		height: 300px;
		border-radius: 18px;
	}

	.lims-result-card {
		right: 0;
		bottom: 4px;
		padding: 15px;
	}

	.lims-result-status {
		display: none;
	}

	.lims-visual-tag {
		top: 12px;
		left: -2px;
		font-size: .68rem;
	}

	.lims-intro-section,
	.lims-workflow-section,
	.lims-modules-section,
	.lims-benefits-section {
		padding: 58px 0;
	}

	.lims-workflow-grid {
		margin-top: 19px;
	}

	.lims-workflow-card,
	.lims-module-card {
		padding: 23px;
	}

	.lims-dashboard-image {
		height: 230px;
	}

	.lims-dashboard-caption {
		right: 8px;
		bottom: 26px;
		padding: 10px 12px;
	}

	.lims-cta-section {
		padding: 45px 0 58px;
	}

	.lims-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.lims-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.lims-cta-phone {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.lims-workflow-card,
	.lims-module-card,
	.lims-button-primary,
	.lims-button-light {
		transition: none;
	}
}

/* Hospital information management system landing page */
.hims-page {
	--hims-ink: #112344;
	--hims-muted: #61718a;
	--hims-blue: #175cdd;
	--hims-teal: #0b8588;
	--hims-line: #e2eaf3;
	overflow: hidden;
	color: var(--hims-muted);
}

.hims-page h1,
.hims-page h2,
.hims-page h3 {
	color: var(--hims-ink);
}

.hims-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .09), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #f0f9f8 100%);
}

.hims-eyebrow,
.hims-section-kicker {
	margin: 0 0 14px;
	color: var(--hims-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.hims-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.hims-hero h1 {
	max-width: 620px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.hims-hero h1 span {
	color: var(--hims-blue);
}

.hims-hero-copy,
.hims-section-copy {
	color: var(--hims-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.hims-hero-copy {
	max-width: 570px;
	margin-bottom: 22px;
}

.hims-hero-points,
.hims-benefits-list {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.hims-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.hims-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.hims-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.hims-button-primary,
.hims-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--hims-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.hims-button-primary:hover,
.hims-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.hims-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--hims-blue);
	font-size: .9rem;
	font-weight: 650;
}

.hims-text-link:hover,
.hims-text-link:focus {
	color: #104dbf;
}

.hims-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.hims-hero-note i {
	color: var(--hims-teal);
	font-size: 1rem;
}

.hims-hero-visual {
	position: relative;
	max-width: 610px;
	margin-left: auto;
	padding: 0 22px 38px 0;
}

.hims-hero-image {
	display: block;
	width: 100%;
	height: 450px;
	border: 1px solid #e1e8ef;
	border-radius: 23px;
	background: #f4f7f9;
	object-fit: cover;
	object-position: top left;
	box-shadow: 0 28px 65px rgba(24, 58, 96, .17);
}

.hims-dashboard-card {
	position: absolute;
	right: -4px;
	bottom: 9px;
	width: min(380px, 88%);
	padding: 17px;
	border: 1px solid rgba(218, 228, 239, .9);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 17px 48px rgba(20, 44, 77, .16);
}

.hims-dashboard-card-heading {
	display: flex;
	align-items: center;
	gap: 10px;
	padding-bottom: 13px;
	border-bottom: 1px solid #edf1f6;
	color: #8492a5;
}

.hims-dashboard-card-heading > div {
	flex: 1;
}

.hims-dashboard-card-heading strong,
.hims-dashboard-card-heading small {
	display: block;
}

.hims-dashboard-card-heading strong {
	color: var(--hims-ink);
	font-size: .82rem;
}

.hims-dashboard-card-heading small {
	margin-top: 3px;
	color: #8390a1;
	font-size: .68rem;
}

.hims-dashboard-icon {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border-radius: 12px;
	background: #eaf4ff;
	color: var(--hims-blue);
	font-size: 1.1rem;
}

.hims-dashboard-items {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	padding-top: 13px;
}

.hims-dashboard-items span {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 7px 9px;
	border: 1px solid #e8edf4;
	border-radius: 8px;
	color: #43536a;
	font-size: .65rem;
	font-weight: 600;
}

.hims-dashboard-items i {
	color: var(--hims-teal);
}

.hims-visual-tag {
	position: absolute;
	top: 22px;
	left: -20px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .94);
	color: #33445d;
	font-size: .76rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.hims-visual-tag i {
	color: var(--hims-teal);
}

.hims-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.hims-trust-strip p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.hims-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.hims-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.hims-trust-items i {
	color: var(--hims-teal);
	font-size: 1rem;
}

.hims-intro-section {
	padding: 68px 0;
	background: #fff;
}

.hims-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.hims-intro-section .hims-section-title {
	max-width: 520px;
	margin-bottom: 0;
}

.hims-section-copy {
	margin: 0;
}

.hims-intro-section .hims-text-link {
	margin-top: 17px;
}

.hims-journey-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.hims-section-heading {
	max-width: 720px;
	margin: 0 auto;
}

.hims-section-heading .hims-section-copy {
	max-width: 610px;
	margin: 0 auto;
}

.hims-journey-grid {
	margin-top: 34px;
}

.hims-journey-card,
.hims-module-card {
	position: relative;
	height: 100%;
	padding: 27px;
	border: 1px solid var(--hims-line);
	border-radius: 16px;
	background: #fff;
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.hims-journey-card:hover,
.hims-module-card:hover {
	transform: translateY(-4px);
	border-color: #c1d6fa;
	box-shadow: 0 16px 35px rgba(30, 58, 93, .09);
}

.hims-step-number {
	position: absolute;
	top: 23px;
	right: 24px;
	color: #b8c5d6;
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.hims-icon-box {
	display: inline-grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: 14px;
	background: #eaf1ff;
	color: var(--hims-blue);
	font-size: 1.25rem;
}

.hims-journey-card h3,
.hims-module-card h3 {
	margin: 20px 0 9px;
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.hims-journey-card p,
.hims-module-card p {
	margin: 0;
	color: var(--hims-muted);
	font-size: .86rem;
	line-height: 1.7;
}

.hims-modules-section {
	padding: 84px 0 92px;
	background: #fff;
}

.hims-modules-heading {
	margin-bottom: 31px;
}

.hims-modules-heading .hims-section-title {
	margin-bottom: 0;
}

.hims-module-card {
	display: flex;
	min-height: 250px;
	flex-direction: column;
	padding: 26px;
}

.hims-module-card h3 {
	margin-top: 17px;
}

.hims-module-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: auto;
	padding-top: 20px;
	color: var(--hims-blue);
	font-size: .78rem;
	font-weight: 650;
}

a.hims-module-link:hover,
a.hims-module-link:focus {
	color: #104dbf;
}

.hims-operations-section {
	padding: 85px 0 92px;
	background: linear-gradient(135deg, #f5f8fc 0%, #eef5fb 100%);
}

.hims-operations-visual {
	position: relative;
	padding: 16px;
	border: 1px solid #e1e9f2;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 22px 55px rgba(24, 52, 88, .1);
}

.hims-operations-image {
	display: block;
	width: 100%;
	height: 325px;
	border-radius: 13px;
	object-fit: cover;
	object-position: top left;
}

.hims-operations-caption {
	position: absolute;
	right: -18px;
	bottom: 32px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px 17px;
	border: 1px solid #e5ebf2;
	border-radius: 13px;
	background: #fff;
	box-shadow: 0 12px 30px rgba(24, 52, 88, .12);
}

.hims-operations-caption > span {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border-radius: 11px;
	background: #e8f7f1;
	color: #168660;
}

.hims-operations-caption strong,
.hims-operations-caption small {
	display: block;
}

.hims-operations-caption strong {
	color: var(--hims-ink);
	font-size: .78rem;
}

.hims-operations-caption small {
	margin-top: 3px;
	color: #7e8da0;
	font-size: .68rem;
}

.hims-operations-section .hims-section-title {
	margin-bottom: 15px;
}

.hims-benefits-list {
	gap: 15px;
	margin: 24px 0 25px;
}

.hims-benefits-list li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #52637b;
	font-size: .88rem;
	line-height: 1.6;
}

.hims-benefits-list li > i {
	display: grid;
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	place-items: center;
	margin-top: 1px;
	border-radius: 50%;
	background: #e3f5ee;
	color: #168660;
	font-size: .8rem;
}

.hims-benefits-list strong {
	color: #2c3b52;
}

.hims-faq-section {
	padding: 85px 0;
	background: #fff;
}

.hims-faq-section .hims-section-title {
	margin-bottom: 16px;
}

.hims-faq-section .hims-text-link {
	margin-top: 18px;
}

.hims-faq-list {
	border-top: 1px solid var(--hims-line);
}

.hims-faq-item {
	padding: 0 5px;
	border-bottom: 1px solid var(--hims-line);
}

.hims-faq-item summary {
	position: relative;
	padding: 20px 38px 20px 0;
	color: #243650;
	font-size: .95rem;
	font-weight: 650;
	line-height: 1.5;
	list-style: none;
	cursor: pointer;
}

.hims-faq-item summary::-webkit-details-marker {
	display: none;
}

.hims-faq-item summary::after {
	position: absolute;
	top: 50%;
	right: 4px;
	display: grid;
	width: 25px;
	height: 25px;
	place-items: center;
	border-radius: 50%;
	background: #eef4ff;
	color: var(--hims-blue);
	content: "+";
	font-size: 1.1rem;
	font-weight: 500;
	transform: translateY(-50%);
}

.hims-faq-item[open] summary::after {
	content: "\2212";
}

.hims-faq-item summary:focus-visible {
	border-radius: 5px;
	outline: 2px solid #87aef5;
	outline-offset: 3px;
}

.hims-faq-item p {
	max-width: 700px;
	margin: -3px 40px 20px 0;
	color: var(--hims-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.hims-cta-section {
	padding: 70px 0 85px;
	background: #fff;
}

.hims-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.hims-cta-panel h2 {
	max-width: 640px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.hims-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.hims-cta-panel p:not(.hims-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.hims-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.hims-button-light:hover,
.hims-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.hims-cta-phone {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
}

.hims-cta-phone:hover,
.hims-cta-phone:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.hims-hero {
		padding-top: 70px;
	}

	.hims-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.hims-hero-image {
		height: 400px;
	}

	.hims-visual-tag {
		left: 0;
	}

	.hims-operations-caption {
		right: 0;
	}

	.hims-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.hims-hero {
		padding: 55px 0 60px;
	}

	.hims-hero h1 {
		font-size: 2.45rem;
	}

	.hims-hero-copy {
		font-size: .94rem;
	}

	.hims-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.hims-hero-visual {
		padding: 0 7px 32px 0;
	}

	.hims-hero-image {
		height: 260px;
		border-radius: 18px;
	}

	.hims-dashboard-card {
		right: 0;
		bottom: 4px;
		padding: 14px;
	}

	.hims-dashboard-items {
		gap: 5px;
	}

	.hims-dashboard-items span {
		padding: 6px;
		font-size: .59rem;
	}

	.hims-visual-tag {
		top: 12px;
		left: -2px;
		font-size: .68rem;
	}

	.hims-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.hims-trust-items span {
		width: calc(50% - 6px);
		font-size: .75rem;
		text-align: left;
	}

	.hims-intro-section,
	.hims-journey-section,
	.hims-modules-section,
	.hims-operations-section,
	.hims-faq-section {
		padding: 58px 0;
	}

	.hims-journey-grid {
		margin-top: 19px;
	}

	.hims-journey-card,
	.hims-module-card {
		padding: 23px;
	}

	.hims-operations-image {
		height: 230px;
	}

	.hims-operations-caption {
		right: 8px;
		bottom: 26px;
		padding: 10px 12px;
	}

	.hims-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.hims-faq-item p {
		margin-right: 4px;
	}

	.hims-cta-section {
		padding: 45px 0 58px;
	}

	.hims-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.hims-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.hims-cta-phone {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.hims-journey-card,
	.hims-module-card,
	.hims-button-primary,
	.hims-button-light {
		transition: none;
	}
}

/* Electronic medical records landing page */
.emr-page {
	--emr-ink: #112344;
	--emr-muted: #61718a;
	--emr-blue: #175cdd;
	--emr-teal: #0b8588;
	--emr-line: #e2eaf3;
	overflow: hidden;
	color: var(--emr-muted);
}

.emr-page h1,
.emr-page h2,
.emr-page h3 {
	color: var(--emr-ink);
}

.emr-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .09), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #f0f9f8 100%);
}

.emr-eyebrow,
.emr-section-kicker {
	margin: 0 0 14px;
	color: var(--emr-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.emr-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.emr-hero h1 {
	max-width: 620px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.emr-hero h1 span {
	color: var(--emr-blue);
}

.emr-hero-copy,
.emr-section-copy {
	color: var(--emr-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.emr-hero-copy {
	max-width: 570px;
	margin-bottom: 22px;
}

.emr-hero-points,
.emr-benefits-list {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.emr-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.emr-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.emr-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.emr-button-primary,
.emr-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--emr-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.emr-button-primary:hover,
.emr-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.emr-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--emr-blue);
	font-size: .9rem;
	font-weight: 650;
}

.emr-text-link:hover,
.emr-text-link:focus {
	color: #104dbf;
}

.emr-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.emr-hero-note i {
	color: var(--emr-teal);
	font-size: 1rem;
}

.emr-hero-visual {
	position: relative;
	max-width: 610px;
	margin-left: auto;
	padding: 0 22px 38px 0;
}

.emr-hero-image {
	display: block;
	width: 100%;
	height: 485px;
	border-radius: 25px;
	object-fit: cover;
	box-shadow: 0 28px 65px rgba(24, 58, 96, .18);
}

.emr-record-card {
	position: absolute;
	right: -4px;
	bottom: 9px;
	width: min(390px, 90%);
	padding: 18px;
	border: 1px solid rgba(218, 228, 239, .9);
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 17px 48px rgba(20, 44, 77, .16);
}

.emr-record-heading,
.emr-patient-row {
	display: flex;
	align-items: center;
	gap: 10px;
}

.emr-record-heading {
	padding-bottom: 14px;
	border-bottom: 1px solid #edf1f6;
}

.emr-record-heading > div,
.emr-patient-row > div {
	flex: 1;
}

.emr-record-heading strong,
.emr-record-heading small,
.emr-patient-row strong,
.emr-patient-row small {
	display: block;
}

.emr-record-heading strong,
.emr-patient-row strong {
	color: var(--emr-ink);
	font-size: .8rem;
}

.emr-record-heading small,
.emr-patient-row small {
	margin-top: 3px;
	color: #8390a1;
	font-size: .68rem;
}

.emr-record-icon {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border-radius: 12px;
	background: #eaf1ff;
	color: var(--emr-blue);
	font-size: 1.1rem;
}

.emr-record-status {
	padding: 6px 8px;
	border-radius: 50px;
	background: #eaf7f1;
	color: #18825f;
	font-size: .63rem;
	font-weight: 650;
	white-space: nowrap;
}

.emr-record-status i {
	margin-right: 4px;
	font-size: .48rem;
}

.emr-patient-row {
	padding-top: 14px;
}

.emr-patient-avatar {
	display: grid;
	width: 37px;
	height: 37px;
	flex: 0 0 37px;
	place-items: center;
	border-radius: 50%;
	background: #e8eff7;
	color: #3d5978;
	font-size: .67rem;
	font-weight: 700;
}

.emr-patient-row > i {
	color: #8290a4;
}

.emr-record-items {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	padding-top: 13px;
}

.emr-record-items span {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 6px 8px;
	border: 1px solid #e8edf4;
	border-radius: 8px;
	color: #43536a;
	font-size: .62rem;
	font-weight: 600;
}

.emr-record-items i {
	color: var(--emr-teal);
}

.emr-visual-tag {
	position: absolute;
	top: 24px;
	left: -20px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .94);
	color: #33445d;
	font-size: .76rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.emr-visual-tag i {
	color: var(--emr-teal);
}

.emr-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.emr-trust-strip p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.emr-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.emr-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.emr-trust-items i {
	color: var(--emr-teal);
	font-size: 1rem;
}

.emr-intro-section {
	padding: 68px 0;
	background: #fff;
}

.emr-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.emr-intro-section .emr-section-title {
	max-width: 520px;
	margin-bottom: 0;
}

.emr-section-copy {
	margin: 0;
}

.emr-intro-section .emr-text-link {
	margin-top: 17px;
}

.emr-workflow-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.emr-section-heading {
	max-width: 720px;
	margin: 0 auto;
}

.emr-section-heading .emr-section-copy {
	max-width: 610px;
	margin: 0 auto;
}

.emr-workflow-grid {
	margin-top: 34px;
}

.emr-workflow-card,
.emr-feature-card {
	position: relative;
	height: 100%;
	padding: 27px;
	border: 1px solid var(--emr-line);
	border-radius: 16px;
	background: #fff;
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.emr-workflow-card:hover,
.emr-feature-card:hover {
	transform: translateY(-4px);
	border-color: #c1d6fa;
	box-shadow: 0 16px 35px rgba(30, 58, 93, .09);
}

.emr-step-number {
	position: absolute;
	top: 23px;
	right: 24px;
	color: #b8c5d6;
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.emr-icon-box {
	display: inline-grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: 14px;
	background: #eaf1ff;
	color: var(--emr-blue);
	font-size: 1.25rem;
}

.emr-workflow-card h3,
.emr-feature-card h3 {
	margin: 20px 0 9px;
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.emr-workflow-card p,
.emr-feature-card p {
	margin: 0;
	color: var(--emr-muted);
	font-size: .86rem;
	line-height: 1.7;
}

.emr-features-section {
	padding: 84px 0 92px;
	background: #fff;
}

.emr-features-heading {
	margin-bottom: 31px;
}

.emr-features-heading .emr-section-title {
	margin-bottom: 0;
}

.emr-feature-card {
	display: flex;
	min-height: 245px;
	flex-direction: column;
	padding: 26px;
}

.emr-feature-card h3 {
	margin-top: 17px;
}

.emr-feature-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: auto;
	padding-top: 20px;
	color: var(--emr-blue);
	font-size: .78rem;
	font-weight: 650;
}

.emr-benefits-section {
	padding: 85px 0 92px;
	background: linear-gradient(135deg, #f5f8fc 0%, #eef5fb 100%);
}

.emr-benefits-visual {
	position: relative;
	padding: 16px;
	border: 1px solid #e1e9f2;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 22px 55px rgba(24, 52, 88, .1);
}

.emr-benefits-image {
	display: block;
	width: 100%;
	height: 340px;
	border-radius: 13px;
	object-fit: cover;
}

.emr-benefits-caption {
	position: absolute;
	right: -18px;
	bottom: 32px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px 17px;
	border: 1px solid #e5ebf2;
	border-radius: 13px;
	background: #fff;
	box-shadow: 0 12px 30px rgba(24, 52, 88, .12);
}

.emr-benefits-caption > span {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border-radius: 11px;
	background: #e8f7f1;
	color: #168660;
}

.emr-benefits-caption strong,
.emr-benefits-caption small {
	display: block;
}

.emr-benefits-caption strong {
	color: var(--emr-ink);
	font-size: .78rem;
}

.emr-benefits-caption small {
	margin-top: 3px;
	color: #7e8da0;
	font-size: .68rem;
}

.emr-benefits-section .emr-section-title {
	margin-bottom: 15px;
}

.emr-benefits-list {
	gap: 15px;
	margin: 24px 0 25px;
}

.emr-benefits-list li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #52637b;
	font-size: .88rem;
	line-height: 1.6;
}

.emr-benefits-list li > i {
	display: grid;
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	place-items: center;
	margin-top: 1px;
	border-radius: 50%;
	background: #e3f5ee;
	color: #168660;
	font-size: .8rem;
}

.emr-benefits-list strong {
	color: #2c3b52;
}

.emr-faq-section {
	padding: 85px 0;
	background: #fff;
}

.emr-faq-section .emr-section-title {
	margin-bottom: 16px;
}

.emr-faq-section .emr-text-link {
	margin-top: 18px;
}

.emr-faq-list {
	border-top: 1px solid var(--emr-line);
}

.emr-faq-item {
	padding: 0 5px;
	border-bottom: 1px solid var(--emr-line);
}

.emr-faq-item summary {
	position: relative;
	padding: 20px 38px 20px 0;
	color: #243650;
	font-size: .95rem;
	font-weight: 650;
	line-height: 1.5;
	list-style: none;
	cursor: pointer;
}

.emr-faq-item summary::-webkit-details-marker {
	display: none;
}

.emr-faq-item summary::after {
	position: absolute;
	top: 50%;
	right: 4px;
	display: grid;
	width: 25px;
	height: 25px;
	place-items: center;
	border-radius: 50%;
	background: #eef4ff;
	color: var(--emr-blue);
	content: "+";
	font-size: 1.1rem;
	font-weight: 500;
	transform: translateY(-50%);
}

.emr-faq-item[open] summary::after {
	content: "\2212";
}

.emr-faq-item summary:focus-visible {
	border-radius: 5px;
	outline: 2px solid #87aef5;
	outline-offset: 3px;
}

.emr-faq-item p {
	max-width: 700px;
	margin: -3px 40px 20px 0;
	color: var(--emr-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.emr-cta-section {
	padding: 70px 0 85px;
	background: #fff;
}

.emr-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.emr-cta-panel h2 {
	max-width: 640px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.emr-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.emr-cta-panel p:not(.emr-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.emr-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.emr-button-light:hover,
.emr-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.emr-cta-phone {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
}

.emr-cta-phone:hover,
.emr-cta-phone:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.emr-hero {
		padding-top: 70px;
	}

	.emr-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.emr-hero-image {
		height: 430px;
	}

	.emr-visual-tag {
		left: 0;
	}

	.emr-benefits-caption {
		right: 0;
	}

	.emr-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.emr-hero {
		padding: 55px 0 60px;
	}

	.emr-hero h1 {
		font-size: 2.45rem;
	}

	.emr-hero-copy {
		font-size: .94rem;
	}

	.emr-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.emr-hero-visual {
		padding: 0 7px 32px 0;
	}

	.emr-hero-image {
		height: 300px;
		border-radius: 18px;
	}

	.emr-record-card {
		right: 0;
		bottom: 4px;
		padding: 14px;
	}

	.emr-record-status {
		font-size: .58rem;
	}

	.emr-record-items {
		gap: 5px;
	}

	.emr-record-items span {
		padding: 6px;
		font-size: .57rem;
	}

	.emr-visual-tag {
		top: 12px;
		left: -2px;
		font-size: .68rem;
	}

	.emr-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.emr-trust-items span {
		width: calc(50% - 6px);
		font-size: .75rem;
		text-align: left;
	}

	.emr-intro-section,
	.emr-workflow-section,
	.emr-features-section,
	.emr-benefits-section,
	.emr-faq-section {
		padding: 58px 0;
	}

	.emr-workflow-grid {
		margin-top: 19px;
	}

	.emr-workflow-card,
	.emr-feature-card {
		padding: 23px;
	}

	.emr-benefits-image {
		height: 250px;
	}

	.emr-benefits-caption {
		right: 8px;
		bottom: 26px;
		padding: 10px 12px;
	}

	.emr-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.emr-faq-item p {
		margin-right: 4px;
	}

	.emr-cta-section {
		padding: 45px 0 58px;
	}

	.emr-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.emr-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.emr-cta-phone {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.emr-workflow-card,
	.emr-feature-card,
	.emr-button-primary,
	.emr-button-light {
		transition: none;
	}
}

/* Electronic health records landing page */
.ehr-page {
	--ehr-ink: #112344;
	--ehr-muted: #61718a;
	--ehr-blue: #175cdd;
	--ehr-teal: #0b8588;
	--ehr-line: #e2eaf3;
	overflow: hidden;
	color: var(--ehr-muted);
}

.ehr-page h1,
.ehr-page h2,
.ehr-page h3 {
	color: var(--ehr-ink);
}

.ehr-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .09), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #f0f9f8 100%);
}

.ehr-eyebrow,
.ehr-section-kicker {
	margin: 0 0 14px;
	color: var(--ehr-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ehr-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.ehr-hero h1 {
	max-width: 620px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.ehr-hero h1 span {
	color: var(--ehr-blue);
}

.ehr-hero-copy,
.ehr-section-copy {
	color: var(--ehr-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.ehr-hero-copy {
	max-width: 570px;
	margin-bottom: 22px;
}

.ehr-hero-points,
.ehr-benefits-list {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ehr-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.ehr-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.ehr-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.ehr-button-primary,
.ehr-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--ehr-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.ehr-button-primary:hover,
.ehr-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.ehr-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--ehr-blue);
	font-size: .9rem;
	font-weight: 650;
}

.ehr-text-link:hover,
.ehr-text-link:focus {
	color: #104dbf;
}

.ehr-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.ehr-hero-note i {
	color: var(--ehr-teal);
	font-size: 1rem;
}

.ehr-hero-visual {
	position: relative;
	max-width: 610px;
	margin-left: auto;
	padding: 0 22px 38px 0;
}

.ehr-hero-image {
	display: block;
	width: 100%;
	height: 485px;
	border-radius: 25px;
	object-fit: cover;
	box-shadow: 0 28px 65px rgba(24, 58, 96, .18);
}

.ehr-health-card {
	position: absolute;
	right: -4px;
	bottom: 9px;
	width: min(400px, 91%);
	padding: 18px;
	border: 1px solid rgba(218, 228, 239, .9);
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 17px 48px rgba(20, 44, 77, .16);
}

.ehr-health-heading,
.ehr-timeline-item {
	display: flex;
	align-items: center;
}

.ehr-health-heading {
	gap: 10px;
	padding-bottom: 14px;
	border-bottom: 1px solid #edf1f6;
	color: #8290a4;
}

.ehr-health-heading > div,
.ehr-timeline-item > div {
	flex: 1;
}

.ehr-health-heading strong,
.ehr-health-heading small,
.ehr-timeline-item strong,
.ehr-timeline-item small {
	display: block;
}

.ehr-health-heading strong {
	color: var(--ehr-ink);
	font-size: .8rem;
}

.ehr-health-heading small,
.ehr-timeline-item small {
	margin-top: 3px;
	color: #8390a1;
	font-size: .67rem;
}

.ehr-health-icon {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border-radius: 12px;
	background: #eaf1ff;
	color: var(--ehr-blue);
	font-size: 1.1rem;
}

.ehr-timeline-item {
	gap: 10px;
	padding-top: 13px;
}

.ehr-timeline-item strong {
	color: #2c3d55;
	font-size: .75rem;
}

.ehr-timeline-marker {
	display: grid;
	width: 31px;
	height: 31px;
	flex: 0 0 31px;
	place-items: center;
	border-radius: 10px;
	background: #e8f7f1;
	color: #168660;
	font-size: .85rem;
}

.ehr-timeline-marker-muted {
	background: #edf2ff;
	color: var(--ehr-blue);
}

.ehr-timeline-marker-light {
	background: #fff3e3;
	color: #c47c18;
}

.ehr-timeline-date {
	color: var(--ehr-blue) !important;
	font-size: .64rem !important;
	font-weight: 650;
	white-space: nowrap;
}

.ehr-visual-tag {
	position: absolute;
	top: 24px;
	left: -20px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .94);
	color: #33445d;
	font-size: .76rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.ehr-visual-tag i {
	color: var(--ehr-teal);
}

.ehr-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.ehr-trust-strip p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.ehr-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.ehr-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.ehr-trust-items i {
	color: var(--ehr-teal);
	font-size: 1rem;
}

.ehr-intro-section {
	padding: 68px 0;
	background: #fff;
}

.ehr-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.ehr-intro-section .ehr-section-title {
	max-width: 520px;
	margin-bottom: 0;
}

.ehr-section-copy {
	margin: 0;
}

.ehr-intro-section .ehr-text-link {
	margin-top: 17px;
}

.ehr-journey-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.ehr-section-heading {
	max-width: 720px;
	margin: 0 auto;
}

.ehr-section-heading .ehr-section-copy {
	max-width: 610px;
	margin: 0 auto;
}

.ehr-journey-grid {
	margin-top: 34px;
}

.ehr-journey-card,
.ehr-feature-card {
	position: relative;
	height: 100%;
	padding: 27px;
	border: 1px solid var(--ehr-line);
	border-radius: 16px;
	background: #fff;
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.ehr-journey-card:hover,
.ehr-feature-card:hover {
	transform: translateY(-4px);
	border-color: #c1d6fa;
	box-shadow: 0 16px 35px rgba(30, 58, 93, .09);
}

.ehr-step-number {
	position: absolute;
	top: 23px;
	right: 24px;
	color: #b8c5d6;
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.ehr-icon-box {
	display: inline-grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: 14px;
	background: #eaf1ff;
	color: var(--ehr-blue);
	font-size: 1.25rem;
}

.ehr-journey-card h3,
.ehr-feature-card h3 {
	margin: 20px 0 9px;
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.ehr-journey-card p,
.ehr-feature-card p {
	margin: 0;
	color: var(--ehr-muted);
	font-size: .86rem;
	line-height: 1.7;
}

.ehr-features-section {
	padding: 84px 0 92px;
	background: #fff;
}

.ehr-features-heading {
	margin-bottom: 31px;
}

.ehr-features-heading .ehr-section-title {
	margin-bottom: 0;
}

.ehr-feature-card {
	display: flex;
	min-height: 245px;
	flex-direction: column;
	padding: 26px;
}

.ehr-feature-card h3 {
	margin-top: 17px;
}

.ehr-feature-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: auto;
	padding-top: 20px;
	color: var(--ehr-blue);
	font-size: .78rem;
	font-weight: 650;
}

.ehr-benefits-section {
	padding: 85px 0 92px;
	background: linear-gradient(135deg, #f5f8fc 0%, #eef5fb 100%);
}

.ehr-benefits-visual {
	position: relative;
	padding: 16px;
	border: 1px solid #e1e9f2;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 22px 55px rgba(24, 52, 88, .1);
}

.ehr-benefits-image {
	display: block;
	width: 100%;
	height: 340px;
	border-radius: 13px;
	object-fit: cover;
}

.ehr-benefits-caption {
	position: absolute;
	right: -18px;
	bottom: 32px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px 17px;
	border: 1px solid #e5ebf2;
	border-radius: 13px;
	background: #fff;
	box-shadow: 0 12px 30px rgba(24, 52, 88, .12);
}

.ehr-benefits-caption > span {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border-radius: 11px;
	background: #e8f7f1;
	color: #168660;
}

.ehr-benefits-caption strong,
.ehr-benefits-caption small {
	display: block;
}

.ehr-benefits-caption strong {
	color: var(--ehr-ink);
	font-size: .78rem;
}

.ehr-benefits-caption small {
	margin-top: 3px;
	color: #7e8da0;
	font-size: .68rem;
}

.ehr-benefits-section .ehr-section-title {
	margin-bottom: 15px;
}

.ehr-benefits-list {
	gap: 15px;
	margin: 24px 0 25px;
}

.ehr-benefits-list li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #52637b;
	font-size: .88rem;
	line-height: 1.6;
}

.ehr-benefits-list li > i {
	display: grid;
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	place-items: center;
	margin-top: 1px;
	border-radius: 50%;
	background: #e3f5ee;
	color: #168660;
	font-size: .8rem;
}

.ehr-benefits-list strong {
	color: #2c3b52;
}

.ehr-faq-section {
	padding: 85px 0;
	background: #fff;
}

.ehr-faq-section .ehr-section-title {
	margin-bottom: 16px;
}

.ehr-faq-section .ehr-text-link {
	margin-top: 18px;
}

.ehr-faq-list {
	border-top: 1px solid var(--ehr-line);
}

.ehr-faq-item {
	padding: 0 5px;
	border-bottom: 1px solid var(--ehr-line);
}

.ehr-faq-item summary {
	position: relative;
	padding: 20px 38px 20px 0;
	color: #243650;
	font-size: .95rem;
	font-weight: 650;
	line-height: 1.5;
	list-style: none;
	cursor: pointer;
}

.ehr-faq-item summary::-webkit-details-marker {
	display: none;
}

.ehr-faq-item summary::after {
	position: absolute;
	top: 50%;
	right: 4px;
	display: grid;
	width: 25px;
	height: 25px;
	place-items: center;
	border-radius: 50%;
	background: #eef4ff;
	color: var(--ehr-blue);
	content: "+";
	font-size: 1.1rem;
	font-weight: 500;
	transform: translateY(-50%);
}

.ehr-faq-item[open] summary::after {
	content: "\2212";
}

.ehr-faq-item summary:focus-visible {
	border-radius: 5px;
	outline: 2px solid #87aef5;
	outline-offset: 3px;
}

.ehr-faq-item p {
	max-width: 700px;
	margin: -3px 40px 20px 0;
	color: var(--ehr-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.ehr-cta-section {
	padding: 70px 0 85px;
	background: #fff;
}

.ehr-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.ehr-cta-panel h2 {
	max-width: 640px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.ehr-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ehr-cta-panel p:not(.ehr-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.ehr-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.ehr-button-light:hover,
.ehr-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.ehr-cta-phone {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
}

.ehr-cta-phone:hover,
.ehr-cta-phone:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.ehr-hero {
		padding-top: 70px;
	}

	.ehr-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.ehr-hero-image {
		height: 430px;
	}

	.ehr-visual-tag {
		left: 0;
	}

	.ehr-benefits-caption {
		right: 0;
	}

	.ehr-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.ehr-hero {
		padding: 55px 0 60px;
	}

	.ehr-hero h1 {
		font-size: 2.45rem;
	}

	.ehr-hero-copy {
		font-size: .94rem;
	}

	.ehr-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.ehr-hero-visual {
		padding: 0 7px 32px 0;
	}

	.ehr-hero-image {
		height: 300px;
		border-radius: 18px;
	}

	.ehr-health-card {
		right: 0;
		bottom: 4px;
		padding: 14px;
	}

	.ehr-timeline-item {
		gap: 7px;
	}

	.ehr-timeline-marker {
		width: 28px;
		height: 28px;
		flex-basis: 28px;
	}

	.ehr-timeline-date {
		font-size: .59rem !important;
	}

	.ehr-visual-tag {
		top: 12px;
		left: -2px;
		font-size: .68rem;
	}

	.ehr-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.ehr-trust-items span {
		width: calc(50% - 6px);
		font-size: .75rem;
		text-align: left;
	}

	.ehr-intro-section,
	.ehr-journey-section,
	.ehr-features-section,
	.ehr-benefits-section,
	.ehr-faq-section {
		padding: 58px 0;
	}

	.ehr-journey-grid {
		margin-top: 19px;
	}

	.ehr-journey-card,
	.ehr-feature-card {
		padding: 23px;
	}

	.ehr-benefits-image {
		height: 250px;
	}

	.ehr-benefits-caption {
		right: 8px;
		bottom: 26px;
		padding: 10px 12px;
	}

	.ehr-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.ehr-faq-item p {
		margin-right: 4px;
	}

	.ehr-cta-section {
		padding: 45px 0 58px;
	}

	.ehr-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.ehr-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.ehr-cta-phone {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ehr-journey-card,
	.ehr-feature-card,
	.ehr-button-primary,
	.ehr-button-light {
		transition: none;
	}
}

/* Pharmacy management system landing page */
.pharm-page {
	--pharm-ink: #112344;
	--pharm-muted: #61718a;
	--pharm-blue: #175cdd;
	--pharm-teal: #0b8588;
	--pharm-line: #e2eaf3;
	overflow: hidden;
	color: var(--pharm-muted);
}

.pharm-page h1,
.pharm-page h2,
.pharm-page h3 {
	color: var(--pharm-ink);
}

.pharm-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .09), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #f0f9f8 100%);
}

.pharm-eyebrow,
.pharm-section-kicker {
	margin: 0 0 14px;
	color: var(--pharm-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.pharm-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.pharm-hero h1 {
	max-width: 620px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.pharm-hero h1 span {
	color: var(--pharm-blue);
}

.pharm-hero-copy,
.pharm-section-copy {
	color: var(--pharm-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.pharm-hero-copy {
	max-width: 570px;
	margin-bottom: 22px;
}

.pharm-hero-points,
.pharm-benefits-list {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pharm-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.pharm-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.pharm-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.pharm-button-primary,
.pharm-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--pharm-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.pharm-button-primary:hover,
.pharm-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.pharm-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--pharm-blue);
	font-size: .9rem;
	font-weight: 650;
}

.pharm-text-link:hover,
.pharm-text-link:focus {
	color: #104dbf;
}

.pharm-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.pharm-hero-note i {
	color: var(--pharm-teal);
	font-size: 1rem;
}

.pharm-hero-visual {
	position: relative;
	max-width: 610px;
	margin-left: auto;
	padding: 0 22px 38px 0;
}

.pharm-hero-image {
	display: block;
	width: 100%;
	height: 485px;
	border-radius: 25px;
	object-fit: cover;
	box-shadow: 0 28px 65px rgba(24, 58, 96, .18);
}

.pharm-stock-card {
	position: absolute;
	right: -4px;
	bottom: 9px;
	width: min(390px, 90%);
	padding: 18px;
	border: 1px solid rgba(218, 228, 239, .9);
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 17px 48px rgba(20, 44, 77, .16);
}

.pharm-stock-heading,
.pharm-stock-row {
	display: flex;
	align-items: center;
	gap: 10px;
}

.pharm-stock-heading {
	padding-bottom: 14px;
	border-bottom: 1px solid #edf1f6;
	color: #8290a4;
}

.pharm-stock-heading > div,
.pharm-stock-row > div {
	flex: 1;
}

.pharm-stock-heading strong,
.pharm-stock-heading small,
.pharm-stock-row strong,
.pharm-stock-row small {
	display: block;
}

.pharm-stock-heading strong {
	color: var(--pharm-ink);
	font-size: .8rem;
}

.pharm-stock-heading small,
.pharm-stock-row small {
	margin-top: 3px;
	color: #8390a1;
	font-size: .67rem;
}

.pharm-stock-icon {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border-radius: 12px;
	background: #eaf1ff;
	color: var(--pharm-blue);
	font-size: 1.1rem;
}

.pharm-stock-row {
	padding-top: 14px;
}

.pharm-stock-row strong {
	color: #2c3d55;
	font-size: .75rem;
}

.pharm-stock-row > i {
	color: #8290a4;
}

.pharm-stock-product {
	display: grid;
	width: 31px;
	height: 31px;
	flex: 0 0 31px;
	place-items: center;
	border-radius: 10px;
	background: #e8f7f1;
	color: #168660;
}

.pharm-stock-product-muted {
	background: #edf2ff;
	color: var(--pharm-blue);
}

.pharm-stock-state {
	padding: 5px 8px;
	border-radius: 50px;
	background: #fff4e3;
	color: #a96c12;
	font-size: .62rem;
	font-weight: 650;
	white-space: nowrap;
}

.pharm-visual-tag {
	position: absolute;
	top: 24px;
	left: -20px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .94);
	color: #33445d;
	font-size: .76rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.pharm-visual-tag i {
	color: var(--pharm-teal);
}

.pharm-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.pharm-trust-strip p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.pharm-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.pharm-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.pharm-trust-items i {
	color: var(--pharm-teal);
	font-size: 1rem;
}

.pharm-intro-section {
	padding: 68px 0;
	background: #fff;
}

.pharm-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.pharm-intro-section .pharm-section-title {
	max-width: 520px;
	margin-bottom: 0;
}

.pharm-section-copy {
	margin: 0;
}

.pharm-intro-section .pharm-text-link {
	margin-top: 17px;
}

.pharm-workflow-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.pharm-section-heading {
	max-width: 720px;
	margin: 0 auto;
}

.pharm-section-heading .pharm-section-copy {
	max-width: 610px;
	margin: 0 auto;
}

.pharm-workflow-grid {
	margin-top: 34px;
}

.pharm-workflow-card,
.pharm-feature-card {
	position: relative;
	height: 100%;
	padding: 27px;
	border: 1px solid var(--pharm-line);
	border-radius: 16px;
	background: #fff;
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.pharm-workflow-card:hover,
.pharm-feature-card:hover {
	transform: translateY(-4px);
	border-color: #c1d6fa;
	box-shadow: 0 16px 35px rgba(30, 58, 93, .09);
}

.pharm-step-number {
	position: absolute;
	top: 23px;
	right: 24px;
	color: #b8c5d6;
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.pharm-icon-box {
	display: inline-grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: 14px;
	background: #eaf1ff;
	color: var(--pharm-blue);
	font-size: 1.25rem;
}

.pharm-workflow-card h3,
.pharm-feature-card h3 {
	margin: 20px 0 9px;
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.pharm-workflow-card p,
.pharm-feature-card p {
	margin: 0;
	color: var(--pharm-muted);
	font-size: .86rem;
	line-height: 1.7;
}

.pharm-features-section {
	padding: 84px 0 92px;
	background: #fff;
}

.pharm-features-heading {
	margin-bottom: 31px;
}

.pharm-features-heading .pharm-section-title {
	margin-bottom: 0;
}

.pharm-feature-card {
	display: flex;
	min-height: 245px;
	flex-direction: column;
	padding: 26px;
}

.pharm-feature-card h3 {
	margin-top: 17px;
}

.pharm-feature-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: auto;
	padding-top: 20px;
	color: var(--pharm-blue);
	font-size: .78rem;
	font-weight: 650;
}

.pharm-benefits-section {
	padding: 85px 0 92px;
	background: linear-gradient(135deg, #f5f8fc 0%, #eef5fb 100%);
}

.pharm-benefits-visual {
	position: relative;
	padding: 16px;
	border: 1px solid #e1e9f2;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 22px 55px rgba(24, 52, 88, .1);
}

.pharm-benefits-image {
	display: block;
	width: 100%;
	height: 325px;
	border-radius: 13px;
	object-fit: cover;
	object-position: top left;
}

.pharm-benefits-caption {
	position: absolute;
	right: -18px;
	bottom: 32px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px 17px;
	border: 1px solid #e5ebf2;
	border-radius: 13px;
	background: #fff;
	box-shadow: 0 12px 30px rgba(24, 52, 88, .12);
}

.pharm-benefits-caption > span {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border-radius: 11px;
	background: #e8f7f1;
	color: #168660;
}

.pharm-benefits-caption strong,
.pharm-benefits-caption small {
	display: block;
}

.pharm-benefits-caption strong {
	color: var(--pharm-ink);
	font-size: .78rem;
}

.pharm-benefits-caption small {
	margin-top: 3px;
	color: #7e8da0;
	font-size: .68rem;
}

.pharm-benefits-section .pharm-section-title {
	margin-bottom: 15px;
}

.pharm-benefits-list {
	gap: 15px;
	margin: 24px 0 25px;
}

.pharm-benefits-list li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #52637b;
	font-size: .88rem;
	line-height: 1.6;
}

.pharm-benefits-list li > i {
	display: grid;
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	place-items: center;
	margin-top: 1px;
	border-radius: 50%;
	background: #e3f5ee;
	color: #168660;
	font-size: .8rem;
}

.pharm-benefits-list strong {
	color: #2c3b52;
}

.pharm-faq-section {
	padding: 85px 0;
	background: #fff;
}

.pharm-faq-section .pharm-section-title {
	margin-bottom: 16px;
}

.pharm-faq-section .pharm-text-link {
	margin-top: 18px;
}

.pharm-faq-list {
	border-top: 1px solid var(--pharm-line);
}

.pharm-faq-item {
	padding: 0 5px;
	border-bottom: 1px solid var(--pharm-line);
}

.pharm-faq-item summary {
	position: relative;
	padding: 20px 38px 20px 0;
	color: #243650;
	font-size: .95rem;
	font-weight: 650;
	line-height: 1.5;
	list-style: none;
	cursor: pointer;
}

.pharm-faq-item summary::-webkit-details-marker {
	display: none;
}

.pharm-faq-item summary::after {
	position: absolute;
	top: 50%;
	right: 4px;
	display: grid;
	width: 25px;
	height: 25px;
	place-items: center;
	border-radius: 50%;
	background: #eef4ff;
	color: var(--pharm-blue);
	content: "+";
	font-size: 1.1rem;
	font-weight: 500;
	transform: translateY(-50%);
}

.pharm-faq-item[open] summary::after {
	content: "\2212";
}

.pharm-faq-item summary:focus-visible {
	border-radius: 5px;
	outline: 2px solid #87aef5;
	outline-offset: 3px;
}

.pharm-faq-item p {
	max-width: 700px;
	margin: -3px 40px 20px 0;
	color: var(--pharm-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.pharm-cta-section {
	padding: 70px 0 85px;
	background: #fff;
}

.pharm-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.pharm-cta-panel h2 {
	max-width: 640px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.pharm-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.pharm-cta-panel p:not(.pharm-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.pharm-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.pharm-button-light:hover,
.pharm-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.pharm-cta-phone {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
}

.pharm-cta-phone:hover,
.pharm-cta-phone:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.pharm-hero {
		padding-top: 70px;
	}

	.pharm-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.pharm-hero-image {
		height: 430px;
	}

	.pharm-visual-tag {
		left: 0;
	}

	.pharm-benefits-caption {
		right: 0;
	}

	.pharm-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.pharm-hero {
		padding: 55px 0 60px;
	}

	.pharm-hero h1 {
		font-size: 2.45rem;
	}

	.pharm-hero-copy {
		font-size: .94rem;
	}

	.pharm-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.pharm-hero-visual {
		padding: 0 7px 32px 0;
	}

	.pharm-hero-image {
		height: 300px;
		border-radius: 18px;
	}

	.pharm-stock-card {
		right: 0;
		bottom: 4px;
		padding: 14px;
	}

	.pharm-stock-state {
		font-size: .57rem;
	}

	.pharm-visual-tag {
		top: 12px;
		left: -2px;
		font-size: .68rem;
	}

	.pharm-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.pharm-trust-items span {
		width: calc(50% - 6px);
		font-size: .75rem;
		text-align: left;
	}

	.pharm-intro-section,
	.pharm-workflow-section,
	.pharm-features-section,
	.pharm-benefits-section,
	.pharm-faq-section {
		padding: 58px 0;
	}

	.pharm-workflow-grid {
		margin-top: 19px;
	}

	.pharm-workflow-card,
	.pharm-feature-card {
		padding: 23px;
	}

	.pharm-benefits-image {
		height: 230px;
	}

	.pharm-benefits-caption {
		right: 8px;
		bottom: 26px;
		padding: 10px 12px;
	}

	.pharm-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.pharm-faq-item p {
		margin-right: 4px;
	}

	.pharm-cta-section {
		padding: 45px 0 58px;
	}

	.pharm-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.pharm-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.pharm-cta-phone {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pharm-workflow-card,
	.pharm-feature-card,
	.pharm-button-primary,
	.pharm-button-light {
		transition: none;
	}
}

/* Clinic management software landing page */
.clinic-page {
	--clinic-ink: #112344;
	--clinic-muted: #61718a;
	--clinic-blue: #175cdd;
	--clinic-teal: #0b8588;
	--clinic-line: #e2eaf3;
	overflow: hidden;
	color: var(--clinic-muted);
}

.clinic-page h1,
.clinic-page h2,
.clinic-page h3 {
	color: var(--clinic-ink);
}

.clinic-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .09), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #f0f9f8 100%);
}

.clinic-eyebrow,
.clinic-section-kicker {
	margin: 0 0 14px;
	color: var(--clinic-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.clinic-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.clinic-hero h1 {
	max-width: 620px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.clinic-hero h1 span {
	color: var(--clinic-blue);
}

.clinic-hero-copy,
.clinic-section-copy {
	color: var(--clinic-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.clinic-hero-copy {
	max-width: 570px;
	margin-bottom: 22px;
}

.clinic-hero-points,
.clinic-benefits-list {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.clinic-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.clinic-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.clinic-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.clinic-button-primary,
.clinic-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--clinic-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.clinic-button-primary:hover,
.clinic-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.clinic-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--clinic-blue);
	font-size: .9rem;
	font-weight: 650;
}

.clinic-text-link:hover,
.clinic-text-link:focus {
	color: #104dbf;
}

.clinic-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.clinic-hero-note i {
	color: var(--clinic-teal);
	font-size: 1rem;
}

.clinic-hero-visual {
	position: relative;
	max-width: 610px;
	margin-left: auto;
	padding: 0 22px 38px 0;
}

.clinic-hero-image {
	display: block;
	width: 100%;
	height: 485px;
	border-radius: 25px;
	object-fit: cover;
	box-shadow: 0 28px 65px rgba(24, 58, 96, .18);
}

.clinic-visit-card {
	position: absolute;
	right: -4px;
	bottom: 9px;
	width: min(405px, 92%);
	padding: 18px;
	border: 1px solid rgba(218, 228, 239, .9);
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 17px 48px rgba(20, 44, 77, .16);
}

.clinic-visit-heading,
.clinic-appointment-row {
	display: flex;
	align-items: center;
	gap: 10px;
}

.clinic-visit-heading {
	padding-bottom: 14px;
	border-bottom: 1px solid #edf1f6;
}

.clinic-visit-heading > div,
.clinic-appointment-row > div {
	flex: 1;
}

.clinic-visit-heading strong,
.clinic-visit-heading small,
.clinic-appointment-row strong,
.clinic-appointment-row small {
	display: block;
}

.clinic-visit-heading strong {
	color: var(--clinic-ink);
	font-size: .8rem;
}

.clinic-visit-heading small,
.clinic-appointment-row small {
	margin-top: 3px;
	color: #8390a1;
	font-size: .67rem;
}

.clinic-visit-icon {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border-radius: 12px;
	background: #eaf1ff;
	color: var(--clinic-blue);
	font-size: 1.1rem;
}

.clinic-visit-count {
	padding: 6px 8px;
	border-radius: 50px;
	background: #eef4ff;
	color: var(--clinic-blue);
	font-size: .6rem;
	font-weight: 650;
	white-space: nowrap;
}

.clinic-appointment-row {
	padding-top: 14px;
}

.clinic-appointment-time {
	color: var(--clinic-blue);
	font-size: .7rem;
	font-weight: 700;
	white-space: nowrap;
}

.clinic-appointment-time-muted {
	color: #7c8da3;
}

.clinic-appointment-row strong {
	color: #2c3d55;
	font-size: .74rem;
}

.clinic-appointment-row > i {
	color: #8290a4;
}

.clinic-appointment-state {
	padding: 5px 8px;
	border-radius: 50px;
	background: #eaf7f1;
	color: #18825f;
	font-size: .61rem;
	font-weight: 650;
	white-space: nowrap;
}

.clinic-appointment-state i {
	margin-right: 4px;
	font-size: .45rem;
}

.clinic-visual-tag {
	position: absolute;
	top: 24px;
	left: -20px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .94);
	color: #33445d;
	font-size: .76rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.clinic-visual-tag i {
	color: var(--clinic-teal);
}

.clinic-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.clinic-trust-strip p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.clinic-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.clinic-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.clinic-trust-items i {
	color: var(--clinic-teal);
	font-size: 1rem;
}

.clinic-intro-section {
	padding: 68px 0;
	background: #fff;
}

.clinic-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.clinic-intro-section .clinic-section-title {
	max-width: 520px;
	margin-bottom: 0;
}

.clinic-section-copy {
	margin: 0;
}

.clinic-intro-section .clinic-text-link {
	margin-top: 17px;
}

.clinic-workflow-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.clinic-section-heading {
	max-width: 720px;
	margin: 0 auto;
}

.clinic-section-heading .clinic-section-copy {
	max-width: 610px;
	margin: 0 auto;
}

.clinic-workflow-grid {
	margin-top: 34px;
}

.clinic-workflow-card,
.clinic-feature-card {
	position: relative;
	height: 100%;
	padding: 27px;
	border: 1px solid var(--clinic-line);
	border-radius: 16px;
	background: #fff;
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.clinic-workflow-card:hover,
.clinic-feature-card:hover {
	transform: translateY(-4px);
	border-color: #c1d6fa;
	box-shadow: 0 16px 35px rgba(30, 58, 93, .09);
}

.clinic-step-number {
	position: absolute;
	top: 23px;
	right: 24px;
	color: #b8c5d6;
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.clinic-icon-box {
	display: inline-grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: 14px;
	background: #eaf1ff;
	color: var(--clinic-blue);
	font-size: 1.25rem;
}

.clinic-workflow-card h3,
.clinic-feature-card h3 {
	margin: 20px 0 9px;
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.clinic-workflow-card p,
.clinic-feature-card p {
	margin: 0;
	color: var(--clinic-muted);
	font-size: .86rem;
	line-height: 1.7;
}

.clinic-features-section {
	padding: 84px 0 92px;
	background: #fff;
}

.clinic-features-heading {
	margin-bottom: 31px;
}

.clinic-features-heading .clinic-section-title {
	margin-bottom: 0;
}

.clinic-feature-card {
	display: flex;
	min-height: 245px;
	flex-direction: column;
	padding: 26px;
}

.clinic-feature-card h3 {
	margin-top: 17px;
}

.clinic-feature-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: auto;
	padding-top: 20px;
	color: var(--clinic-blue);
	font-size: .78rem;
	font-weight: 650;
}

a.clinic-feature-link:hover,
a.clinic-feature-link:focus {
	color: #104dbf;
}

.clinic-benefits-section {
	padding: 85px 0 92px;
	background: linear-gradient(135deg, #f5f8fc 0%, #eef5fb 100%);
}

.clinic-benefits-visual {
	position: relative;
	padding: 16px;
	border: 1px solid #e1e9f2;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 22px 55px rgba(24, 52, 88, .1);
}

.clinic-benefits-image {
	display: block;
	width: 100%;
	height: 325px;
	border-radius: 13px;
	object-fit: cover;
	object-position: top left;
}

.clinic-benefits-caption {
	position: absolute;
	right: -18px;
	bottom: 32px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px 17px;
	border: 1px solid #e5ebf2;
	border-radius: 13px;
	background: #fff;
	box-shadow: 0 12px 30px rgba(24, 52, 88, .12);
}

.clinic-benefits-caption > span {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border-radius: 11px;
	background: #e8f7f1;
	color: #168660;
}

.clinic-benefits-caption strong,
.clinic-benefits-caption small {
	display: block;
}

.clinic-benefits-caption strong {
	color: var(--clinic-ink);
	font-size: .78rem;
}

.clinic-benefits-caption small {
	margin-top: 3px;
	color: #7e8da0;
	font-size: .68rem;
}

.clinic-benefits-section .clinic-section-title {
	margin-bottom: 15px;
}

.clinic-benefits-list {
	gap: 15px;
	margin: 24px 0 25px;
}

.clinic-benefits-list li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #52637b;
	font-size: .88rem;
	line-height: 1.6;
}

.clinic-benefits-list li > i {
	display: grid;
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	place-items: center;
	margin-top: 1px;
	border-radius: 50%;
	background: #e3f5ee;
	color: #168660;
	font-size: .8rem;
}

.clinic-benefits-list strong {
	color: #2c3b52;
}

.clinic-faq-section {
	padding: 85px 0;
	background: #fff;
}

.clinic-faq-section .clinic-section-title {
	margin-bottom: 16px;
}

.clinic-faq-section .clinic-text-link {
	margin-top: 18px;
}

.clinic-faq-list {
	border-top: 1px solid var(--clinic-line);
}

.clinic-faq-item {
	padding: 0 5px;
	border-bottom: 1px solid var(--clinic-line);
}

.clinic-faq-item summary {
	position: relative;
	padding: 20px 38px 20px 0;
	color: #243650;
	font-size: .95rem;
	font-weight: 650;
	line-height: 1.5;
	list-style: none;
	cursor: pointer;
}

.clinic-faq-item summary::-webkit-details-marker {
	display: none;
}

.clinic-faq-item summary::after {
	position: absolute;
	top: 50%;
	right: 4px;
	display: grid;
	width: 25px;
	height: 25px;
	place-items: center;
	border-radius: 50%;
	background: #eef4ff;
	color: var(--clinic-blue);
	content: "+";
	font-size: 1.1rem;
	font-weight: 500;
	transform: translateY(-50%);
}

.clinic-faq-item[open] summary::after {
	content: "\2212";
}

.clinic-faq-item summary:focus-visible {
	border-radius: 5px;
	outline: 2px solid #87aef5;
	outline-offset: 3px;
}

.clinic-faq-item p {
	max-width: 700px;
	margin: -3px 40px 20px 0;
	color: var(--clinic-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.clinic-cta-section {
	padding: 70px 0 85px;
	background: #fff;
}

.clinic-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.clinic-cta-panel h2 {
	max-width: 640px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.clinic-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.clinic-cta-panel p:not(.clinic-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.clinic-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.clinic-button-light:hover,
.clinic-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.clinic-cta-phone {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
}

.clinic-cta-phone:hover,
.clinic-cta-phone:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.clinic-hero {
		padding-top: 70px;
	}

	.clinic-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.clinic-hero-image {
		height: 430px;
	}

	.clinic-visual-tag {
		left: 0;
	}

	.clinic-benefits-caption {
		right: 0;
	}

	.clinic-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.clinic-hero {
		padding: 55px 0 60px;
	}

	.clinic-hero h1 {
		font-size: 2.45rem;
	}

	.clinic-hero-copy {
		font-size: .94rem;
	}

	.clinic-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.clinic-hero-visual {
		padding: 0 7px 32px 0;
	}

	.clinic-hero-image {
		height: 300px;
		border-radius: 18px;
	}

	.clinic-visit-card {
		right: 0;
		bottom: 4px;
		padding: 14px;
	}

	.clinic-visit-count {
		font-size: .55rem;
	}

	.clinic-appointment-row {
		gap: 7px;
	}

	.clinic-appointment-state {
		font-size: .55rem;
	}

	.clinic-visual-tag {
		top: 12px;
		left: -2px;
		font-size: .68rem;
	}

	.clinic-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.clinic-trust-items span {
		width: calc(50% - 6px);
		font-size: .75rem;
		text-align: left;
	}

	.clinic-intro-section,
	.clinic-workflow-section,
	.clinic-features-section,
	.clinic-benefits-section,
	.clinic-faq-section {
		padding: 58px 0;
	}

	.clinic-workflow-grid {
		margin-top: 19px;
	}

	.clinic-workflow-card,
	.clinic-feature-card {
		padding: 23px;
	}

	.clinic-benefits-image {
		height: 230px;
	}

	.clinic-benefits-caption {
		right: 8px;
		bottom: 26px;
		padding: 10px 12px;
	}

	.clinic-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.clinic-faq-item p {
		margin-right: 4px;
	}

	.clinic-cta-section {
		padding: 45px 0 58px;
	}

	.clinic-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.clinic-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.clinic-cta-phone {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.clinic-workflow-card,
	.clinic-feature-card,
	.clinic-button-primary,
	.clinic-button-light {
		transition: none;
	}
}

/* Ayushman Bharat Digital Mission landing page */
.abdm-page {
	--abdm-ink: #112344;
	--abdm-muted: #61718a;
	--abdm-blue: #175cdd;
	--abdm-teal: #0b8588;
	--abdm-line: #e2eaf3;
	overflow: hidden;
	color: var(--abdm-muted);
}

.abdm-page h1,
.abdm-page h2,
.abdm-page h3 {
	color: var(--abdm-ink);
}

.abdm-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .1), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #eff9f8 100%);
}

.abdm-eyebrow,
.abdm-section-kicker {
	margin: 0 0 14px;
	color: var(--abdm-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.abdm-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.abdm-hero h1 {
	max-width: 630px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.abdm-hero h1 span {
	color: var(--abdm-blue);
}

.abdm-hero-copy,
.abdm-section-copy {
	color: var(--abdm-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.abdm-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.abdm-hero-points,
.abdm-benefits-list {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.abdm-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.abdm-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.abdm-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.abdm-button-primary,
.abdm-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--abdm-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.abdm-button-primary:hover,
.abdm-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.abdm-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--abdm-blue);
	font-size: .9rem;
	font-weight: 650;
}

.abdm-text-link:hover,
.abdm-text-link:focus {
	color: #104dbf;
}

.abdm-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.abdm-hero-note i {
	color: var(--abdm-teal);
	font-size: 1rem;
}

.abdm-hero-visual {
	position: relative;
	max-width: 610px;
	min-height: 455px;
	margin-left: auto;
	padding: 18px 22px 28px 0;
}

.abdm-ecosystem-card {
	position: relative;
	min-height: 410px;
	padding: 19px;
	border: 1px solid rgba(218, 228, 239, .95);
	border-radius: 23px;
	background:
		radial-gradient(circle at 50% 48%, rgba(23, 92, 221, .055), transparent 54%),
		#fff;
	box-shadow: 0 28px 65px rgba(24, 58, 96, .14);
}

.abdm-ecosystem-topline,
.abdm-patient-card,
.abdm-consent-note {
	display: flex;
	align-items: center;
}

.abdm-ecosystem-topline {
	justify-content: space-between;
	color: #52647d;
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: .04em;
}

.abdm-ecosystem-topline span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.abdm-ecosystem-topline span i {
	color: var(--abdm-blue);
	font-size: 1rem;
}

.abdm-patient-card {
	position: relative;
	z-index: 2;
	gap: 11px;
	margin: 17px auto 0;
	padding: 12px 14px;
	border: 1px solid #e3eaf3;
	border-radius: 13px;
	background: #fff;
	box-shadow: 0 8px 22px rgba(24, 52, 88, .07);
}

.abdm-patient-avatar {
	display: grid;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	place-items: center;
	border-radius: 12px;
	background: #eaf1ff;
	color: var(--abdm-blue);
	font-size: 1.1rem;
}

.abdm-patient-card > div {
	flex: 1;
}

.abdm-patient-card strong,
.abdm-patient-card small {
	display: block;
}

.abdm-patient-card strong {
	color: var(--abdm-ink);
	font-size: .78rem;
}

.abdm-patient-card small {
	margin-top: 3px;
	color: #8390a1;
	font-size: .66rem;
}

.abdm-patient-shield {
	color: #168660;
}

.abdm-network {
	position: relative;
	display: grid;
	min-height: 217px;
	grid-template-columns: 1fr 1fr;
	align-content: center;
	gap: 15px 24px;
	max-width: 470px;
	margin: 7px auto;
	padding: 11px 0;
}

.abdm-network-line {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 55%;
	height: 55%;
	border: 1px dashed #bfd0eb;
	border-radius: 50%;
	transform: translate(-50%, -50%);
}

.abdm-network-node {
	position: relative;
	z-index: 1;
	display: grid;
	justify-items: center;
	gap: 3px;
	width: 142px;
	margin: 0 auto;
	padding: 10px 8px;
	border: 1px solid #e5ebf3;
	border-radius: 13px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 7px 18px rgba(24, 52, 88, .06);
	text-align: center;
}

.abdm-network-node span {
	display: grid;
	width: 35px;
	height: 35px;
	place-items: center;
	margin-bottom: 2px;
	border-radius: 11px;
	background: #edf3ff;
	color: var(--abdm-blue);
	font-size: 1rem;
}

.abdm-node-records span {
	background: #e7f7f1;
	color: #168660;
}

.abdm-node-facilities span {
	background: #fff3e3;
	color: #bc7515;
}

.abdm-node-professionals span {
	background: #f1ebff;
	color: #7554bd;
}

.abdm-network-node strong {
	color: #304159;
	font-size: .69rem;
}

.abdm-network-node small {
	color: #8390a1;
	font-size: .59rem;
}

.abdm-consent-note {
	position: relative;
	z-index: 2;
	gap: 9px;
	padding: 11px 12px;
	border: 1px solid #d8eee5;
	border-radius: 12px;
	background: #f4fbf7;
	color: #168660;
}

.abdm-consent-note > span {
	flex: 1;
}

.abdm-consent-note strong,
.abdm-consent-note small {
	display: block;
}

.abdm-consent-note strong {
	color: #26654f;
	font-size: .71rem;
}

.abdm-consent-note small {
	margin-top: 3px;
	color: #6c8d7e;
	font-size: .62rem;
}

.abdm-visual-tag {
	position: absolute;
	top: 4px;
	left: -20px;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .96);
	color: #33445d;
	font-size: .76rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.abdm-visual-tag i {
	color: var(--abdm-teal);
}

.abdm-floating-icon {
	position: absolute;
	z-index: 2;
	display: grid;
	width: 45px;
	height: 45px;
	place-items: center;
	border: 1px solid #e6edf5;
	border-radius: 14px;
	background: #fff;
	color: var(--abdm-blue);
	font-size: 1.15rem;
	box-shadow: 0 12px 26px rgba(24, 52, 88, .12);
}

.abdm-floating-icon-one {
	top: 83px;
	right: -1px;
}

.abdm-floating-icon-two {
	right: -8px;
	bottom: 32px;
	color: #168660;
}

.abdm-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.abdm-trust-strip p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.abdm-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.abdm-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.abdm-trust-items i {
	color: var(--abdm-teal);
	font-size: 1rem;
}

.abdm-about-section {
	padding: 68px 0;
	background: #fff;
}

.abdm-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.abdm-about-section .abdm-section-title {
	max-width: 530px;
	margin-bottom: 0;
}

.abdm-section-copy {
	margin: 0;
}

.abdm-about-followup {
	margin-top: 13px;
}

.abdm-about-section .abdm-text-link {
	margin-top: 17px;
}

.abdm-components-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.abdm-section-heading {
	max-width: 760px;
	margin: 0 auto;
}

.abdm-section-heading .abdm-section-copy {
	max-width: 640px;
	margin: 0 auto;
}

.abdm-components-grid {
	margin-top: 34px;
}

.abdm-component-card {
	position: relative;
	display: flex;
	height: 100%;
	min-height: 282px;
	flex-direction: column;
	padding: 25px;
	border: 1px solid var(--abdm-line);
	border-radius: 16px;
	background: #fff;
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.abdm-component-card:hover {
	transform: translateY(-4px);
	border-color: #c1d6fa;
	box-shadow: 0 16px 35px rgba(30, 58, 93, .09);
}

.abdm-component-number {
	position: absolute;
	top: 23px;
	right: 23px;
	color: #b8c5d6;
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.abdm-icon-box {
	display: inline-grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: 14px;
	background: #eaf1ff;
	color: var(--abdm-blue);
	font-size: 1.25rem;
}

.abdm-component-card h3 {
	margin: 18px 0 9px;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.abdm-component-card p {
	margin: 0;
	color: var(--abdm-muted);
	font-size: .82rem;
	line-height: 1.7;
}

.abdm-component-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: auto;
	padding-top: 19px;
	color: var(--abdm-blue);
	font-size: .74rem;
	font-weight: 650;
}

.abdm-benefits-section {
	padding: 85px 0 92px;
	background: #fff;
}

.abdm-benefits-visual {
	position: relative;
	padding: 16px;
	border: 1px solid #e1e9f2;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 22px 55px rgba(24, 52, 88, .1);
}

.abdm-benefits-image {
	display: block;
	width: 100%;
	height: 330px;
	border-radius: 13px;
	object-fit: cover;
}

.abdm-benefits-caption {
	position: absolute;
	right: -18px;
	bottom: 32px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px 17px;
	border: 1px solid #e5ebf2;
	border-radius: 13px;
	background: #fff;
	box-shadow: 0 12px 30px rgba(24, 52, 88, .12);
}

.abdm-benefits-caption > span {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border-radius: 11px;
	background: #e8f7f1;
	color: #168660;
}

.abdm-benefits-caption strong,
.abdm-benefits-caption small {
	display: block;
}

.abdm-benefits-caption strong {
	color: var(--abdm-ink);
	font-size: .78rem;
}

.abdm-benefits-caption small {
	margin-top: 3px;
	color: #7e8da0;
	font-size: .68rem;
}

.abdm-benefits-section .abdm-section-title {
	margin-bottom: 15px;
}

.abdm-benefits-list {
	gap: 15px;
	margin: 24px 0 25px;
}

.abdm-benefits-list li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #52637b;
	font-size: .88rem;
	line-height: 1.6;
}

.abdm-benefits-list li > i {
	display: grid;
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	place-items: center;
	margin-top: 1px;
	border-radius: 50%;
	background: #e3f5ee;
	color: #168660;
	font-size: .8rem;
}

.abdm-benefits-list strong {
	color: #2c3b52;
}

.abdm-benefits-section .abdm-text-link {
	margin-top: 1px;
}

.abdm-platform-section {
	padding: 78px 0;
	background: linear-gradient(135deg, #f5f8fc 0%, #eef5fb 100%);
}

.abdm-platform-section .abdm-section-title {
	max-width: 640px;
	margin-bottom: 15px;
}

.abdm-platform-points {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 22px;
}

.abdm-platform-points span {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 9px 12px;
	border: 1px solid #dce7f2;
	border-radius: 50px;
	background: rgba(255, 255, 255, .8);
	color: #40536c;
	font-size: .75rem;
	font-weight: 600;
}

.abdm-platform-points i {
	color: var(--abdm-teal);
}

.abdm-platform-card {
	padding: 28px;
	border: 1px solid #e1e9f2;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 18px 46px rgba(24, 52, 88, .09);
}

.abdm-platform-card-icon {
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	margin-bottom: 18px;
	border-radius: 13px;
	background: #eaf1ff;
	color: var(--abdm-blue);
	font-size: 1.2rem;
}

.abdm-platform-label {
	margin: 0 0 8px;
	color: var(--abdm-blue);
	font-size: .69rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.abdm-platform-card h3 {
	margin: 0 0 17px;
	font-size: 1.35rem;
	font-weight: 700;
	letter-spacing: -.03em;
	line-height: 1.3;
}

.abdm-platform-card ul {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.abdm-platform-card li {
	display: flex;
	gap: 8px;
	color: #52637b;
	font-size: .82rem;
}

.abdm-platform-card li i {
	color: #168660;
}

.abdm-platform-card > a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 20px;
	color: var(--abdm-blue);
	font-size: .82rem;
	font-weight: 650;
}

.abdm-platform-card > a:hover,
.abdm-platform-card > a:focus {
	color: #104dbf;
}

.abdm-faq-section {
	padding: 85px 0;
	background: #fff;
}

.abdm-faq-section .abdm-section-title {
	margin-bottom: 16px;
}

.abdm-faq-section .abdm-text-link {
	margin-top: 18px;
}

.abdm-faq-list {
	border-top: 1px solid var(--abdm-line);
}

.abdm-faq-item {
	padding: 0 5px;
	border-bottom: 1px solid var(--abdm-line);
}

.abdm-faq-item summary {
	position: relative;
	padding: 20px 38px 20px 0;
	color: #243650;
	font-size: .95rem;
	font-weight: 650;
	line-height: 1.5;
	list-style: none;
	cursor: pointer;
}

.abdm-faq-item summary::-webkit-details-marker {
	display: none;
}

.abdm-faq-item summary::after {
	position: absolute;
	top: 50%;
	right: 4px;
	display: grid;
	width: 25px;
	height: 25px;
	place-items: center;
	border-radius: 50%;
	background: #eef4ff;
	color: var(--abdm-blue);
	content: "+";
	font-size: 1.1rem;
	font-weight: 500;
	transform: translateY(-50%);
}

.abdm-faq-item[open] summary::after {
	content: "\2212";
}

.abdm-faq-item summary:focus-visible {
	border-radius: 5px;
	outline: 2px solid #87aef5;
	outline-offset: 3px;
}

.abdm-faq-item p {
	max-width: 700px;
	margin: -3px 40px 20px 0;
	color: var(--abdm-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.abdm-cta-section {
	padding: 70px 0 85px;
	background: #fff;
}

.abdm-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.abdm-cta-panel h2 {
	max-width: 640px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.abdm-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.abdm-cta-panel p:not(.abdm-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.abdm-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.abdm-button-light:hover,
.abdm-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.abdm-cta-phone {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
}

.abdm-cta-phone:hover,
.abdm-cta-phone:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.abdm-hero {
		padding-top: 70px;
	}

	.abdm-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.abdm-benefits-caption {
		right: 0;
	}

	.abdm-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.abdm-hero {
		padding: 55px 0 60px;
	}

	.abdm-hero h1 {
		font-size: 2.45rem;
	}

	.abdm-hero-copy {
		font-size: .94rem;
	}

	.abdm-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.abdm-hero-visual {
		min-height: 390px;
		padding: 0 7px 20px 0;
	}

	.abdm-ecosystem-card {
		min-height: 365px;
		padding: 14px;
		border-radius: 18px;
	}

	.abdm-patient-card {
		gap: 8px;
		padding: 10px;
	}

	.abdm-patient-card strong {
		font-size: .68rem;
	}

	.abdm-patient-card small {
		font-size: .58rem;
	}

	.abdm-network {
		min-height: 192px;
		gap: 10px 8px;
		margin: 4px auto;
	}

	.abdm-network-line {
		width: 64%;
		height: 55%;
	}

	.abdm-network-node {
		width: min(132px, 100%);
		padding: 8px 5px;
	}

	.abdm-network-node span {
		width: 30px;
		height: 30px;
	}

	.abdm-network-node strong {
		font-size: .63rem;
	}

	.abdm-network-node small {
		font-size: .54rem;
	}

	.abdm-consent-note {
		padding: 9px;
	}

	.abdm-consent-note small {
		font-size: .56rem;
	}

	.abdm-visual-tag {
		top: -11px;
		left: -2px;
		font-size: .66rem;
	}

	.abdm-floating-icon {
		width: 37px;
		height: 37px;
		border-radius: 12px;
		font-size: 1rem;
	}

	.abdm-floating-icon-one {
		top: 53px;
		right: -1px;
	}

	.abdm-floating-icon-two {
		right: -4px;
		bottom: 9px;
	}

	.abdm-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.abdm-trust-items span {
		width: calc(50% - 6px);
		font-size: .74rem;
		text-align: left;
	}

	.abdm-about-section,
	.abdm-components-section,
	.abdm-benefits-section,
	.abdm-faq-section {
		padding: 58px 0;
	}

	.abdm-components-grid {
		margin-top: 19px;
	}

	.abdm-component-card {
		min-height: 250px;
		padding: 23px;
	}

	.abdm-benefits-image {
		height: 230px;
	}

	.abdm-benefits-caption {
		right: 8px;
		bottom: 26px;
		padding: 10px 12px;
	}

	.abdm-platform-section {
		padding: 58px 0;
	}

	.abdm-platform-card {
		padding: 23px;
	}

	.abdm-platform-points span {
		font-size: .69rem;
	}

	.abdm-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.abdm-faq-item p {
		margin-right: 4px;
	}

	.abdm-cta-section {
		padding: 45px 0 58px;
	}

	.abdm-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.abdm-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.abdm-cta-phone {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.abdm-component-card,
	.abdm-button-primary,
	.abdm-button-light {
		transition: none;
	}
}

/* Ayushman Bharat Health Account landing page */
.abha-page {
	--abha-ink: #112344;
	--abha-muted: #61718a;
	--abha-blue: #175cdd;
	--abha-teal: #0b8588;
	--abha-line: #e2eaf3;
	overflow: hidden;
	color: var(--abha-muted);
}

.abha-page h1,
.abha-page h2,
.abha-page h3 {
	color: var(--abha-ink);
}

.abha-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .1), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #eff9f8 100%);
}

.abha-eyebrow,
.abha-section-kicker {
	margin: 0 0 14px;
	color: var(--abha-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.abha-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.abha-hero h1 {
	max-width: 630px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.abha-hero h1 span {
	color: var(--abha-blue);
}

.abha-hero-copy,
.abha-section-copy {
	color: var(--abha-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.abha-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.abha-hero-points,
.abha-how-points {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.abha-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.abha-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.abha-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.abha-button-primary,
.abha-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--abha-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.abha-button-primary:hover,
.abha-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.abha-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--abha-blue);
	font-size: .9rem;
	font-weight: 650;
}

.abha-text-link:hover,
.abha-text-link:focus {
	color: #104dbf;
}

.abha-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.abha-hero-note i {
	color: var(--abha-teal);
	font-size: 1rem;
}

.abha-hero-visual {
	position: relative;
	display: grid;
	min-height: 430px;
	place-items: center;
	max-width: 610px;
	margin-left: auto;
	padding: 20px 22px 28px 0;
}

.abha-identity-card {
	position: relative;
	z-index: 1;
	width: min(100%, 475px);
	padding: 23px;
	border: 1px solid rgba(218, 228, 239, .95);
	border-radius: 23px;
	background:
		radial-gradient(circle at 92% 10%, rgba(23, 92, 221, .09), transparent 35%),
		linear-gradient(145deg, #fff 0%, #f8fbff 100%);
	box-shadow: 0 28px 65px rgba(24, 58, 96, .15);
	transform: rotate(-2deg);
}

.abha-card-top,
.abha-card-main,
.abha-card-footer {
	display: flex;
	align-items: center;
}

.abha-card-top {
	justify-content: space-between;
	color: #687990;
	font-size: .69rem;
	font-weight: 700;
	letter-spacing: .04em;
}

.abha-card-top span {
	display: inline-flex;
	align-items: center;
	gap: 7px;
}

.abha-card-top span i {
	color: var(--abha-blue);
	font-size: 1rem;
}

.abha-card-main {
	gap: 13px;
	margin-top: 27px;
}

.abha-profile-icon {
	display: grid;
	width: 57px;
	height: 57px;
	flex: 0 0 57px;
	place-items: center;
	border: 1px solid #d5e4fa;
	border-radius: 17px;
	background: linear-gradient(145deg, #edf4ff, #fff);
	color: var(--abha-blue);
	font-size: 1.6rem;
}

.abha-card-main > div:nth-child(2) {
	flex: 1;
}

.abha-card-main p {
	margin: 0 0 4px;
	color: #718198;
	font-size: .64rem;
	font-weight: 650;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.abha-card-main h2 {
	margin: 0;
	color: var(--abha-ink);
	font-size: 1.55rem;
	font-weight: 750;
	letter-spacing: -.04em;
}

.abha-card-main > div:nth-child(2) > span {
	display: block;
	margin-top: 4px;
	color: #7b8aa0;
	font-size: .67rem;
}

.abha-card-emblem {
	display: grid;
	width: 34px;
	height: 34px;
	place-items: center;
	border: 2px solid #e79c37;
	border-radius: 50%;
	color: #15876d;
	font-size: .8rem;
}

.abha-card-number {
	display: flex;
	align-items: center;
	gap: 11px;
	margin-top: 28px;
	padding: 14px 15px;
	border: 1px solid #e4ebf4;
	border-radius: 12px;
	background: rgba(255, 255, 255, .86);
	color: #31435c;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: .1em;
}

.abha-card-number small {
	margin-left: auto;
	color: #9aa6b6;
	font-size: .55rem;
	font-weight: 500;
	letter-spacing: 0;
}

.abha-card-footer {
	justify-content: space-between;
	gap: 10px;
	margin-top: 17px;
	padding-top: 14px;
	border-top: 1px solid #e8edf4;
}

.abha-card-footer span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #5e7088;
	font-size: .64rem;
	font-weight: 600;
}

.abha-card-footer i {
	color: var(--abha-teal);
}

.abha-visual-tag {
	position: absolute;
	top: 3px;
	left: -19px;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .96);
	color: #33445d;
	font-size: .76rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.abha-visual-tag i {
	color: var(--abha-teal);
}

.abha-floating-icon {
	position: absolute;
	z-index: 2;
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	border: 1px solid #e6edf5;
	border-radius: 14px;
	background: #fff;
	color: var(--abha-blue);
	font-size: 1.15rem;
	box-shadow: 0 12px 26px rgba(24, 52, 88, .12);
}

.abha-floating-icon-one {
	top: 76px;
	right: -1px;
}

.abha-floating-icon-two {
	right: -8px;
	bottom: 37px;
	color: #168660;
}

.abha-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.abha-trust-strip p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.abha-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.abha-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.abha-trust-items i {
	color: var(--abha-teal);
	font-size: 1rem;
}

.abha-about-section {
	padding: 68px 0;
	background: #fff;
}

.abha-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.abha-about-section .abha-section-title {
	max-width: 530px;
	margin-bottom: 0;
}

.abha-section-copy {
	margin: 0;
}

.abha-about-followup {
	margin-top: 13px;
}

.abha-about-section .abha-text-link {
	margin-top: 17px;
}

.abha-benefits-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.abha-section-heading {
	max-width: 760px;
	margin: 0 auto;
}

.abha-section-heading .abha-section-copy {
	max-width: 640px;
	margin: 0 auto;
}

.abha-benefit-grid {
	margin-top: 34px;
}

.abha-benefit-card,
.abha-step-card {
	height: 100%;
	padding: 26px;
	border: 1px solid var(--abha-line);
	border-radius: 16px;
	background: #fff;
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.abha-benefit-card:hover,
.abha-step-card:hover {
	transform: translateY(-4px);
	border-color: #c1d6fa;
	box-shadow: 0 16px 35px rgba(30, 58, 93, .09);
}

.abha-icon-box {
	display: inline-grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: 14px;
	background: #eaf1ff;
	color: var(--abha-blue);
	font-size: 1.25rem;
}

.abha-benefit-card h3,
.abha-step-card h3 {
	margin: 18px 0 8px;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.abha-benefit-card p,
.abha-step-card p {
	margin: 0;
	color: var(--abha-muted);
	font-size: .84rem;
	line-height: 1.7;
}

.abha-how-section {
	padding: 85px 0 92px;
	background: #fff;
}

.abha-how-visual {
	position: relative;
	display: grid;
	min-height: 365px;
	place-items: center;
	overflow: hidden;
	border: 1px solid #e3ebf4;
	border-radius: 22px;
	background:
		radial-gradient(circle at 50% 48%, rgba(23, 92, 221, .07), transparent 57%),
		linear-gradient(145deg, #f8fbff, #f2f8f8);
}

.abha-how-orbit {
	position: absolute;
	top: 50%;
	left: 50%;
	border: 1px dashed #c6d7ef;
	border-radius: 50%;
	transform: translate(-50%, -50%);
}

.abha-how-orbit-one {
	width: 245px;
	height: 245px;
}

.abha-how-orbit-two {
	width: 330px;
	height: 330px;
	border-color: #d7e3f1;
}

.abha-how-center,
.abha-how-node {
	position: absolute;
	z-index: 1;
	display: grid;
	justify-items: center;
}

.abha-how-center {
	top: 50%;
	left: 50%;
	width: 108px;
	height: 108px;
	align-content: center;
	gap: 5px;
	border: 1px solid #d9e6f8;
	border-radius: 50%;
	background: #fff;
	color: var(--abha-blue);
	box-shadow: 0 12px 30px rgba(24, 52, 88, .12);
	transform: translate(-50%, -50%);
}

.abha-how-center i {
	font-size: 1.65rem;
}

.abha-how-center span {
	color: #344760;
	font-size: .68rem;
	font-weight: 700;
}

.abha-how-node {
	min-width: 94px;
	gap: 5px;
	padding: 10px 12px;
	border: 1px solid #e1e9f2;
	border-radius: 13px;
	background: #fff;
	color: #178365;
	box-shadow: 0 9px 22px rgba(24, 52, 88, .08);
}

.abha-how-node i {
	font-size: 1.05rem;
}

.abha-how-node span {
	color: #53647b;
	font-size: .64rem;
	font-weight: 650;
}

.abha-how-node-one {
	top: 24px;
	left: 50%;
	transform: translateX(-50%);
}

.abha-how-node-two {
	right: 24px;
	bottom: 65px;
	color: var(--abha-blue);
}

.abha-how-node-three {
	bottom: 65px;
	left: 24px;
	color: #a76d16;
}

.abha-how-caption {
	position: absolute;
	right: 50%;
	bottom: 16px;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	width: max-content;
	max-width: calc(100% - 32px);
	padding: 8px 11px;
	border: 1px solid #d8eee5;
	border-radius: 50px;
	background: #f4fbf7;
	color: #38735e;
	font-size: .65rem;
	font-weight: 600;
	transform: translateX(50%);
}

.abha-how-caption i {
	color: #168660;
}

.abha-how-section .abha-section-title {
	margin-bottom: 15px;
}

.abha-how-points {
	gap: 14px;
	margin: 22px 0;
}

.abha-how-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #52637b;
	font-size: .87rem;
	line-height: 1.6;
}

.abha-how-points li > i {
	display: grid;
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	place-items: center;
	margin-top: 1px;
	border-radius: 50%;
	background: #e3f5ee;
	color: #168660;
	font-size: .8rem;
}

.abha-how-points strong {
	color: #2c3b52;
}

.abha-steps-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.abha-steps-grid {
	margin-top: 34px;
}

.abha-step-card {
	position: relative;
}

.abha-step-number {
	position: absolute;
	top: 23px;
	right: 24px;
	color: #b8c5d6;
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.abha-steps-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	max-width: 740px;
	margin: 25px auto 0;
	padding: 13px 16px;
	border: 1px solid #f1dfc2;
	border-radius: 11px;
	background: #fffaf1;
	color: #775a2d;
	font-size: .79rem;
	line-height: 1.6;
}

.abha-steps-disclaimer i {
	margin-top: 2px;
	color: #b77b20;
}

.abha-hoziva-section {
	padding: 78px 0;
	background: #fff;
}

.abha-hoziva-section .abha-section-title {
	max-width: 650px;
	margin-bottom: 15px;
}

.abha-hoziva-points {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 22px;
}

.abha-hoziva-points span {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 9px 12px;
	border: 1px solid #dce7f2;
	border-radius: 50px;
	background: #f9fbfe;
	color: #40536c;
	font-size: .75rem;
	font-weight: 600;
}

.abha-hoziva-points i {
	color: var(--abha-teal);
}

.abha-hoziva-card {
	padding: 28px;
	border: 1px solid #e1e9f2;
	border-radius: 18px;
	background: linear-gradient(145deg, #fff, #f9fbff);
	box-shadow: 0 18px 46px rgba(24, 52, 88, .09);
}

.abha-hoziva-icon {
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	margin-bottom: 18px;
	border-radius: 13px;
	background: #eaf1ff;
	color: var(--abha-blue);
	font-size: 1.2rem;
}

.abha-hoziva-label {
	margin: 0 0 8px;
	color: var(--abha-blue);
	font-size: .69rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.abha-hoziva-card h3 {
	margin: 0 0 10px;
	font-size: 1.35rem;
	font-weight: 700;
	letter-spacing: -.03em;
	line-height: 1.3;
}

.abha-hoziva-card > p:not(.abha-hoziva-label) {
	margin: 0;
	color: var(--abha-muted);
	font-size: .84rem;
	line-height: 1.7;
}

.abha-hoziva-card > a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 19px;
	color: var(--abha-blue);
	font-size: .82rem;
	font-weight: 650;
}

.abha-hoziva-card > a:hover,
.abha-hoziva-card > a:focus {
	color: #104dbf;
}

.abha-faq-section {
	padding: 85px 0;
	background: #fff;
}

.abha-faq-section .abha-section-title {
	margin-bottom: 16px;
}

.abha-faq-section .abha-text-link {
	margin-top: 18px;
}

.abha-faq-list {
	border-top: 1px solid var(--abha-line);
}

.abha-faq-item {
	padding: 0 5px;
	border-bottom: 1px solid var(--abha-line);
}

.abha-faq-item summary {
	position: relative;
	padding: 20px 38px 20px 0;
	color: #243650;
	font-size: .95rem;
	font-weight: 650;
	line-height: 1.5;
	list-style: none;
	cursor: pointer;
}

.abha-faq-item summary::-webkit-details-marker {
	display: none;
}

.abha-faq-item summary::after {
	position: absolute;
	top: 50%;
	right: 4px;
	display: grid;
	width: 25px;
	height: 25px;
	place-items: center;
	border-radius: 50%;
	background: #eef4ff;
	color: var(--abha-blue);
	content: "+";
	font-size: 1.1rem;
	font-weight: 500;
	transform: translateY(-50%);
}

.abha-faq-item[open] summary::after {
	content: "\2212";
}

.abha-faq-item summary:focus-visible {
	border-radius: 5px;
	outline: 2px solid #87aef5;
	outline-offset: 3px;
}

.abha-faq-item p {
	max-width: 700px;
	margin: -3px 40px 20px 0;
	color: var(--abha-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.abha-cta-section {
	padding: 70px 0 85px;
	background: #fff;
}

.abha-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.abha-cta-panel h2 {
	max-width: 640px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.abha-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.abha-cta-panel p:not(.abha-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.abha-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.abha-button-light:hover,
.abha-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.abha-cta-contact {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
	font-weight: 600;
}

.abha-cta-contact:hover,
.abha-cta-contact:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.abha-hero {
		padding-top: 70px;
	}

	.abha-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.abha-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.abha-hero {
		padding: 55px 0 60px;
	}

	.abha-hero h1 {
		font-size: 2.45rem;
	}

	.abha-hero-copy {
		font-size: .94rem;
	}

	.abha-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.abha-hero-visual {
		min-height: 355px;
		padding: 0 7px 20px 0;
	}

	.abha-identity-card {
		padding: 17px;
		border-radius: 18px;
		transform: rotate(-1deg);
	}

	.abha-card-main {
		gap: 9px;
		margin-top: 21px;
	}

	.abha-profile-icon {
		width: 46px;
		height: 46px;
		flex-basis: 46px;
		border-radius: 14px;
		font-size: 1.35rem;
	}

	.abha-card-main h2 {
		font-size: 1.3rem;
	}

	.abha-card-main p,
	.abha-card-main > div:nth-child(2) > span {
		font-size: .58rem;
	}

	.abha-card-number {
		gap: 7px;
		margin-top: 22px;
		padding: 12px 10px;
		font-size: .82rem;
	}

	.abha-card-number small {
		font-size: .48rem;
	}

	.abha-visual-tag {
		top: -10px;
		left: -2px;
		font-size: .65rem;
	}

	.abha-floating-icon {
		width: 37px;
		height: 37px;
		border-radius: 12px;
		font-size: 1rem;
	}

	.abha-floating-icon-one {
		top: 43px;
		right: -1px;
	}

	.abha-floating-icon-two {
		right: -4px;
		bottom: 13px;
	}

	.abha-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.abha-trust-items span {
		width: calc(50% - 6px);
		font-size: .74rem;
		text-align: left;
	}

	.abha-about-section,
	.abha-benefits-section,
	.abha-how-section,
	.abha-steps-section,
	.abha-faq-section {
		padding: 58px 0;
	}

	.abha-benefit-grid,
	.abha-steps-grid {
		margin-top: 19px;
	}

	.abha-benefit-card,
	.abha-step-card {
		padding: 23px;
	}

	.abha-how-visual {
		min-height: 315px;
	}

	.abha-how-orbit-one {
		width: 200px;
		height: 200px;
	}

	.abha-how-orbit-two {
		width: 270px;
		height: 270px;
	}

	.abha-how-center {
		width: 88px;
		height: 88px;
	}

	.abha-how-center i {
		font-size: 1.35rem;
	}

	.abha-how-node-one {
		top: 15px;
	}

	.abha-how-node-two {
		right: 9px;
		bottom: 62px;
	}

	.abha-how-node-three {
		bottom: 62px;
		left: 9px;
	}

	.abha-how-node {
		min-width: 83px;
		padding: 8px;
	}

	.abha-how-caption {
		bottom: 12px;
		font-size: .59rem;
	}

	.abha-steps-disclaimer {
		font-size: .75rem;
	}

	.abha-hoziva-section {
		padding: 58px 0;
	}

	.abha-hoziva-points span {
		font-size: .69rem;
	}

	.abha-hoziva-card {
		padding: 23px;
	}

	.abha-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.abha-faq-item p {
		margin-right: 4px;
	}

	.abha-cta-section {
		padding: 45px 0 58px;
	}

	.abha-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.abha-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.abha-cta-contact {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.abha-benefit-card,
	.abha-step-card,
	.abha-button-primary,
	.abha-button-light {
		transition: none;
	}
}

/* PM-JAY information landing page */
.pmjay-page {
	--pmjay-ink: #112344;
	--pmjay-muted: #61718a;
	--pmjay-blue: #175cdd;
	--pmjay-teal: #0b8588;
	--pmjay-line: #e2eaf3;
	overflow: hidden;
	color: var(--pmjay-muted);
}

.pmjay-page h1,
.pmjay-page h2,
.pmjay-page h3 {
	color: var(--pmjay-ink);
}

.pmjay-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .1), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #eff9f8 100%);
}

.pmjay-eyebrow,
.pmjay-section-kicker {
	margin: 0 0 14px;
	color: var(--pmjay-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.pmjay-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.pmjay-hero h1 {
	max-width: 630px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.pmjay-hero h1 span {
	color: var(--pmjay-blue);
}

.pmjay-hero-copy,
.pmjay-section-copy {
	color: var(--pmjay-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.pmjay-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.pmjay-hero-points {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pmjay-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.pmjay-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.pmjay-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.pmjay-button-primary,
.pmjay-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--pmjay-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.pmjay-button-primary:hover,
.pmjay-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.pmjay-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--pmjay-blue);
	font-size: .9rem;
	font-weight: 650;
}

.pmjay-text-link:hover,
.pmjay-text-link:focus {
	color: #104dbf;
}

.pmjay-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.pmjay-hero-note i {
	color: var(--pmjay-teal);
	font-size: 1rem;
}

.pmjay-hero-visual {
	position: relative;
	display: grid;
	min-height: 430px;
	place-items: center;
	max-width: 610px;
	margin-left: auto;
	padding: 20px 22px 39px 0;
}

.pmjay-visual-glow {
	position: absolute;
	width: 330px;
	height: 330px;
	border: 1px solid rgba(23, 92, 221, .09);
	border-radius: 50%;
	background: radial-gradient(circle, rgba(47, 133, 223, .1), rgba(47, 133, 223, 0) 68%);
}

.pmjay-care-card {
	position: relative;
	z-index: 1;
	width: min(100%, 475px);
	padding: 23px;
	border: 1px solid rgba(218, 228, 239, .95);
	border-radius: 23px;
	background:
		radial-gradient(circle at 92% 10%, rgba(23, 92, 221, .08), transparent 35%),
		linear-gradient(145deg, #fff 0%, #f8fbff 100%);
	box-shadow: 0 28px 65px rgba(24, 58, 96, .15);
	transform: rotate(-2deg);
}

.pmjay-care-card-top,
.pmjay-care-card-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.pmjay-care-card-top {
	color: #687990;
	font-size: .7rem;
	font-weight: 700;
}

.pmjay-care-card-top > span,
.pmjay-care-card-footer span {
	display: inline-flex;
	align-items: center;
	gap: 7px;
}

.pmjay-care-card-top > span:first-child i {
	color: var(--pmjay-blue);
	font-size: 1rem;
}

.pmjay-status {
	padding: 7px 9px;
	border: 1px solid #dcefe8;
	border-radius: 50px;
	background: #f2fbf7;
	color: #168660;
	font-size: .64rem;
}

.pmjay-care-illustration {
	display: flex;
	min-height: 185px;
	align-items: center;
	justify-content: center;
	gap: 19px;
	margin-top: 8px;
	border: 1px solid #e8eef6;
	border-radius: 17px;
	background:
		radial-gradient(circle at 50% 45%, rgba(23, 92, 221, .09), transparent 45%),
		linear-gradient(135deg, #f7faff, #f3fbf9);
}

.pmjay-care-person,
.pmjay-care-hospital {
	position: relative;
	display: grid;
	width: 69px;
	height: 69px;
	place-items: center;
	border: 1px solid #d8e6f4;
	border-radius: 21px;
	background: #fff;
	color: var(--pmjay-blue);
	font-size: 2rem;
	box-shadow: 0 12px 24px rgba(24, 58, 96, .1);
}

.pmjay-care-hospital {
	color: var(--pmjay-teal);
}

.pmjay-hospital-cross {
	position: absolute;
	top: -9px;
	right: -8px;
	display: grid;
	width: 25px;
	height: 25px;
	place-items: center;
	border: 2px solid #fff;
	border-radius: 50%;
	background: #e95f5c;
	color: #fff;
	font-size: .75rem;
}

.pmjay-care-connector {
	display: flex;
	align-items: center;
	gap: 5px;
	color: #6c86aa;
	font-size: 1rem;
}

.pmjay-care-connector span {
	width: 13px;
	height: 2px;
	background: #adc5e5;
}

.pmjay-care-card-copy {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-top: 18px;
}

.pmjay-care-card-copy strong {
	display: flex;
	align-items: center;
	gap: 7px;
	color: #243954;
	font-size: .77rem;
}

.pmjay-care-card-copy strong i {
	color: var(--pmjay-teal);
}

.pmjay-care-card-copy > span {
	color: #8290a4;
	font-size: .61rem;
	text-align: right;
}

.pmjay-care-progress {
	height: 5px;
	margin-top: 17px;
	overflow: hidden;
	border-radius: 20px;
	background: #e8eef5;
}

.pmjay-care-progress span {
	display: block;
	width: 68%;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #175cdd, #39b3a0);
}

.pmjay-care-card-footer {
	margin-top: 15px;
	padding-top: 13px;
	border-top: 1px solid #e8edf4;
}

.pmjay-care-card-footer span {
	color: #5e7088;
	font-size: .63rem;
	font-weight: 600;
}

.pmjay-care-card-footer i {
	color: var(--pmjay-teal);
}

.pmjay-floating-badge {
	position: absolute;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .97);
	color: #33445d;
	font-size: .74rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.pmjay-floating-badge i {
	color: var(--pmjay-teal);
}

.pmjay-floating-badge-one {
	top: 15px;
	left: -14px;
}

.pmjay-floating-badge-two {
	right: -1px;
	bottom: 74px;
}

.pmjay-visual-caption {
	position: absolute;
	right: 10px;
	bottom: 5px;
	display: flex;
	align-items: center;
	gap: 7px;
	color: #72839a;
	font-size: .68rem;
}

.pmjay-visual-caption i {
	color: var(--pmjay-blue);
}

.pmjay-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.pmjay-trust-strip p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.pmjay-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.pmjay-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.pmjay-trust-items i {
	color: var(--pmjay-teal);
	font-size: 1rem;
}

.pmjay-overview-section {
	padding: 68px 0;
	background: #fff;
}

.pmjay-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.pmjay-overview-section .pmjay-section-title {
	max-width: 530px;
	margin-bottom: 0;
}

.pmjay-section-copy {
	margin: 0;
}

.pmjay-overview-followup {
	margin-top: 13px;
}

.pmjay-overview-section .pmjay-text-link {
	margin-top: 17px;
}

.pmjay-benefits-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.pmjay-section-heading {
	max-width: 760px;
	margin: 0 auto;
}

.pmjay-section-heading .pmjay-section-title {
	margin-bottom: 13px;
}

.pmjay-benefit-grid {
	margin-top: 28px;
}

.pmjay-benefit-card {
	height: 100%;
	padding: 28px;
	border: 1px solid #e6edf5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 9px 26px rgba(28, 57, 91, .045);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.pmjay-benefit-card:hover {
	transform: translateY(-4px);
	border-color: #d2e2f7;
	box-shadow: 0 16px 34px rgba(28, 57, 91, .09);
}

.pmjay-icon-box {
	display: grid;
	width: 49px;
	height: 49px;
	place-items: center;
	border: 1px solid #dce9fb;
	border-radius: 14px;
	background: #f0f6ff;
	color: var(--pmjay-blue);
	font-size: 1.2rem;
}

.pmjay-benefit-card h3 {
	margin: 20px 0 9px;
	font-size: 1.08rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.pmjay-benefit-card p {
	margin: 0;
	color: var(--pmjay-muted);
	font-size: .87rem;
	line-height: 1.75;
}

.pmjay-benefits-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	margin: 25px 0 0;
	padding: 14px 16px;
	border: 1px solid #dce7f4;
	border-radius: 11px;
	background: #fff;
	color: #5f7189;
	font-size: .8rem;
	line-height: 1.65;
}

.pmjay-benefits-disclaimer i {
	margin-top: 2px;
	color: var(--pmjay-blue);
}

.pmjay-journey-section {
	padding: 82px 0;
	background: #fff;
}

.pmjay-journey-section .pmjay-section-title {
	max-width: 490px;
	margin-bottom: 14px;
}

.pmjay-journey-button {
	margin-top: 23px;
}

.pmjay-journey-list {
	display: grid;
	gap: 0;
}

.pmjay-journey-step {
	position: relative;
	display: flex;
	gap: 19px;
	padding: 0 0 27px;
}

.pmjay-journey-step:not(:last-child)::before {
	position: absolute;
	top: 43px;
	bottom: 0;
	left: 20px;
	width: 1px;
	background: #dce7f3;
	content: "";
}

.pmjay-journey-number {
	position: relative;
	z-index: 1;
	display: grid;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	place-items: center;
	border: 1px solid #dce9fb;
	border-radius: 13px;
	background: #f0f6ff;
	color: var(--pmjay-blue);
	font-size: .76rem;
	font-weight: 750;
}

.pmjay-journey-step h3 {
	margin: 2px 0 6px;
	font-size: 1rem;
	font-weight: 700;
}

.pmjay-journey-step p {
	max-width: 470px;
	margin: 0;
	color: var(--pmjay-muted);
	font-size: .85rem;
	line-height: 1.7;
}

.pmjay-safety-note {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-top: 24px;
	padding: 17px 19px;
	border: 1px solid #dcefe8;
	border-radius: 12px;
	background: #f5fbf8;
}

.pmjay-safety-note > i {
	margin-top: 2px;
	color: #168660;
	font-size: 1.05rem;
}

.pmjay-safety-note p {
	margin: 0;
	color: #506c64;
	font-size: .82rem;
	line-height: 1.65;
}

.pmjay-hospitals-section {
	padding: 5px 0 80px;
	background: #fff;
}

.pmjay-hospitals-panel {
	display: grid;
	grid-template-columns: 70px minmax(0, 1fr);
	gap: 25px;
	padding: 42px;
	border: 1px solid #e3edf7;
	border-radius: 20px;
	background:
		radial-gradient(circle at 95% 10%, rgba(15, 142, 136, .08), transparent 34%),
		linear-gradient(135deg, #f7faff, #f6fbfb);
}

.pmjay-hospitals-icon {
	display: grid;
	width: 65px;
	height: 65px;
	place-items: center;
	border: 1px solid #d4e7f3;
	border-radius: 18px;
	background: #fff;
	color: var(--pmjay-teal);
	font-size: 1.65rem;
	box-shadow: 0 10px 25px rgba(28, 57, 91, .08);
}

.pmjay-hospitals-panel .pmjay-section-title {
	max-width: 700px;
	margin-bottom: 12px;
}

.pmjay-hospitals-panel .pmjay-section-copy {
	max-width: 800px;
}

.pmjay-hospital-points {
	display: flex;
	flex-wrap: wrap;
	gap: 11px 24px;
	margin: 21px 0 18px;
}

.pmjay-hospital-points span {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #455b72;
	font-size: .82rem;
	font-weight: 600;
}

.pmjay-hospital-points i {
	color: var(--pmjay-teal);
}

.pmjay-faq-section {
	padding: 80px 0;
	background: #f5f8fc;
}

.pmjay-faq-section .pmjay-section-title {
	margin-bottom: 13px;
}

.pmjay-faq-section .pmjay-section-copy {
	margin-bottom: 16px;
}

.pmjay-faq-list {
	border-top: 1px solid #dce5ef;
}

.pmjay-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #dce5ef;
}

.pmjay-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--pmjay-ink);
	font-size: .97rem;
	font-weight: 680;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.pmjay-faq-item summary::-webkit-details-marker {
	display: none;
}

.pmjay-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--pmjay-blue);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.pmjay-faq-item[open] summary::after {
	content: "\f2ea";
}

.pmjay-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--pmjay-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.pmjay-cta-section {
	padding: 70px 0 85px;
	background: #fff;
}

.pmjay-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.pmjay-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.pmjay-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.pmjay-cta-panel p:not(.pmjay-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.pmjay-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.pmjay-button-light:hover,
.pmjay-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.pmjay-cta-contact {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
	font-weight: 600;
}

.pmjay-cta-contact:hover,
.pmjay-cta-contact:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.pmjay-hero {
		padding-top: 70px;
	}

	.pmjay-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.pmjay-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.pmjay-hero {
		padding: 55px 0 60px;
	}

	.pmjay-hero h1 {
		font-size: 2.45rem;
	}

	.pmjay-hero-copy {
		font-size: .94rem;
	}

	.pmjay-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.pmjay-button-primary {
		padding: 0 17px;
		font-size: .82rem;
	}

	.pmjay-hero-visual {
		min-height: 365px;
		padding: 0 7px 22px 0;
	}

	.pmjay-care-card {
		padding: 16px;
		border-radius: 18px;
		transform: rotate(-1deg);
	}

	.pmjay-care-card-top {
		font-size: .63rem;
	}

	.pmjay-status {
		padding: 6px 7px;
		font-size: .58rem;
	}

	.pmjay-care-illustration {
		min-height: 155px;
		gap: 13px;
	}

	.pmjay-care-person,
	.pmjay-care-hospital {
		width: 57px;
		height: 57px;
		border-radius: 17px;
		font-size: 1.7rem;
	}

	.pmjay-care-card-copy {
		align-items: flex-start;
		flex-direction: column;
		gap: 4px;
	}

	.pmjay-care-card-copy > span {
		text-align: left;
	}

	.pmjay-care-card-footer span {
		font-size: .56rem;
	}

	.pmjay-floating-badge {
		padding: 9px 11px;
		font-size: .64rem;
	}

	.pmjay-floating-badge-one {
		top: -10px;
		left: -2px;
	}

	.pmjay-floating-badge-two {
		right: -2px;
		bottom: 52px;
	}

	.pmjay-visual-caption {
		right: 0;
		bottom: 2px;
		font-size: .58rem;
	}

	.pmjay-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.pmjay-trust-items span {
		width: calc(50% - 6px);
		font-size: .74rem;
		text-align: left;
	}

	.pmjay-overview-section,
	.pmjay-benefits-section,
	.pmjay-journey-section,
	.pmjay-faq-section {
		padding: 58px 0;
	}

	.pmjay-benefit-grid {
		margin-top: 19px;
	}

	.pmjay-benefit-card {
		padding: 23px;
	}

	.pmjay-hospitals-section {
		padding: 0 0 58px;
	}

	.pmjay-hospitals-panel {
		grid-template-columns: 1fr;
		gap: 18px;
		padding: 25px;
		border-radius: 17px;
	}

	.pmjay-hospitals-icon {
		width: 54px;
		height: 54px;
		border-radius: 15px;
		font-size: 1.4rem;
	}

	.pmjay-hospital-points {
		gap: 10px;
	}

	.pmjay-hospital-points span {
		font-size: .75rem;
	}

	.pmjay-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.pmjay-faq-item p {
		margin-right: 4px;
	}

	.pmjay-cta-section {
		padding: 45px 0 58px;
	}

	.pmjay-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.pmjay-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.pmjay-cta-contact {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pmjay-benefit-card,
	.pmjay-button-primary,
	.pmjay-button-light {
		transition: none;
	}
}

/* Digital Health Incentive Scheme information page */
.dhis-page {
	--dhis-ink: #112344;
	--dhis-muted: #61718a;
	--dhis-blue: #175cdd;
	--dhis-teal: #0b8588;
	--dhis-line: #e2eaf3;
	overflow: hidden;
	color: var(--dhis-muted);
}

.dhis-page h1,
.dhis-page h2,
.dhis-page h3 {
	color: var(--dhis-ink);
}

.dhis-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .1), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #eff9f8 100%);
}

.dhis-eyebrow,
.dhis-section-kicker {
	margin: 0 0 14px;
	color: var(--dhis-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.dhis-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.dhis-hero h1 {
	max-width: 640px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.dhis-hero h1 span {
	color: var(--dhis-blue);
}

.dhis-hero-copy,
.dhis-section-copy {
	color: var(--dhis-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.dhis-hero-copy {
	max-width: 600px;
	margin-bottom: 22px;
}

.dhis-hero-points {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.dhis-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.dhis-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.dhis-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.dhis-button-primary,
.dhis-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--dhis-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.dhis-button-primary:hover,
.dhis-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.dhis-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--dhis-blue);
	font-size: .9rem;
	font-weight: 650;
}

.dhis-text-link:hover,
.dhis-text-link:focus {
	color: #104dbf;
}

.dhis-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.dhis-hero-note i {
	color: var(--dhis-teal);
	font-size: 1rem;
}

.dhis-hero-visual {
	position: relative;
	display: grid;
	min-height: 455px;
	place-items: center;
	max-width: 620px;
	margin-left: auto;
	padding: 18px 20px 36px 0;
}

.dhis-visual-orbit {
	position: absolute;
	border: 1px solid rgba(23, 92, 221, .09);
	border-radius: 50%;
}

.dhis-visual-orbit-one {
	width: 330px;
	height: 330px;
	background: radial-gradient(circle, rgba(47, 133, 223, .1), rgba(47, 133, 223, 0) 68%);
}

.dhis-visual-orbit-two {
	width: 405px;
	height: 405px;
	border-style: dashed;
	border-color: rgba(15, 142, 136, .15);
}

.dhis-dashboard-card {
	position: relative;
	z-index: 1;
	width: min(100%, 485px);
	padding: 21px;
	border: 1px solid rgba(218, 228, 239, .95);
	border-radius: 22px;
	background: linear-gradient(145deg, #fff 0%, #f8fbff 100%);
	box-shadow: 0 28px 65px rgba(24, 58, 96, .15);
	transform: rotate(-1.5deg);
}

.dhis-dashboard-header,
.dhis-dashboard-header > div,
.dhis-dashboard-footer,
.dhis-dashboard-footer span {
	display: flex;
	align-items: center;
}

.dhis-dashboard-header,
.dhis-dashboard-footer {
	justify-content: space-between;
	gap: 10px;
}

.dhis-dashboard-header > div {
	gap: 10px;
}

.dhis-dashboard-icon {
	display: grid;
	width: 39px;
	height: 39px;
	place-items: center;
	border: 1px solid #dce9fb;
	border-radius: 12px;
	background: #f0f6ff;
	color: var(--dhis-blue);
	font-size: 1.05rem;
}

.dhis-dashboard-header strong,
.dhis-dashboard-header small {
	display: block;
}

.dhis-dashboard-header strong {
	color: #233853;
	font-size: .8rem;
}

.dhis-dashboard-header small {
	margin-top: 3px;
	color: #8290a4;
	font-size: .64rem;
}

.dhis-live-pill {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 7px 9px;
	border: 1px solid #dcefe8;
	border-radius: 50px;
	background: #f2fbf7;
	color: #168660;
	font-size: .61rem;
	font-weight: 650;
}

.dhis-live-pill i {
	font-size: .43rem;
}

.dhis-dashboard-metric {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 20px;
	padding: 14px 15px;
	border: 1px solid #e7eef6;
	border-radius: 13px;
	background: #fff;
}

.dhis-dashboard-metric > div:first-child > span,
.dhis-dashboard-metric strong,
.dhis-dashboard-metric small {
	display: block;
}

.dhis-dashboard-metric > div:first-child > span {
	color: #718198;
	font-size: .65rem;
}

.dhis-dashboard-metric strong {
	margin-top: 4px;
	color: #243954;
	font-size: 1.05rem;
	font-weight: 750;
	letter-spacing: -.02em;
}

.dhis-dashboard-metric small {
	margin-top: 3px;
	color: #8a98aa;
	font-size: .57rem;
}

.dhis-metric-icon {
	display: grid;
	width: 39px;
	height: 39px;
	flex: 0 0 39px;
	place-items: center;
	border-radius: 12px;
	background: #eef8f6;
	color: var(--dhis-teal);
	font-size: 1rem;
}

.dhis-workflow-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-top: 19px;
}

.dhis-workflow-title strong {
	color: #31445e;
	font-size: .72rem;
}

.dhis-workflow-title span {
	color: #8795a8;
	font-size: .61rem;
}

.dhis-chart {
	position: relative;
	height: 115px;
	margin-top: 11px;
	overflow: hidden;
	border: 1px solid #eaf0f6;
	border-radius: 12px;
	background: #fbfdff;
}

.dhis-chart-grid {
	position: absolute;
	inset: 10px 10px 25px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.dhis-chart-grid span {
	border-top: 1px dashed #e5edf5;
}

.dhis-chart-bars {
	position: absolute;
	inset: 12px 18px 27px;
	display: flex;
	align-items: flex-end;
	justify-content: space-around;
	gap: 9px;
}

.dhis-chart-bars i {
	width: 7%;
	height: var(--dhis-bar-height);
	border-radius: 5px 5px 2px 2px;
	background: linear-gradient(180deg, #53c1aa, #1d76d8);
	opacity: .86;
}

.dhis-chart-bars i:nth-child(3n + 2) {
	background: linear-gradient(180deg, #85d5c0, #4d9be0);
	opacity: .7;
}

.dhis-chart-labels {
	position: absolute;
	right: 13px;
	bottom: 7px;
	left: 13px;
	display: flex;
	justify-content: space-between;
	color: #8896a9;
	font-size: .53rem;
}

.dhis-dashboard-footer {
	margin-top: 14px;
	padding-top: 12px;
	border-top: 1px solid #e8edf4;
}

.dhis-dashboard-footer span {
	gap: 6px;
	color: #5e7088;
	font-size: .6rem;
	font-weight: 600;
}

.dhis-dashboard-footer i {
	color: var(--dhis-teal);
	font-size: .8rem;
}

.dhis-floating-card {
	position: absolute;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .97);
	color: #33445d;
	font-size: .73rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.dhis-floating-card i {
	color: var(--dhis-teal);
}

.dhis-floating-card-one {
	top: 24px;
	left: -12px;
}

.dhis-floating-card-two {
	right: -4px;
	bottom: 74px;
}

.dhis-visual-caption {
	position: absolute;
	right: 9px;
	bottom: 3px;
	display: flex;
	align-items: center;
	gap: 7px;
	margin: 0;
	color: #72839a;
	font-size: .65rem;
}

.dhis-visual-caption i {
	color: var(--dhis-blue);
}

.dhis-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.dhis-trust-strip p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.dhis-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.dhis-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.dhis-trust-items i {
	color: var(--dhis-teal);
	font-size: 1rem;
}

.dhis-overview-section {
	padding: 68px 0;
	background: #fff;
}

.dhis-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.dhis-overview-section .dhis-section-title {
	max-width: 530px;
	margin-bottom: 0;
}

.dhis-section-copy {
	margin: 0;
}

.dhis-overview-followup {
	margin-top: 13px;
}

.dhis-overview-section .dhis-text-link {
	margin-top: 17px;
}

.dhis-purpose-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.dhis-section-heading {
	max-width: 760px;
	margin: 0 auto;
}

.dhis-section-heading .dhis-section-title {
	margin-bottom: 13px;
}

.dhis-purpose-grid {
	margin-top: 28px;
}

.dhis-purpose-card {
	height: 100%;
	padding: 28px;
	border: 1px solid #e6edf5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 9px 26px rgba(28, 57, 91, .045);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.dhis-purpose-card:hover {
	transform: translateY(-4px);
	border-color: #d2e2f7;
	box-shadow: 0 16px 34px rgba(28, 57, 91, .09);
}

.dhis-icon-box {
	display: grid;
	width: 49px;
	height: 49px;
	place-items: center;
	border: 1px solid #dce9fb;
	border-radius: 14px;
	background: #f0f6ff;
	color: var(--dhis-blue);
	font-size: 1.2rem;
}

.dhis-purpose-card h3 {
	margin: 20px 0 9px;
	font-size: 1.08rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.dhis-purpose-card p {
	margin: 0;
	color: var(--dhis-muted);
	font-size: .87rem;
	line-height: 1.75;
}

.dhis-participants-section {
	padding: 82px 0;
	background: #fff;
}

.dhis-participants-section > .container > .row .dhis-section-title {
	max-width: 490px;
	margin-bottom: 14px;
}

.dhis-participants-button {
	margin-top: 23px;
}

.dhis-participant-list {
	display: grid;
	gap: 0;
}

.dhis-participant-step {
	position: relative;
	display: flex;
	gap: 19px;
	padding: 0 0 27px;
}

.dhis-participant-step:not(:last-child)::before {
	position: absolute;
	top: 43px;
	bottom: 0;
	left: 20px;
	width: 1px;
	background: #dce7f3;
	content: "";
}

.dhis-step-number {
	position: relative;
	z-index: 1;
	display: grid;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	place-items: center;
	border: 1px solid #dce9fb;
	border-radius: 13px;
	background: #f0f6ff;
	color: var(--dhis-blue);
	font-size: .76rem;
	font-weight: 750;
}

.dhis-participant-step h3 {
	margin: 2px 0 6px;
	font-size: 1rem;
	font-weight: 700;
}

.dhis-participant-step p {
	max-width: 470px;
	margin: 0;
	color: var(--dhis-muted);
	font-size: .85rem;
	line-height: 1.7;
}

.dhis-guidance-note {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-top: 24px;
	padding: 17px 19px;
	border: 1px solid #f1e3c9;
	border-radius: 12px;
	background: #fffaf1;
}

.dhis-guidance-note > i {
	margin-top: 2px;
	color: #ac7412;
	font-size: 1.05rem;
}

.dhis-guidance-note p {
	margin: 0;
	color: #715d37;
	font-size: .82rem;
	line-height: 1.65;
}

.dhis-hoziva-section {
	padding: 0 0 80px;
	background: #fff;
}

.dhis-hoziva-panel {
	display: grid;
	grid-template-columns: 70px minmax(0, 1fr);
	gap: 25px;
	padding: 42px;
	border: 1px solid #e3edf7;
	border-radius: 20px;
	background:
		radial-gradient(circle at 95% 10%, rgba(15, 142, 136, .08), transparent 34%),
		linear-gradient(135deg, #f7faff, #f6fbfb);
}

.dhis-hoziva-icon {
	display: grid;
	width: 65px;
	height: 65px;
	place-items: center;
	border: 1px solid #d4e7f3;
	border-radius: 18px;
	background: #fff;
	color: var(--dhis-teal);
	font-size: 1.65rem;
	box-shadow: 0 10px 25px rgba(28, 57, 91, .08);
}

.dhis-hoziva-panel .dhis-section-title {
	max-width: 700px;
	margin-bottom: 12px;
}

.dhis-hoziva-panel .dhis-section-copy {
	max-width: 800px;
}

.dhis-hoziva-points {
	display: flex;
	flex-wrap: wrap;
	gap: 11px 24px;
	margin: 21px 0 18px;
}

.dhis-hoziva-points span {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #455b72;
	font-size: .82rem;
	font-weight: 600;
}

.dhis-hoziva-points i {
	color: var(--dhis-teal);
}

.dhis-faq-section {
	padding: 80px 0;
	background: #f5f8fc;
}

.dhis-faq-section .dhis-section-title {
	margin-bottom: 13px;
}

.dhis-faq-section .dhis-section-copy {
	margin-bottom: 16px;
}

.dhis-faq-list {
	border-top: 1px solid #dce5ef;
}

.dhis-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #dce5ef;
}

.dhis-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--dhis-ink);
	font-size: .97rem;
	font-weight: 680;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.dhis-faq-item summary::-webkit-details-marker {
	display: none;
}

.dhis-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--dhis-blue);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.dhis-faq-item[open] summary::after {
	content: "\f2ea";
}

.dhis-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--dhis-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.dhis-cta-section {
	padding: 70px 0 85px;
	background: #fff;
}

.dhis-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.dhis-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.dhis-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.dhis-cta-panel p:not(.dhis-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.dhis-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.dhis-button-light:hover,
.dhis-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.dhis-cta-contact {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
	font-weight: 600;
}

.dhis-cta-contact:hover,
.dhis-cta-contact:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.dhis-hero {
		padding-top: 70px;
	}

	.dhis-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.dhis-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.dhis-hero {
		padding: 55px 0 60px;
	}

	.dhis-hero h1 {
		font-size: 2.45rem;
	}

	.dhis-hero-copy {
		font-size: .94rem;
	}

	.dhis-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.dhis-button-primary {
		padding: 0 17px;
		font-size: .82rem;
	}

	.dhis-hero-visual {
		min-height: 390px;
		padding: 0 7px 21px 0;
	}

	.dhis-visual-orbit-one {
		width: 250px;
		height: 250px;
	}

	.dhis-visual-orbit-two {
		width: 315px;
		height: 315px;
	}

	.dhis-dashboard-card {
		padding: 15px;
		border-radius: 18px;
		transform: rotate(-.7deg);
	}

	.dhis-dashboard-header strong {
		font-size: .73rem;
	}

	.dhis-dashboard-header small,
	.dhis-dashboard-metric small {
		font-size: .54rem;
	}

	.dhis-live-pill {
		padding: 6px 7px;
		font-size: .55rem;
	}

	.dhis-dashboard-metric {
		margin-top: 15px;
		padding: 11px;
	}

	.dhis-dashboard-metric strong {
		font-size: .95rem;
	}

	.dhis-chart {
		height: 103px;
	}

	.dhis-dashboard-footer span {
		font-size: .54rem;
	}

	.dhis-floating-card {
		padding: 9px 11px;
		font-size: .62rem;
	}

	.dhis-floating-card-one {
		top: -9px;
		left: -2px;
	}

	.dhis-floating-card-two {
		right: -2px;
		bottom: 45px;
	}

	.dhis-visual-caption {
		right: 0;
		bottom: 0;
		font-size: .55rem;
	}

	.dhis-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.dhis-trust-items span {
		width: calc(50% - 6px);
		font-size: .74rem;
		text-align: left;
	}

	.dhis-overview-section,
	.dhis-purpose-section,
	.dhis-participants-section,
	.dhis-faq-section {
		padding: 58px 0;
	}

	.dhis-purpose-grid {
		margin-top: 19px;
	}

	.dhis-purpose-card {
		padding: 23px;
	}

	.dhis-hoziva-section {
		padding-bottom: 58px;
	}

	.dhis-hoziva-panel {
		grid-template-columns: 1fr;
		gap: 18px;
		padding: 25px;
		border-radius: 17px;
	}

	.dhis-hoziva-icon {
		width: 54px;
		height: 54px;
		border-radius: 15px;
		font-size: 1.4rem;
	}

	.dhis-hoziva-points {
		gap: 10px;
	}

	.dhis-hoziva-points span {
		font-size: .75rem;
	}

	.dhis-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.dhis-faq-item p {
		margin-right: 4px;
	}

	.dhis-cta-section {
		padding: 45px 0 58px;
	}

	.dhis-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.dhis-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.dhis-cta-contact {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.dhis-purpose-card,
	.dhis-button-primary,
	.dhis-button-light {
		transition: none;
	}
}

/* Family medicine EMR landing page */
.familymed-page {
	--familymed-ink: #112344;
	--familymed-muted: #61718a;
	--familymed-blue: #175cdd;
	--familymed-teal: #0b8588;
	--familymed-line: #e2eaf3;
	overflow: hidden;
	color: var(--familymed-muted);
}

.familymed-page h1,
.familymed-page h2,
.familymed-page h3 {
	color: var(--familymed-ink);
}

.familymed-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .1), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #eff9f8 100%);
}

.familymed-eyebrow,
.familymed-section-kicker {
	margin: 0 0 14px;
	color: var(--familymed-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.familymed-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.familymed-hero h1 {
	max-width: 640px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.familymed-hero h1 span {
	color: var(--familymed-blue);
}

.familymed-hero-copy,
.familymed-section-copy {
	color: var(--familymed-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.familymed-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.familymed-hero-points,
.familymed-care-points {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.familymed-hero-points li,
.familymed-care-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.familymed-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.familymed-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.familymed-button-primary,
.familymed-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--familymed-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.familymed-button-primary:hover,
.familymed-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.familymed-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--familymed-blue);
	font-size: .9rem;
	font-weight: 650;
}

.familymed-text-link:hover,
.familymed-text-link:focus {
	color: #104dbf;
}

.familymed-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.familymed-hero-note i {
	color: var(--familymed-teal);
	font-size: 1rem;
}

.familymed-hero-visual {
	position: relative;
	display: grid;
	min-height: 455px;
	place-items: center;
	max-width: 600px;
	margin-left: auto;
	padding: 12px 25px 28px 0;
}

.familymed-hero-photo {
	position: relative;
	width: min(100%, 455px);
	height: 385px;
	overflow: hidden;
	border: 7px solid #fff;
	border-radius: 27px;
	background: #eaf2f8;
	box-shadow: 0 28px 65px rgba(24, 58, 96, .16);
	transform: rotate(1.5deg);
}

.familymed-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.familymed-photo-shade {
	position: absolute;
	inset: 35% 0 0;
	background: linear-gradient(180deg, transparent, rgba(11, 34, 55, .72));
}

.familymed-photo-caption {
	position: absolute;
	right: 17px;
	bottom: 17px;
	left: 17px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 14px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 10px 24px rgba(12, 30, 53, .14);
}

.familymed-photo-icon {
	display: grid;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	place-items: center;
	border-radius: 12px;
	background: #edf4ff;
	color: var(--familymed-blue);
	font-size: 1.1rem;
}

.familymed-photo-caption strong,
.familymed-photo-caption small {
	display: block;
}

.familymed-photo-caption strong {
	color: #233853;
	font-size: .77rem;
}

.familymed-photo-caption small {
	margin-top: 3px;
	color: #78879b;
	font-size: .65rem;
}

.familymed-visit-card {
	position: absolute;
	right: -4px;
	bottom: 64px;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 13px 15px;
	border: 1px solid #e4ebf3;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 15px 35px rgba(24, 52, 88, .14);
}

.familymed-visit-icon {
	display: grid;
	width: 40px;
	height: 40px;
	place-items: center;
	border-radius: 12px;
	background: #eff8f5;
	color: #168660;
	font-size: 1.05rem;
}

.familymed-visit-card strong,
.familymed-visit-card span {
	display: block;
}

.familymed-visit-card strong {
	color: #273b55;
	font-size: .76rem;
}

.familymed-visit-card span {
	margin-top: 3px;
	color: #8492a5;
	font-size: .61rem;
}

.familymed-visit-arrow {
	margin-left: 5px;
	color: var(--familymed-blue);
	font-size: .85rem;
}

.familymed-floating-pill {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .97);
	color: #33445d;
	font-size: .73rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.familymed-floating-pill i {
	color: var(--familymed-teal);
}

.familymed-pill-one {
	top: 28px;
	left: -8px;
}

.familymed-pill-two {
	right: 7px;
	bottom: 18px;
}

.familymed-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.familymed-trust-strip > .container > p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.familymed-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.familymed-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.familymed-trust-items i {
	color: var(--familymed-teal);
	font-size: 1rem;
}

.familymed-overview-section {
	padding: 68px 0;
	background: #fff;
}

.familymed-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.familymed-overview-section .familymed-section-title {
	max-width: 530px;
	margin-bottom: 0;
}

.familymed-section-copy {
	margin: 0;
}

.familymed-overview-followup {
	margin-top: 13px;
}

.familymed-overview-section .familymed-text-link {
	margin-top: 17px;
}

.familymed-features-section,
.familymed-workflow-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.familymed-section-heading {
	max-width: 760px;
	margin: 0 auto;
}

.familymed-section-heading .familymed-section-title {
	margin-bottom: 13px;
}

.familymed-feature-grid {
	margin-top: 28px;
}

.familymed-feature-card {
	height: 100%;
	padding: 28px;
	border: 1px solid #e6edf5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 9px 26px rgba(28, 57, 91, .045);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.familymed-feature-card:hover {
	transform: translateY(-4px);
	border-color: #d2e2f7;
	box-shadow: 0 16px 34px rgba(28, 57, 91, .09);
}

.familymed-icon-box {
	display: grid;
	width: 49px;
	height: 49px;
	place-items: center;
	border: 1px solid #dce9fb;
	border-radius: 14px;
	background: #f0f6ff;
	color: var(--familymed-blue);
	font-size: 1.2rem;
}

.familymed-feature-card h3,
.familymed-workflow-card h3 {
	margin: 20px 0 9px;
	font-size: 1.08rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.familymed-feature-card p,
.familymed-workflow-card p {
	margin: 0;
	color: var(--familymed-muted);
	font-size: .87rem;
	line-height: 1.75;
}

.familymed-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 17px;
	color: var(--familymed-blue);
	font-size: .81rem;
	font-weight: 650;
}

.familymed-feature-card > a:hover {
	color: #104dbf;
}

.familymed-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 17px;
}

.familymed-feature-tags span {
	padding: 6px 9px;
	border: 1px solid #e4ebf3;
	border-radius: 50px;
	background: #f8fafc;
	color: #64758b;
	font-size: .63rem;
	font-weight: 600;
}

.familymed-care-section {
	padding: 82px 0;
	background: #fff;
}

.familymed-care-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 27px 0;
}

.familymed-care-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 22px;
	object-fit: cover;
	box-shadow: 0 22px 50px rgba(24, 58, 96, .14);
}

.familymed-care-image-label {
	position: absolute;
	right: 8px;
	bottom: 4px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid #e3edf5;
	border-radius: 50px;
	background: #fff;
	color: #41566f;
	font-size: .72rem;
	font-weight: 650;
	box-shadow: 0 10px 26px rgba(24, 52, 88, .1);
}

.familymed-care-image-label i {
	color: var(--familymed-teal);
}

.familymed-care-stat {
	position: absolute;
	top: 21px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 15px;
	border: 1px solid #e5edf5;
	border-radius: 14px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 12px 28px rgba(24, 52, 88, .11);
}

.familymed-care-stat > i {
	color: var(--familymed-blue);
	font-size: 1.2rem;
}

.familymed-care-stat strong,
.familymed-care-stat small {
	display: block;
}

.familymed-care-stat strong {
	color: #293e58;
	font-size: .75rem;
}

.familymed-care-stat small {
	margin-top: 3px;
	color: #7d8ca0;
	font-size: .62rem;
}

.familymed-care-section .familymed-section-title {
	margin-bottom: 13px;
}

.familymed-care-points {
	margin-top: 21px;
}

.familymed-care-points li {
	font-size: .86rem;
}

.familymed-care-points i {
	margin-top: 2px;
	color: #168660;
}

.familymed-care-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 21px 0 0;
	padding: 12px 14px;
	border: 1px solid #e3eaf3;
	border-radius: 10px;
	background: #f8fafc;
	color: #687990;
	font-size: .76rem;
	line-height: 1.65;
}

.familymed-care-disclaimer i {
	margin-top: 2px;
	color: var(--familymed-blue);
}

.familymed-workflow-section {
	background: #f5f8fc;
}

.familymed-workflow-grid {
	margin-top: 29px;
}

.familymed-workflow-card {
	position: relative;
	height: 100%;
	padding: 25px 23px;
	border: 1px solid #e4ebf3;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(28, 57, 91, .04);
}

.familymed-workflow-number {
	position: absolute;
	top: 24px;
	right: 22px;
	color: #b4c0cf;
	font-size: .76rem;
	font-weight: 750;
	letter-spacing: .06em;
}

.familymed-workflow-card .familymed-icon-box {
	width: 44px;
	height: 44px;
	border-radius: 13px;
	font-size: 1.08rem;
}

.familymed-workflow-card h3 {
	margin-top: 17px;
}

.familymed-faq-section {
	padding: 80px 0;
	background: #fff;
}

.familymed-faq-section .familymed-section-title {
	margin-bottom: 13px;
}

.familymed-faq-section .familymed-section-copy {
	margin-bottom: 16px;
}

.familymed-faq-list {
	border-top: 1px solid #dce5ef;
}

.familymed-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #dce5ef;
}

.familymed-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--familymed-ink);
	font-size: .97rem;
	font-weight: 680;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.familymed-faq-item summary::-webkit-details-marker {
	display: none;
}

.familymed-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--familymed-blue);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.familymed-faq-item[open] summary::after {
	content: "\f2ea";
}

.familymed-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--familymed-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.familymed-cta-section {
	padding: 70px 0 85px;
	background: #f5f8fc;
}

.familymed-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.familymed-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.familymed-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.familymed-cta-panel p:not(.familymed-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.familymed-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.familymed-button-light:hover,
.familymed-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.familymed-cta-contact {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
	font-weight: 600;
}

.familymed-cta-contact:hover,
.familymed-cta-contact:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.familymed-hero {
		padding-top: 70px;
	}

	.familymed-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.familymed-care-visual {
		max-width: 700px;
	}

	.familymed-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.familymed-hero {
		padding: 55px 0 60px;
	}

	.familymed-hero h1 {
		font-size: 2.45rem;
	}

	.familymed-hero-copy {
		font-size: .94rem;
	}

	.familymed-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.familymed-button-primary {
		padding: 0 17px;
		font-size: .82rem;
	}

	.familymed-hero-visual {
		min-height: 370px;
		padding: 0 7px 24px 0;
	}

	.familymed-hero-photo {
		height: 315px;
		border-width: 5px;
		border-radius: 20px;
	}

	.familymed-photo-caption {
		right: 9px;
		bottom: 9px;
		left: 9px;
		gap: 8px;
		padding: 10px;
	}

	.familymed-photo-caption strong {
		font-size: .68rem;
	}

	.familymed-photo-caption small {
		font-size: .58rem;
	}

	.familymed-photo-icon {
		width: 34px;
		height: 34px;
		flex-basis: 34px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.familymed-visit-card {
		right: -1px;
		bottom: 41px;
		gap: 8px;
		padding: 10px;
	}

	.familymed-visit-icon {
		width: 34px;
		height: 34px;
		border-radius: 10px;
		font-size: .9rem;
	}

	.familymed-visit-card strong {
		font-size: .68rem;
	}

	.familymed-visit-card span {
		font-size: .54rem;
	}

	.familymed-floating-pill {
		padding: 9px 11px;
		font-size: .61rem;
	}

	.familymed-pill-one {
		top: -9px;
		left: -2px;
	}

	.familymed-pill-two {
		right: -1px;
		bottom: 7px;
	}

	.familymed-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.familymed-trust-items span {
		width: calc(50% - 6px);
		font-size: .74rem;
		text-align: left;
	}

	.familymed-overview-section,
	.familymed-features-section,
	.familymed-care-section,
	.familymed-workflow-section,
	.familymed-faq-section {
		padding: 58px 0;
	}

	.familymed-feature-grid,
	.familymed-workflow-grid {
		margin-top: 19px;
	}

	.familymed-feature-card {
		padding: 23px;
	}

	.familymed-care-visual {
		min-height: 305px;
		padding: 0 14px 23px 0;
	}

	.familymed-care-visual > img {
		height: 285px;
		border-radius: 17px;
	}

	.familymed-care-stat {
		top: 12px;
		left: -3px;
		gap: 7px;
		padding: 9px 11px;
	}

	.familymed-care-stat > i {
		font-size: 1rem;
	}

	.familymed-care-stat strong {
		font-size: .67rem;
	}

	.familymed-care-stat small {
		font-size: .55rem;
	}

	.familymed-care-image-label {
		right: 0;
		bottom: 4px;
		padding: 9px 11px;
		font-size: .62rem;
	}

	.familymed-workflow-card {
		padding: 22px;
	}

	.familymed-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.familymed-faq-item p {
		margin-right: 4px;
	}

	.familymed-cta-section {
		padding: 45px 0 58px;
	}

	.familymed-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.familymed-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.familymed-cta-contact {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.familymed-feature-card,
	.familymed-button-primary,
	.familymed-button-light {
		transition: none;
	}
}

/* Dermatology EMR landing page */
.derm-page {
	--derm-ink: #112344;
	--derm-muted: #61718a;
	--derm-blue: #175cdd;
	--derm-teal: #0b8588;
	--derm-line: #e2eaf3;
	overflow: hidden;
	color: var(--derm-muted);
}

.derm-page h1,
.derm-page h2,
.derm-page h3 {
	color: var(--derm-ink);
}

.derm-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .1), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #eff9f8 100%);
}

.derm-eyebrow,
.derm-section-kicker {
	margin: 0 0 14px;
	color: var(--derm-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.derm-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.derm-hero h1 {
	max-width: 640px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.derm-hero h1 span {
	color: var(--derm-blue);
}

.derm-hero-copy,
.derm-section-copy {
	color: var(--derm-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.derm-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.derm-hero-points,
.derm-image-points {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.derm-hero-points li,
.derm-image-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.derm-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.derm-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.derm-button-primary,
.derm-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--derm-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.derm-button-primary:hover,
.derm-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.derm-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--derm-blue);
	font-size: .9rem;
	font-weight: 650;
}

.derm-text-link:hover,
.derm-text-link:focus {
	color: #104dbf;
}

.derm-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.derm-hero-note i {
	color: var(--derm-teal);
	font-size: 1rem;
}

.derm-hero-visual {
	position: relative;
	display: grid;
	min-height: 455px;
	place-items: center;
	max-width: 600px;
	margin-left: auto;
	padding: 12px 25px 27px 0;
}

.derm-hero-photo {
	position: relative;
	width: min(100%, 455px);
	height: 385px;
	overflow: hidden;
	border: 7px solid #fff;
	border-radius: 27px;
	background: #eaf2f8;
	box-shadow: 0 28px 65px rgba(24, 58, 96, .16);
	transform: rotate(1.5deg);
}

.derm-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.derm-photo-shade {
	position: absolute;
	inset: 35% 0 0;
	background: linear-gradient(180deg, transparent, rgba(11, 34, 55, .72));
}

.derm-photo-caption {
	position: absolute;
	right: 17px;
	bottom: 17px;
	left: 17px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 14px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 10px 24px rgba(12, 30, 53, .14);
}

.derm-photo-icon {
	display: grid;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	place-items: center;
	border-radius: 12px;
	background: #edf4ff;
	color: var(--derm-blue);
	font-size: 1.1rem;
}

.derm-photo-caption strong,
.derm-photo-caption small {
	display: block;
}

.derm-photo-caption strong {
	color: #233853;
	font-size: .77rem;
}

.derm-photo-caption small {
	margin-top: 3px;
	color: #78879b;
	font-size: .65rem;
}

.derm-record-card {
	position: absolute;
	right: -3px;
	bottom: 66px;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border: 1px solid #e4ebf3;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 15px 35px rgba(24, 52, 88, .14);
}

.derm-record-avatar {
	display: grid;
	width: 39px;
	height: 39px;
	place-items: center;
	border-radius: 12px;
	background: #eff8f5;
	color: #168660;
	font-size: 1.1rem;
}

.derm-record-card strong,
.derm-record-card span:not(.derm-record-check) {
	display: block;
}

.derm-record-card strong {
	color: #273b55;
	font-size: .75rem;
}

.derm-record-card span:not(.derm-record-check) {
	margin-top: 3px;
	color: #8492a5;
	font-size: .61rem;
}

.derm-record-check {
	display: grid;
	width: 23px;
	height: 23px;
	place-items: center;
	border-radius: 50%;
	background: #eaf7f1;
	color: #168660;
	font-size: .78rem;
}

.derm-floating-pill {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .97);
	color: #33445d;
	font-size: .73rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.derm-floating-pill i {
	color: var(--derm-teal);
}

.derm-pill-one {
	top: 28px;
	left: -8px;
}

.derm-pill-two {
	right: 7px;
	bottom: 19px;
}

.derm-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.derm-trust-strip > .container > p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.derm-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.derm-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.derm-trust-items i {
	color: var(--derm-teal);
	font-size: 1rem;
}

.derm-overview-section {
	padding: 68px 0;
	background: #fff;
}

.derm-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.derm-overview-section .derm-section-title {
	max-width: 530px;
	margin-bottom: 0;
}

.derm-section-copy {
	margin: 0;
}

.derm-overview-followup {
	margin-top: 13px;
}

.derm-overview-section .derm-text-link {
	margin-top: 17px;
}

.derm-features-section,
.derm-workflow-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.derm-section-heading {
	max-width: 760px;
	margin: 0 auto;
}

.derm-section-heading .derm-section-title {
	margin-bottom: 13px;
}

.derm-feature-grid {
	margin-top: 28px;
}

.derm-feature-card {
	height: 100%;
	padding: 28px;
	border: 1px solid #e6edf5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 9px 26px rgba(28, 57, 91, .045);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.derm-feature-card:hover {
	transform: translateY(-4px);
	border-color: #d2e2f7;
	box-shadow: 0 16px 34px rgba(28, 57, 91, .09);
}

.derm-icon-box {
	display: grid;
	width: 49px;
	height: 49px;
	place-items: center;
	border: 1px solid #dce9fb;
	border-radius: 14px;
	background: #f0f6ff;
	color: var(--derm-blue);
	font-size: 1.2rem;
}

.derm-feature-card h3,
.derm-workflow-card h3 {
	margin: 20px 0 9px;
	font-size: 1.08rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.derm-feature-card p,
.derm-workflow-card p {
	margin: 0;
	color: var(--derm-muted);
	font-size: .87rem;
	line-height: 1.75;
}

.derm-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 17px;
	color: var(--derm-blue);
	font-size: .81rem;
	font-weight: 650;
}

.derm-feature-card > a:hover {
	color: #104dbf;
}

.derm-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 17px;
}

.derm-feature-tags span {
	padding: 6px 9px;
	border: 1px solid #e4ebf3;
	border-radius: 50px;
	background: #f8fafc;
	color: #64758b;
	font-size: .63rem;
	font-weight: 600;
}

.derm-images-section {
	padding: 82px 0;
	background: #fff;
}

.derm-images-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 27px 0;
}

.derm-images-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 22px;
	object-fit: cover;
	box-shadow: 0 22px 50px rgba(24, 58, 96, .14);
}

.derm-image-note {
	position: absolute;
	right: 8px;
	bottom: 4px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid #e3edf5;
	border-radius: 50px;
	background: #fff;
	color: #41566f;
	font-size: .72rem;
	font-weight: 650;
	box-shadow: 0 10px 26px rgba(24, 52, 88, .1);
}

.derm-image-note i {
	color: var(--derm-teal);
}

.derm-image-floating {
	position: absolute;
	top: 21px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 15px;
	border: 1px solid #e5edf5;
	border-radius: 14px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 12px 28px rgba(24, 52, 88, .11);
}

.derm-image-floating > i {
	color: var(--derm-blue);
	font-size: 1.2rem;
}

.derm-image-floating strong,
.derm-image-floating small {
	display: block;
}

.derm-image-floating strong {
	color: #293e58;
	font-size: .75rem;
}

.derm-image-floating small {
	margin-top: 3px;
	color: #7d8ca0;
	font-size: .62rem;
}

.derm-images-section .derm-section-title {
	margin-bottom: 13px;
}

.derm-image-points {
	margin-top: 21px;
}

.derm-image-points li {
	font-size: .86rem;
}

.derm-image-points i {
	margin-top: 2px;
	color: #168660;
}

.derm-image-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 21px 0 0;
	padding: 12px 14px;
	border: 1px solid #e3eaf3;
	border-radius: 10px;
	background: #f8fafc;
	color: #687990;
	font-size: .76rem;
	line-height: 1.65;
}

.derm-image-disclaimer i {
	margin-top: 2px;
	color: var(--derm-blue);
}

.derm-workflow-grid {
	margin-top: 29px;
}

.derm-workflow-card {
	position: relative;
	height: 100%;
	padding: 25px 23px;
	border: 1px solid #e4ebf3;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(28, 57, 91, .04);
}

.derm-workflow-number {
	position: absolute;
	top: 24px;
	right: 22px;
	color: #b4c0cf;
	font-size: .76rem;
	font-weight: 750;
	letter-spacing: .06em;
}

.derm-workflow-card .derm-icon-box {
	width: 44px;
	height: 44px;
	border-radius: 13px;
	font-size: 1.08rem;
}

.derm-workflow-card h3 {
	margin-top: 17px;
}

.derm-faq-section {
	padding: 80px 0;
	background: #fff;
}

.derm-faq-section .derm-section-title {
	margin-bottom: 13px;
}

.derm-faq-section .derm-section-copy {
	margin-bottom: 16px;
}

.derm-faq-list {
	border-top: 1px solid #dce5ef;
}

.derm-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #dce5ef;
}

.derm-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--derm-ink);
	font-size: .97rem;
	font-weight: 680;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.derm-faq-item summary::-webkit-details-marker {
	display: none;
}

.derm-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--derm-blue);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.derm-faq-item[open] summary::after {
	content: "\f2ea";
}

.derm-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--derm-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.derm-cta-section {
	padding: 70px 0 85px;
	background: #f5f8fc;
}

.derm-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.derm-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.derm-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.derm-cta-panel p:not(.derm-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.derm-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.derm-button-light:hover,
.derm-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.derm-cta-contact {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
	font-weight: 600;
}

.derm-cta-contact:hover,
.derm-cta-contact:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.derm-hero {
		padding-top: 70px;
	}

	.derm-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.derm-images-visual {
		max-width: 700px;
	}

	.derm-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.derm-hero {
		padding: 55px 0 60px;
	}

	.derm-hero h1 {
		font-size: 2.45rem;
	}

	.derm-hero-copy {
		font-size: .94rem;
	}

	.derm-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.derm-button-primary {
		padding: 0 17px;
		font-size: .82rem;
	}

	.derm-hero-visual {
		min-height: 370px;
		padding: 0 7px 24px 0;
	}

	.derm-hero-photo {
		height: 315px;
		border-width: 5px;
		border-radius: 20px;
	}

	.derm-photo-caption {
		right: 9px;
		bottom: 9px;
		left: 9px;
		gap: 8px;
		padding: 10px;
	}

	.derm-photo-caption strong {
		font-size: .68rem;
	}

	.derm-photo-caption small {
		font-size: .58rem;
	}

	.derm-photo-icon {
		width: 34px;
		height: 34px;
		flex-basis: 34px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.derm-record-card {
		right: -1px;
		bottom: 42px;
		gap: 7px;
		padding: 9px;
	}

	.derm-record-avatar {
		width: 33px;
		height: 33px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.derm-record-card strong {
		font-size: .67rem;
	}

	.derm-record-card span:not(.derm-record-check) {
		font-size: .53rem;
	}

	.derm-record-check {
		width: 20px;
		height: 20px;
		font-size: .68rem;
	}

	.derm-floating-pill {
		padding: 9px 11px;
		font-size: .61rem;
	}

	.derm-pill-one {
		top: -9px;
		left: -2px;
	}

	.derm-pill-two {
		right: -1px;
		bottom: 7px;
	}

	.derm-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.derm-trust-items span {
		width: calc(50% - 6px);
		font-size: .74rem;
		text-align: left;
	}

	.derm-overview-section,
	.derm-features-section,
	.derm-images-section,
	.derm-workflow-section,
	.derm-faq-section {
		padding: 58px 0;
	}

	.derm-feature-grid,
	.derm-workflow-grid {
		margin-top: 19px;
	}

	.derm-feature-card {
		padding: 23px;
	}

	.derm-images-visual {
		min-height: 305px;
		padding: 0 14px 23px 0;
	}

	.derm-images-visual > img {
		height: 285px;
		border-radius: 17px;
	}

	.derm-image-floating {
		top: 12px;
		left: -3px;
		gap: 7px;
		padding: 9px 11px;
	}

	.derm-image-floating > i {
		font-size: 1rem;
	}

	.derm-image-floating strong {
		font-size: .67rem;
	}

	.derm-image-floating small {
		font-size: .55rem;
	}

	.derm-image-note {
		right: 0;
		bottom: 4px;
		padding: 9px 11px;
		font-size: .6rem;
	}

	.derm-workflow-card {
		padding: 22px;
	}

	.derm-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.derm-faq-item p {
		margin-right: 4px;
	}

	.derm-cta-section {
		padding: 45px 0 58px;
	}

	.derm-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.derm-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.derm-cta-contact {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.derm-feature-card,
	.derm-button-primary,
	.derm-button-light {
		transition: none;
	}
}

/* ENT EMR landing page */
.ent-page {
	--ent-ink: #112344;
	--ent-muted: #61718a;
	--ent-blue: #175cdd;
	--ent-teal: #0b8588;
	--ent-line: #e2eaf3;
	overflow: hidden;
	color: var(--ent-muted);
}

.ent-page h1,
.ent-page h2,
.ent-page h3 {
	color: var(--ent-ink);
}

.ent-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .1), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #eff9f8 100%);
}

.ent-eyebrow,
.ent-section-kicker {
	margin: 0 0 14px;
	color: var(--ent-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ent-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.ent-hero h1 {
	max-width: 640px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.ent-hero h1 span {
	color: var(--ent-blue);
}

.ent-hero-copy,
.ent-section-copy {
	color: var(--ent-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.ent-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.ent-hero-points,
.ent-coordination-points {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ent-hero-points li,
.ent-coordination-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.ent-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.ent-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.ent-button-primary,
.ent-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--ent-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.ent-button-primary:hover,
.ent-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.ent-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--ent-blue);
	font-size: .9rem;
	font-weight: 650;
}

.ent-text-link:hover,
.ent-text-link:focus {
	color: #104dbf;
}

.ent-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.ent-hero-note i {
	color: var(--ent-teal);
	font-size: 1rem;
}

.ent-hero-visual {
	position: relative;
	display: grid;
	min-height: 455px;
	place-items: center;
	max-width: 600px;
	margin-left: auto;
	padding: 12px 25px 27px 0;
}

.ent-hero-photo {
	position: relative;
	width: min(100%, 455px);
	height: 385px;
	overflow: hidden;
	border: 7px solid #fff;
	border-radius: 27px;
	background: #eaf2f8;
	box-shadow: 0 28px 65px rgba(24, 58, 96, .16);
	transform: rotate(1.5deg);
}

.ent-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ent-photo-shade {
	position: absolute;
	inset: 35% 0 0;
	background: linear-gradient(180deg, transparent, rgba(11, 34, 55, .72));
}

.ent-photo-caption {
	position: absolute;
	right: 17px;
	bottom: 17px;
	left: 17px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 14px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 10px 24px rgba(12, 30, 53, .14);
}

.ent-photo-icon {
	display: grid;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	place-items: center;
	border-radius: 12px;
	background: #edf4ff;
	color: var(--ent-blue);
	font-size: 1.1rem;
}

.ent-photo-caption strong,
.ent-photo-caption small {
	display: block;
}

.ent-photo-caption strong {
	color: #233853;
	font-size: .77rem;
}

.ent-photo-caption small {
	margin-top: 3px;
	color: #78879b;
	font-size: .65rem;
}

.ent-record-card {
	position: absolute;
	right: -3px;
	bottom: 66px;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border: 1px solid #e4ebf3;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 15px 35px rgba(24, 52, 88, .14);
}

.ent-record-icon {
	display: grid;
	width: 39px;
	height: 39px;
	place-items: center;
	border-radius: 12px;
	background: #eff8f5;
	color: #168660;
	font-size: 1.1rem;
}

.ent-record-card strong,
.ent-record-card span:not(.ent-record-check) {
	display: block;
}

.ent-record-card strong {
	color: #273b55;
	font-size: .75rem;
}

.ent-record-card span:not(.ent-record-check) {
	margin-top: 3px;
	color: #8492a5;
	font-size: .61rem;
}

.ent-record-check {
	display: grid;
	width: 23px;
	height: 23px;
	place-items: center;
	border-radius: 50%;
	background: #eaf7f1;
	color: #168660;
	font-size: .78rem;
}

.ent-floating-pill {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .97);
	color: #33445d;
	font-size: .73rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.ent-floating-pill i {
	color: var(--ent-teal);
}

.ent-pill-one {
	top: 28px;
	left: -8px;
}

.ent-pill-two {
	right: 7px;
	bottom: 19px;
}

.ent-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.ent-trust-strip > .container > p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.ent-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.ent-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.ent-trust-items i {
	color: var(--ent-teal);
	font-size: 1rem;
}

.ent-overview-section {
	padding: 68px 0;
	background: #fff;
}

.ent-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.ent-overview-section .ent-section-title {
	max-width: 530px;
	margin-bottom: 0;
}

.ent-section-copy {
	margin: 0;
}

.ent-overview-followup {
	margin-top: 13px;
}

.ent-overview-section .ent-text-link {
	margin-top: 17px;
}

.ent-features-section,
.ent-workflow-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.ent-section-heading {
	max-width: 760px;
	margin: 0 auto;
}

.ent-section-heading .ent-section-title {
	margin-bottom: 13px;
}

.ent-feature-grid {
	margin-top: 28px;
}

.ent-feature-card {
	height: 100%;
	padding: 28px;
	border: 1px solid #e6edf5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 9px 26px rgba(28, 57, 91, .045);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.ent-feature-card:hover {
	transform: translateY(-4px);
	border-color: #d2e2f7;
	box-shadow: 0 16px 34px rgba(28, 57, 91, .09);
}

.ent-icon-box {
	display: grid;
	width: 49px;
	height: 49px;
	place-items: center;
	border: 1px solid #dce9fb;
	border-radius: 14px;
	background: #f0f6ff;
	color: var(--ent-blue);
	font-size: 1.2rem;
}

.ent-feature-card h3,
.ent-workflow-card h3 {
	margin: 20px 0 9px;
	font-size: 1.08rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.ent-feature-card p,
.ent-workflow-card p {
	margin: 0;
	color: var(--ent-muted);
	font-size: .87rem;
	line-height: 1.75;
}

.ent-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 17px;
	color: var(--ent-blue);
	font-size: .81rem;
	font-weight: 650;
}

.ent-feature-card > a:hover {
	color: #104dbf;
}

.ent-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 17px;
}

.ent-feature-tags span {
	padding: 6px 9px;
	border: 1px solid #e4ebf3;
	border-radius: 50px;
	background: #f8fafc;
	color: #64758b;
	font-size: .63rem;
	font-weight: 600;
}

.ent-coordination-section {
	padding: 82px 0;
	background: #fff;
}

.ent-coordination-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 27px 0;
}

.ent-coordination-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 22px;
	object-fit: cover;
	box-shadow: 0 22px 50px rgba(24, 58, 96, .14);
}

.ent-coordination-label {
	position: absolute;
	right: 8px;
	bottom: 4px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid #e3edf5;
	border-radius: 50px;
	background: #fff;
	color: #41566f;
	font-size: .72rem;
	font-weight: 650;
	box-shadow: 0 10px 26px rgba(24, 52, 88, .1);
}

.ent-coordination-label i {
	color: var(--ent-teal);
}

.ent-coordination-floating {
	position: absolute;
	top: 21px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 15px;
	border: 1px solid #e5edf5;
	border-radius: 14px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 12px 28px rgba(24, 52, 88, .11);
}

.ent-coordination-floating > i {
	color: var(--ent-blue);
	font-size: 1.2rem;
}

.ent-coordination-floating strong,
.ent-coordination-floating small {
	display: block;
}

.ent-coordination-floating strong {
	color: #293e58;
	font-size: .75rem;
}

.ent-coordination-floating small {
	margin-top: 3px;
	color: #7d8ca0;
	font-size: .62rem;
}

.ent-coordination-section .ent-section-title {
	margin-bottom: 13px;
}

.ent-coordination-points {
	margin-top: 21px;
}

.ent-coordination-points li {
	font-size: .86rem;
}

.ent-coordination-points i {
	margin-top: 2px;
	color: #168660;
}

.ent-coordination-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 21px 0 0;
	padding: 12px 14px;
	border: 1px solid #e3eaf3;
	border-radius: 10px;
	background: #f8fafc;
	color: #687990;
	font-size: .76rem;
	line-height: 1.65;
}

.ent-coordination-disclaimer i {
	margin-top: 2px;
	color: var(--ent-blue);
}

.ent-workflow-grid {
	margin-top: 29px;
}

.ent-workflow-card {
	position: relative;
	height: 100%;
	padding: 25px 23px;
	border: 1px solid #e4ebf3;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(28, 57, 91, .04);
}

.ent-workflow-number {
	position: absolute;
	top: 24px;
	right: 22px;
	color: #b4c0cf;
	font-size: .76rem;
	font-weight: 750;
	letter-spacing: .06em;
}

.ent-workflow-card .ent-icon-box {
	width: 44px;
	height: 44px;
	border-radius: 13px;
	font-size: 1.08rem;
}

.ent-workflow-card h3 {
	margin-top: 17px;
}

.ent-faq-section {
	padding: 80px 0;
	background: #fff;
}

.ent-faq-section .ent-section-title {
	margin-bottom: 13px;
}

.ent-faq-section .ent-section-copy {
	margin-bottom: 16px;
}

.ent-faq-list {
	border-top: 1px solid #dce5ef;
}

.ent-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #dce5ef;
}

.ent-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--ent-ink);
	font-size: .97rem;
	font-weight: 680;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.ent-faq-item summary::-webkit-details-marker {
	display: none;
}

.ent-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--ent-blue);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.ent-faq-item[open] summary::after {
	content: "\f2ea";
}

.ent-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--ent-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.ent-cta-section {
	padding: 70px 0 85px;
	background: #f5f8fc;
}

.ent-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.ent-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.ent-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ent-cta-panel p:not(.ent-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.ent-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.ent-button-light:hover,
.ent-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.ent-cta-contact {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
	font-weight: 600;
}

.ent-cta-contact:hover,
.ent-cta-contact:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.ent-hero {
		padding-top: 70px;
	}

	.ent-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.ent-coordination-visual {
		max-width: 700px;
	}

	.ent-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.ent-hero {
		padding: 55px 0 60px;
	}

	.ent-hero h1 {
		font-size: 2.45rem;
	}

	.ent-hero-copy {
		font-size: .94rem;
	}

	.ent-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.ent-button-primary {
		padding: 0 17px;
		font-size: .82rem;
	}

	.ent-hero-visual {
		min-height: 370px;
		padding: 0 7px 24px 0;
	}

	.ent-hero-photo {
		height: 315px;
		border-width: 5px;
		border-radius: 20px;
	}

	.ent-photo-caption {
		right: 9px;
		bottom: 9px;
		left: 9px;
		gap: 8px;
		padding: 10px;
	}

	.ent-photo-caption strong {
		font-size: .68rem;
	}

	.ent-photo-caption small {
		font-size: .58rem;
	}

	.ent-photo-icon {
		width: 34px;
		height: 34px;
		flex-basis: 34px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.ent-record-card {
		right: -1px;
		bottom: 42px;
		gap: 7px;
		padding: 9px;
	}

	.ent-record-icon {
		width: 33px;
		height: 33px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.ent-record-card strong {
		font-size: .67rem;
	}

	.ent-record-card span:not(.ent-record-check) {
		font-size: .53rem;
	}

	.ent-record-check {
		width: 20px;
		height: 20px;
		font-size: .68rem;
	}

	.ent-floating-pill {
		padding: 9px 11px;
		font-size: .61rem;
	}

	.ent-pill-one {
		top: -9px;
		left: -2px;
	}

	.ent-pill-two {
		right: -1px;
		bottom: 7px;
	}

	.ent-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.ent-trust-items span {
		width: calc(50% - 6px);
		font-size: .74rem;
		text-align: left;
	}

	.ent-overview-section,
	.ent-features-section,
	.ent-coordination-section,
	.ent-workflow-section,
	.ent-faq-section {
		padding: 58px 0;
	}

	.ent-feature-grid,
	.ent-workflow-grid {
		margin-top: 19px;
	}

	.ent-feature-card {
		padding: 23px;
	}

	.ent-coordination-visual {
		min-height: 305px;
		padding: 0 14px 23px 0;
	}

	.ent-coordination-visual > img {
		height: 285px;
		border-radius: 17px;
	}

	.ent-coordination-floating {
		top: 12px;
		left: -3px;
		gap: 7px;
		padding: 9px 11px;
	}

	.ent-coordination-floating > i {
		font-size: 1rem;
	}

	.ent-coordination-floating strong {
		font-size: .67rem;
	}

	.ent-coordination-floating small {
		font-size: .55rem;
	}

	.ent-coordination-label {
		right: 0;
		bottom: 4px;
		padding: 9px 11px;
		font-size: .6rem;
	}

	.ent-workflow-card {
		padding: 22px;
	}

	.ent-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.ent-faq-item p {
		margin-right: 4px;
	}

	.ent-cta-section {
		padding: 45px 0 58px;
	}

	.ent-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.ent-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.ent-cta-contact {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ent-feature-card,
	.ent-button-primary,
	.ent-button-light {
		transition: none;
	}
}

/* General surgery EMR landing page */
.gensurg-page {
	--gensurg-ink: #112344;
	--gensurg-muted: #61718a;
	--gensurg-blue: #175cdd;
	--gensurg-teal: #0b8588;
	--gensurg-line: #e2eaf3;
	overflow: hidden;
	color: var(--gensurg-muted);
}

.gensurg-page h1,
.gensurg-page h2,
.gensurg-page h3 {
	color: var(--gensurg-ink);
}

.gensurg-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .1), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #eff9f8 100%);
}

.gensurg-eyebrow,
.gensurg-section-kicker {
	margin: 0 0 14px;
	color: var(--gensurg-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.gensurg-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.gensurg-hero h1 {
	max-width: 640px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.gensurg-hero h1 span {
	color: var(--gensurg-blue);
}

.gensurg-hero-copy,
.gensurg-section-copy {
	color: var(--gensurg-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.gensurg-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.gensurg-hero-points,
.gensurg-coordination-points {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.gensurg-hero-points li,
.gensurg-coordination-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.gensurg-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.gensurg-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.gensurg-button-primary,
.gensurg-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--gensurg-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.gensurg-button-primary:hover,
.gensurg-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.gensurg-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--gensurg-blue);
	font-size: .9rem;
	font-weight: 650;
}

.gensurg-text-link:hover,
.gensurg-text-link:focus {
	color: #104dbf;
}

.gensurg-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.gensurg-hero-note i {
	color: var(--gensurg-teal);
	font-size: 1rem;
}

.gensurg-hero-visual {
	position: relative;
	display: grid;
	min-height: 455px;
	place-items: center;
	max-width: 600px;
	margin-left: auto;
	padding: 12px 25px 27px 0;
}

.gensurg-hero-photo {
	position: relative;
	width: min(100%, 455px);
	height: 385px;
	overflow: hidden;
	border: 7px solid #fff;
	border-radius: 27px;
	background: #eaf2f8;
	box-shadow: 0 28px 65px rgba(24, 58, 96, .16);
	transform: rotate(1.5deg);
}

.gensurg-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.gensurg-photo-shade {
	position: absolute;
	inset: 35% 0 0;
	background: linear-gradient(180deg, transparent, rgba(11, 34, 55, .72));
}

.gensurg-photo-caption {
	position: absolute;
	right: 17px;
	bottom: 17px;
	left: 17px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 14px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 10px 24px rgba(12, 30, 53, .14);
}

.gensurg-photo-icon {
	display: grid;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	place-items: center;
	border-radius: 12px;
	background: #edf4ff;
	color: var(--gensurg-blue);
	font-size: 1.1rem;
}

.gensurg-photo-caption strong,
.gensurg-photo-caption small {
	display: block;
}

.gensurg-photo-caption strong {
	color: #233853;
	font-size: .77rem;
}

.gensurg-photo-caption small {
	margin-top: 3px;
	color: #78879b;
	font-size: .65rem;
}

.gensurg-record-card {
	position: absolute;
	right: -3px;
	bottom: 66px;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border: 1px solid #e4ebf3;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 15px 35px rgba(24, 52, 88, .14);
}

.gensurg-record-icon {
	display: grid;
	width: 39px;
	height: 39px;
	place-items: center;
	border-radius: 12px;
	background: #eff8f5;
	color: #168660;
	font-size: 1.1rem;
}

.gensurg-record-card strong,
.gensurg-record-card span:not(.gensurg-record-check) {
	display: block;
}

.gensurg-record-card strong {
	color: #273b55;
	font-size: .75rem;
}

.gensurg-record-card span:not(.gensurg-record-check) {
	margin-top: 3px;
	color: #8492a5;
	font-size: .61rem;
}

.gensurg-record-check {
	display: grid;
	width: 23px;
	height: 23px;
	place-items: center;
	border-radius: 50%;
	background: #eaf7f1;
	color: #168660;
	font-size: .78rem;
}

.gensurg-floating-pill {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .97);
	color: #33445d;
	font-size: .73rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.gensurg-floating-pill i {
	color: var(--gensurg-teal);
}

.gensurg-pill-one {
	top: 28px;
	left: -8px;
}

.gensurg-pill-two {
	right: 7px;
	bottom: 19px;
}

.gensurg-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.gensurg-trust-strip > .container > p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.gensurg-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.gensurg-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.gensurg-trust-items i {
	color: var(--gensurg-teal);
	font-size: 1rem;
}

.gensurg-overview-section {
	padding: 68px 0;
	background: #fff;
}

.gensurg-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.gensurg-overview-section .gensurg-section-title {
	max-width: 530px;
	margin-bottom: 0;
}

.gensurg-section-copy {
	margin: 0;
}

.gensurg-overview-followup {
	margin-top: 13px;
}

.gensurg-overview-section .gensurg-text-link {
	margin-top: 17px;
}

.gensurg-features-section,
.gensurg-workflow-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.gensurg-section-heading {
	max-width: 760px;
	margin: 0 auto;
}

.gensurg-section-heading .gensurg-section-title {
	margin-bottom: 13px;
}

.gensurg-feature-grid {
	margin-top: 28px;
}

.gensurg-feature-card {
	height: 100%;
	padding: 28px;
	border: 1px solid #e6edf5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 9px 26px rgba(28, 57, 91, .045);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.gensurg-feature-card:hover {
	transform: translateY(-4px);
	border-color: #d2e2f7;
	box-shadow: 0 16px 34px rgba(28, 57, 91, .09);
}

.gensurg-icon-box {
	display: grid;
	width: 49px;
	height: 49px;
	place-items: center;
	border: 1px solid #dce9fb;
	border-radius: 14px;
	background: #f0f6ff;
	color: var(--gensurg-blue);
	font-size: 1.2rem;
}

.gensurg-feature-card h3,
.gensurg-workflow-card h3 {
	margin: 20px 0 9px;
	font-size: 1.08rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.gensurg-feature-card p,
.gensurg-workflow-card p {
	margin: 0;
	color: var(--gensurg-muted);
	font-size: .87rem;
	line-height: 1.75;
}

.gensurg-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 17px;
	color: var(--gensurg-blue);
	font-size: .81rem;
	font-weight: 650;
}

.gensurg-feature-card > a:hover {
	color: #104dbf;
}

.gensurg-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 17px;
}

.gensurg-feature-tags span {
	padding: 6px 9px;
	border: 1px solid #e4ebf3;
	border-radius: 50px;
	background: #f8fafc;
	color: #64758b;
	font-size: .63rem;
	font-weight: 600;
}

.gensurg-coordination-section {
	padding: 82px 0;
	background: #fff;
}

.gensurg-coordination-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 27px 0;
}

.gensurg-coordination-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 22px;
	object-fit: cover;
	box-shadow: 0 22px 50px rgba(24, 58, 96, .14);
}

.gensurg-coordination-label {
	position: absolute;
	right: 8px;
	bottom: 4px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid #e3edf5;
	border-radius: 50px;
	background: #fff;
	color: #41566f;
	font-size: .72rem;
	font-weight: 650;
	box-shadow: 0 10px 26px rgba(24, 52, 88, .1);
}

.gensurg-coordination-label i {
	color: var(--gensurg-teal);
}

.gensurg-coordination-floating {
	position: absolute;
	top: 21px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 15px;
	border: 1px solid #e5edf5;
	border-radius: 14px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 12px 28px rgba(24, 52, 88, .11);
}

.gensurg-coordination-floating > i {
	color: var(--gensurg-blue);
	font-size: 1.2rem;
}

.gensurg-coordination-floating strong,
.gensurg-coordination-floating small {
	display: block;
}

.gensurg-coordination-floating strong {
	color: #293e58;
	font-size: .75rem;
}

.gensurg-coordination-floating small {
	margin-top: 3px;
	color: #7d8ca0;
	font-size: .62rem;
}

.gensurg-coordination-section .gensurg-section-title {
	margin-bottom: 13px;
}

.gensurg-coordination-points {
	margin-top: 21px;
}

.gensurg-coordination-points li {
	font-size: .86rem;
}

.gensurg-coordination-points i {
	margin-top: 2px;
	color: #168660;
}

.gensurg-coordination-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 21px 0 0;
	padding: 12px 14px;
	border: 1px solid #e3eaf3;
	border-radius: 10px;
	background: #f8fafc;
	color: #687990;
	font-size: .76rem;
	line-height: 1.65;
}

.gensurg-coordination-disclaimer i {
	margin-top: 2px;
	color: var(--gensurg-blue);
}

.gensurg-workflow-grid {
	margin-top: 29px;
}

.gensurg-workflow-card {
	position: relative;
	height: 100%;
	padding: 25px 23px;
	border: 1px solid #e4ebf3;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(28, 57, 91, .04);
}

.gensurg-workflow-number {
	position: absolute;
	top: 24px;
	right: 22px;
	color: #b4c0cf;
	font-size: .76rem;
	font-weight: 750;
	letter-spacing: .06em;
}

.gensurg-workflow-card .gensurg-icon-box {
	width: 44px;
	height: 44px;
	border-radius: 13px;
	font-size: 1.08rem;
}

.gensurg-workflow-card h3 {
	margin-top: 17px;
}

.gensurg-faq-section {
	padding: 80px 0;
	background: #fff;
}

.gensurg-faq-section .gensurg-section-title {
	margin-bottom: 13px;
}

.gensurg-faq-section .gensurg-section-copy {
	margin-bottom: 16px;
}

.gensurg-faq-list {
	border-top: 1px solid #dce5ef;
}

.gensurg-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #dce5ef;
}

.gensurg-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--gensurg-ink);
	font-size: .97rem;
	font-weight: 680;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.gensurg-faq-item summary::-webkit-details-marker {
	display: none;
}

.gensurg-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--gensurg-blue);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.gensurg-faq-item[open] summary::after {
	content: "\f2ea";
}

.gensurg-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--gensurg-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.gensurg-cta-section {
	padding: 70px 0 85px;
	background: #f5f8fc;
}

.gensurg-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.gensurg-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.gensurg-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.gensurg-cta-panel p:not(.gensurg-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.gensurg-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.gensurg-button-light:hover,
.gensurg-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.gensurg-cta-contact {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
	font-weight: 600;
}

.gensurg-cta-contact:hover,
.gensurg-cta-contact:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.gensurg-hero {
		padding-top: 70px;
	}

	.gensurg-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.gensurg-coordination-visual {
		max-width: 700px;
	}

	.gensurg-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.gensurg-hero {
		padding: 55px 0 60px;
	}

	.gensurg-hero h1 {
		font-size: 2.45rem;
	}

	.gensurg-hero-copy {
		font-size: .94rem;
	}

	.gensurg-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.gensurg-button-primary {
		padding: 0 17px;
		font-size: .82rem;
	}

	.gensurg-hero-visual {
		min-height: 370px;
		padding: 0 7px 24px 0;
	}

	.gensurg-hero-photo {
		height: 315px;
		border-width: 5px;
		border-radius: 20px;
	}

	.gensurg-photo-caption {
		right: 9px;
		bottom: 9px;
		left: 9px;
		gap: 8px;
		padding: 10px;
	}

	.gensurg-photo-caption strong {
		font-size: .68rem;
	}

	.gensurg-photo-caption small {
		font-size: .58rem;
	}

	.gensurg-photo-icon {
		width: 34px;
		height: 34px;
		flex-basis: 34px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.gensurg-record-card {
		right: -1px;
		bottom: 42px;
		gap: 7px;
		padding: 9px;
	}

	.gensurg-record-icon {
		width: 33px;
		height: 33px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.gensurg-record-card strong {
		font-size: .67rem;
	}

	.gensurg-record-card span:not(.gensurg-record-check) {
		font-size: .53rem;
	}

	.gensurg-record-check {
		width: 20px;
		height: 20px;
		font-size: .68rem;
	}

	.gensurg-floating-pill {
		padding: 9px 11px;
		font-size: .61rem;
	}

	.gensurg-pill-one {
		top: -9px;
		left: -2px;
	}

	.gensurg-pill-two {
		right: -1px;
		bottom: 7px;
	}

	.gensurg-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.gensurg-trust-items span {
		width: calc(50% - 6px);
		font-size: .74rem;
		text-align: left;
	}

	.gensurg-overview-section,
	.gensurg-features-section,
	.gensurg-coordination-section,
	.gensurg-workflow-section,
	.gensurg-faq-section {
		padding: 58px 0;
	}

	.gensurg-feature-grid,
	.gensurg-workflow-grid {
		margin-top: 19px;
	}

	.gensurg-feature-card {
		padding: 23px;
	}

	.gensurg-coordination-visual {
		min-height: 305px;
		padding: 0 14px 23px 0;
	}

	.gensurg-coordination-visual > img {
		height: 285px;
		border-radius: 17px;
	}

	.gensurg-coordination-floating {
		top: 12px;
		left: -3px;
		gap: 7px;
		padding: 9px 11px;
	}

	.gensurg-coordination-floating > i {
		font-size: 1rem;
	}

	.gensurg-coordination-floating strong {
		font-size: .67rem;
	}

	.gensurg-coordination-floating small {
		font-size: .55rem;
	}

	.gensurg-coordination-label {
		right: 0;
		bottom: 4px;
		padding: 9px 11px;
		font-size: .6rem;
	}

	.gensurg-workflow-card {
		padding: 22px;
	}

	.gensurg-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.gensurg-faq-item p {
		margin-right: 4px;
	}

	.gensurg-cta-section {
		padding: 45px 0 58px;
	}

	.gensurg-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.gensurg-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.gensurg-cta-contact {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.gensurg-feature-card,
	.gensurg-button-primary,
	.gensurg-button-light {
		transition: none;
	}
}

/* Oncology EMR landing page */
.onco-page {
	--onco-ink: #112344;
	--onco-muted: #61718a;
	--onco-blue: #175cdd;
	--onco-teal: #0b8588;
	--onco-line: #e2eaf3;
	overflow: hidden;
	color: var(--onco-muted);
}

.onco-page h1,
.onco-page h2,
.onco-page h3 {
	color: var(--onco-ink);
}

.onco-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .1), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #eff9f8 100%);
}

.onco-eyebrow,
.onco-section-kicker {
	margin: 0 0 14px;
	color: var(--onco-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.onco-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.onco-hero h1 {
	max-width: 640px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 3.5rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.onco-hero h1 span {
	color: var(--onco-blue);
}

.onco-hero-copy,
.onco-section-copy {
	color: var(--onco-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.onco-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.onco-hero-points,
.onco-coordination-points {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.onco-hero-points li,
.onco-coordination-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.onco-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.onco-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.onco-button-primary,
.onco-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--onco-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.onco-button-primary:hover,
.onco-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.onco-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--onco-blue);
	font-size: .9rem;
	font-weight: 650;
}

.onco-text-link:hover,
.onco-text-link:focus {
	color: #104dbf;
}

.onco-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.onco-hero-note i {
	color: var(--onco-teal);
	font-size: 1rem;
}

.onco-hero-visual {
	position: relative;
	display: grid;
	min-height: 455px;
	place-items: center;
	max-width: 600px;
	margin-left: auto;
	padding: 12px 25px 27px 0;
}

.onco-hero-photo {
	position: relative;
	width: min(100%, 455px);
	height: 385px;
	overflow: hidden;
	border: 7px solid #fff;
	border-radius: 27px;
	background: #eaf2f8;
	box-shadow: 0 28px 65px rgba(24, 58, 96, .16);
	transform: rotate(1.5deg);
}

.onco-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.onco-photo-shade {
	position: absolute;
	inset: 35% 0 0;
	background: linear-gradient(180deg, transparent, rgba(11, 34, 55, .72));
}

.onco-photo-caption {
	position: absolute;
	right: 17px;
	bottom: 17px;
	left: 17px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 14px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 10px 24px rgba(12, 30, 53, .14);
}

.onco-photo-icon {
	display: grid;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	place-items: center;
	border-radius: 12px;
	background: #edf4ff;
	color: var(--onco-blue);
	font-size: 1.1rem;
}

.onco-photo-caption strong,
.onco-photo-caption small {
	display: block;
}

.onco-photo-caption strong {
	color: #233853;
	font-size: .77rem;
}

.onco-photo-caption small {
	margin-top: 3px;
	color: #78879b;
	font-size: .65rem;
}

.onco-record-card {
	position: absolute;
	right: -3px;
	bottom: 66px;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border: 1px solid #e4ebf3;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 15px 35px rgba(24, 52, 88, .14);
}

.onco-record-icon {
	display: grid;
	width: 39px;
	height: 39px;
	place-items: center;
	border-radius: 12px;
	background: #eff8f5;
	color: #168660;
	font-size: 1.1rem;
}

.onco-record-card strong,
.onco-record-card span:not(.onco-record-check) {
	display: block;
}

.onco-record-card strong {
	color: #273b55;
	font-size: .75rem;
}

.onco-record-card span:not(.onco-record-check) {
	margin-top: 3px;
	color: #8492a5;
	font-size: .61rem;
}

.onco-record-check {
	display: grid;
	width: 23px;
	height: 23px;
	place-items: center;
	border-radius: 50%;
	background: #eaf7f1;
	color: #168660;
	font-size: .78rem;
}

.onco-floating-pill {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .97);
	color: #33445d;
	font-size: .73rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.onco-floating-pill i {
	color: var(--onco-teal);
}

.onco-pill-one {
	top: 28px;
	left: -8px;
}

.onco-pill-two {
	right: 7px;
	bottom: 19px;
}

.onco-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.onco-trust-strip > .container > p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.onco-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.onco-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.onco-trust-items i {
	color: var(--onco-teal);
	font-size: 1rem;
}

.onco-overview-section {
	padding: 68px 0;
	background: #fff;
}

.onco-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.onco-overview-section .onco-section-title {
	max-width: 530px;
	margin-bottom: 0;
}

.onco-section-copy {
	margin: 0;
}

.onco-overview-followup {
	margin-top: 13px;
}

.onco-overview-section .onco-text-link {
	margin-top: 17px;
}

.onco-features-section,
.onco-workflow-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.onco-section-heading {
	max-width: 760px;
	margin: 0 auto;
}

.onco-section-heading .onco-section-title {
	margin-bottom: 13px;
}

.onco-feature-grid {
	margin-top: 28px;
}

.onco-feature-card {
	height: 100%;
	padding: 28px;
	border: 1px solid #e6edf5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 9px 26px rgba(28, 57, 91, .045);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.onco-feature-card:hover {
	transform: translateY(-4px);
	border-color: #d2e2f7;
	box-shadow: 0 16px 34px rgba(28, 57, 91, .09);
}

.onco-icon-box {
	display: grid;
	width: 49px;
	height: 49px;
	place-items: center;
	border: 1px solid #dce9fb;
	border-radius: 14px;
	background: #f0f6ff;
	color: var(--onco-blue);
	font-size: 1.2rem;
}

.onco-feature-card h3,
.onco-workflow-card h3 {
	margin: 20px 0 9px;
	font-size: 1.08rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.onco-feature-card p,
.onco-workflow-card p {
	margin: 0;
	color: var(--onco-muted);
	font-size: .87rem;
	line-height: 1.75;
}

.onco-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 17px;
	color: var(--onco-blue);
	font-size: .81rem;
	font-weight: 650;
}

.onco-feature-card > a:hover {
	color: #104dbf;
}

.onco-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 17px;
}

.onco-feature-tags span {
	padding: 6px 9px;
	border: 1px solid #e4ebf3;
	border-radius: 50px;
	background: #f8fafc;
	color: #64758b;
	font-size: .63rem;
	font-weight: 600;
}

.onco-coordination-section {
	padding: 82px 0;
	background: #fff;
}

.onco-coordination-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 27px 0;
}

.onco-coordination-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 22px;
	object-fit: cover;
	box-shadow: 0 22px 50px rgba(24, 58, 96, .14);
}

.onco-coordination-label {
	position: absolute;
	right: 8px;
	bottom: 4px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid #e3edf5;
	border-radius: 50px;
	background: #fff;
	color: #41566f;
	font-size: .72rem;
	font-weight: 650;
	box-shadow: 0 10px 26px rgba(24, 52, 88, .1);
}

.onco-coordination-label i {
	color: var(--onco-teal);
}

.onco-coordination-floating {
	position: absolute;
	top: 21px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 15px;
	border: 1px solid #e5edf5;
	border-radius: 14px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 12px 28px rgba(24, 52, 88, .11);
}

.onco-coordination-floating > i {
	color: var(--onco-blue);
	font-size: 1.2rem;
}

.onco-coordination-floating strong,
.onco-coordination-floating small {
	display: block;
}

.onco-coordination-floating strong {
	color: #293e58;
	font-size: .75rem;
}

.onco-coordination-floating small {
	margin-top: 3px;
	color: #7d8ca0;
	font-size: .62rem;
}

.onco-coordination-section .onco-section-title {
	margin-bottom: 13px;
}

.onco-coordination-points {
	margin-top: 21px;
}

.onco-coordination-points li {
	font-size: .86rem;
}

.onco-coordination-points i {
	margin-top: 2px;
	color: #168660;
}

.onco-coordination-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 21px 0 0;
	padding: 12px 14px;
	border: 1px solid #e3eaf3;
	border-radius: 10px;
	background: #f8fafc;
	color: #687990;
	font-size: .76rem;
	line-height: 1.65;
}

.onco-coordination-disclaimer i {
	margin-top: 2px;
	color: var(--onco-blue);
}

.onco-workflow-grid {
	margin-top: 29px;
}

.onco-workflow-card {
	position: relative;
	height: 100%;
	padding: 25px 23px;
	border: 1px solid #e4ebf3;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(28, 57, 91, .04);
}

.onco-workflow-number {
	position: absolute;
	top: 24px;
	right: 22px;
	color: #b4c0cf;
	font-size: .76rem;
	font-weight: 750;
	letter-spacing: .06em;
}

.onco-workflow-card .onco-icon-box {
	width: 44px;
	height: 44px;
	border-radius: 13px;
	font-size: 1.08rem;
}

.onco-workflow-card h3 {
	margin-top: 17px;
}

.onco-faq-section {
	padding: 80px 0;
	background: #fff;
}

.onco-faq-section .onco-section-title {
	margin-bottom: 13px;
}

.onco-faq-section .onco-section-copy {
	margin-bottom: 16px;
}

.onco-faq-list {
	border-top: 1px solid #dce5ef;
}

.onco-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #dce5ef;
}

.onco-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--onco-ink);
	font-size: .97rem;
	font-weight: 680;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.onco-faq-item summary::-webkit-details-marker {
	display: none;
}

.onco-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--onco-blue);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.onco-faq-item[open] summary::after {
	content: "\f2ea";
}

.onco-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--onco-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.onco-cta-section {
	padding: 70px 0 85px;
	background: #f5f8fc;
}

.onco-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.onco-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.onco-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.onco-cta-panel p:not(.onco-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.onco-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.onco-button-light:hover,
.onco-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.onco-cta-contact {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
	font-weight: 600;
}

.onco-cta-contact:hover,
.onco-cta-contact:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.onco-hero {
		padding-top: 70px;
	}

	.onco-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.onco-coordination-visual {
		max-width: 700px;
	}

	.onco-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.onco-hero {
		padding: 55px 0 60px;
	}

	.onco-hero h1 {
		font-size: 2.45rem;
	}

	.onco-hero-copy {
		font-size: .94rem;
	}

	.onco-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.onco-button-primary {
		padding: 0 17px;
		font-size: .82rem;
	}

	.onco-hero-visual {
		min-height: 370px;
		padding: 0 7px 24px 0;
	}

	.onco-hero-photo {
		height: 315px;
		border-width: 5px;
		border-radius: 20px;
	}

	.onco-photo-caption {
		right: 9px;
		bottom: 9px;
		left: 9px;
		gap: 8px;
		padding: 10px;
	}

	.onco-photo-caption strong {
		font-size: .68rem;
	}

	.onco-photo-caption small {
		font-size: .58rem;
	}

	.onco-photo-icon {
		width: 34px;
		height: 34px;
		flex-basis: 34px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.onco-record-card {
		right: -1px;
		bottom: 42px;
		gap: 7px;
		padding: 9px;
	}

	.onco-record-icon {
		width: 33px;
		height: 33px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.onco-record-card strong {
		font-size: .67rem;
	}

	.onco-record-card span:not(.onco-record-check) {
		font-size: .53rem;
	}

	.onco-record-check {
		width: 20px;
		height: 20px;
		font-size: .68rem;
	}

	.onco-floating-pill {
		padding: 9px 11px;
		font-size: .61rem;
	}

	.onco-pill-one {
		top: -9px;
		left: -2px;
	}

	.onco-pill-two {
		right: -1px;
		bottom: 7px;
	}

	.onco-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.onco-trust-items span {
		width: calc(50% - 6px);
		font-size: .74rem;
		text-align: left;
	}

	.onco-overview-section,
	.onco-features-section,
	.onco-coordination-section,
	.onco-workflow-section,
	.onco-faq-section {
		padding: 58px 0;
	}

	.onco-feature-grid,
	.onco-workflow-grid {
		margin-top: 19px;
	}

	.onco-feature-card {
		padding: 23px;
	}

	.onco-coordination-visual {
		min-height: 305px;
		padding: 0 14px 23px 0;
	}

	.onco-coordination-visual > img {
		height: 285px;
		border-radius: 17px;
	}

	.onco-coordination-floating {
		top: 12px;
		left: -3px;
		gap: 7px;
		padding: 9px 11px;
	}

	.onco-coordination-floating > i {
		font-size: 1rem;
	}

	.onco-coordination-floating strong {
		font-size: .67rem;
	}

	.onco-coordination-floating small {
		font-size: .55rem;
	}

	.onco-coordination-label {
		right: 0;
		bottom: 4px;
		padding: 9px 11px;
		font-size: .6rem;
	}

	.onco-workflow-card {
		padding: 22px;
	}

	.onco-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.onco-faq-item p {
		margin-right: 4px;
	}

	.onco-cta-section {
		padding: 45px 0 58px;
	}

	.onco-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.onco-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.onco-cta-contact {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.onco-feature-card,
	.onco-button-primary,
	.onco-button-light {
		transition: none;
	}
}

/* Cardiology EMR landing page */
.cardio-page {
	--cardio-ink: #112344;
	--cardio-muted: #61718a;
	--cardio-blue: #175cdd;
	--cardio-teal: #0b8588;
	--cardio-line: #e2eaf3;
	overflow: hidden;
	color: var(--cardio-muted);
}

.cardio-page h1,
.cardio-page h2,
.cardio-page h3 {
	color: var(--cardio-ink);
}

.cardio-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .1), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #eff9f8 100%);
}

.cardio-eyebrow,
.cardio-section-kicker {
	margin: 0 0 14px;
	color: var(--cardio-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.cardio-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.cardio-hero h1 {
	max-width: 640px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.cardio-hero h1 span {
	color: var(--cardio-blue);
}

.cardio-hero-copy,
.cardio-section-copy {
	color: var(--cardio-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.cardio-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.cardio-hero-points,
.cardio-coordination-points {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.cardio-hero-points li,
.cardio-coordination-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.cardio-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.cardio-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.cardio-button-primary,
.cardio-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--cardio-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.cardio-button-primary:hover,
.cardio-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.cardio-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--cardio-blue);
	font-size: .9rem;
	font-weight: 650;
}

.cardio-text-link:hover,
.cardio-text-link:focus {
	color: #104dbf;
}

.cardio-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.cardio-hero-note i {
	color: var(--cardio-teal);
	font-size: 1rem;
}

.cardio-hero-visual {
	position: relative;
	display: grid;
	min-height: 455px;
	place-items: center;
	max-width: 600px;
	margin-left: auto;
	padding: 12px 25px 27px 0;
}

.cardio-hero-photo {
	position: relative;
	width: min(100%, 455px);
	height: 385px;
	overflow: hidden;
	border: 7px solid #fff;
	border-radius: 27px;
	background: #eaf2f8;
	box-shadow: 0 28px 65px rgba(24, 58, 96, .16);
	transform: rotate(1.5deg);
}

.cardio-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cardio-photo-shade {
	position: absolute;
	inset: 35% 0 0;
	background: linear-gradient(180deg, transparent, rgba(11, 34, 55, .72));
}

.cardio-photo-caption {
	position: absolute;
	right: 17px;
	bottom: 17px;
	left: 17px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 14px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 10px 24px rgba(12, 30, 53, .14);
}

.cardio-photo-icon {
	display: grid;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	place-items: center;
	border-radius: 12px;
	background: #edf4ff;
	color: var(--cardio-blue);
	font-size: 1.1rem;
}

.cardio-photo-caption strong,
.cardio-photo-caption small {
	display: block;
}

.cardio-photo-caption strong {
	color: #233853;
	font-size: .77rem;
}

.cardio-photo-caption small {
	margin-top: 3px;
	color: #78879b;
	font-size: .65rem;
}

.cardio-record-card {
	position: absolute;
	right: -3px;
	bottom: 66px;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border: 1px solid #e4ebf3;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 15px 35px rgba(24, 52, 88, .14);
}

.cardio-record-icon {
	display: grid;
	width: 39px;
	height: 39px;
	place-items: center;
	border-radius: 12px;
	background: #eff8f5;
	color: #168660;
	font-size: 1.1rem;
}

.cardio-record-card strong,
.cardio-record-card span:not(.cardio-record-check) {
	display: block;
}

.cardio-record-card strong {
	color: #273b55;
	font-size: .75rem;
}

.cardio-record-card span:not(.cardio-record-check) {
	margin-top: 3px;
	color: #8492a5;
	font-size: .61rem;
}

.cardio-record-check {
	display: grid;
	width: 23px;
	height: 23px;
	place-items: center;
	border-radius: 50%;
	background: #eaf7f1;
	color: #168660;
	font-size: .78rem;
}

.cardio-floating-pill {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .97);
	color: #33445d;
	font-size: .73rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.cardio-floating-pill i {
	color: var(--cardio-teal);
}

.cardio-pill-one {
	top: 28px;
	left: -8px;
}

.cardio-pill-two {
	right: 7px;
	bottom: 19px;
}

.cardio-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.cardio-trust-strip > .container > p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.cardio-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.cardio-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.cardio-trust-items i {
	color: var(--cardio-teal);
	font-size: 1rem;
}

.cardio-overview-section {
	padding: 68px 0;
	background: #fff;
}

.cardio-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.cardio-overview-section .cardio-section-title {
	max-width: 530px;
	margin-bottom: 0;
}

.cardio-section-copy {
	margin: 0;
}

.cardio-overview-followup {
	margin-top: 13px;
}

.cardio-overview-section .cardio-text-link {
	margin-top: 17px;
}

.cardio-features-section,
.cardio-workflow-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.cardio-section-heading {
	max-width: 760px;
	margin: 0 auto;
}

.cardio-section-heading .cardio-section-title {
	margin-bottom: 13px;
}

.cardio-feature-grid {
	margin-top: 28px;
}

.cardio-feature-card {
	height: 100%;
	padding: 28px;
	border: 1px solid #e6edf5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 9px 26px rgba(28, 57, 91, .045);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.cardio-feature-card:hover {
	transform: translateY(-4px);
	border-color: #d2e2f7;
	box-shadow: 0 16px 34px rgba(28, 57, 91, .09);
}

.cardio-icon-box {
	display: grid;
	width: 49px;
	height: 49px;
	place-items: center;
	border: 1px solid #dce9fb;
	border-radius: 14px;
	background: #f0f6ff;
	color: var(--cardio-blue);
	font-size: 1.2rem;
}

.cardio-feature-card h3,
.cardio-workflow-card h3 {
	margin: 20px 0 9px;
	font-size: 1.08rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.cardio-feature-card p,
.cardio-workflow-card p {
	margin: 0;
	color: var(--cardio-muted);
	font-size: .87rem;
	line-height: 1.75;
}

.cardio-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 17px;
	color: var(--cardio-blue);
	font-size: .81rem;
	font-weight: 650;
}

.cardio-feature-card > a:hover {
	color: #104dbf;
}

.cardio-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 17px;
}

.cardio-feature-tags span {
	padding: 6px 9px;
	border: 1px solid #e4ebf3;
	border-radius: 50px;
	background: #f8fafc;
	color: #64758b;
	font-size: .63rem;
	font-weight: 600;
}

.cardio-coordination-section {
	padding: 82px 0;
	background: #fff;
}

.cardio-coordination-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 27px 0;
}

.cardio-coordination-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 22px;
	object-fit: cover;
	box-shadow: 0 22px 50px rgba(24, 58, 96, .14);
}

.cardio-coordination-label {
	position: absolute;
	right: 8px;
	bottom: 4px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid #e3edf5;
	border-radius: 50px;
	background: #fff;
	color: #41566f;
	font-size: .72rem;
	font-weight: 650;
	box-shadow: 0 10px 26px rgba(24, 52, 88, .1);
}

.cardio-coordination-label i {
	color: var(--cardio-teal);
}

.cardio-coordination-floating {
	position: absolute;
	top: 21px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 15px;
	border: 1px solid #e5edf5;
	border-radius: 14px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 12px 28px rgba(24, 52, 88, .11);
}

.cardio-coordination-floating > i {
	color: var(--cardio-blue);
	font-size: 1.2rem;
}

.cardio-coordination-floating strong,
.cardio-coordination-floating small {
	display: block;
}

.cardio-coordination-floating strong {
	color: #293e58;
	font-size: .75rem;
}

.cardio-coordination-floating small {
	margin-top: 3px;
	color: #7d8ca0;
	font-size: .62rem;
}

.cardio-coordination-section .cardio-section-title {
	margin-bottom: 13px;
}

.cardio-coordination-points {
	margin-top: 21px;
}

.cardio-coordination-points li {
	font-size: .86rem;
}

.cardio-coordination-points i {
	margin-top: 2px;
	color: #168660;
}

.cardio-coordination-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 21px 0 0;
	padding: 12px 14px;
	border: 1px solid #e3eaf3;
	border-radius: 10px;
	background: #f8fafc;
	color: #687990;
	font-size: .76rem;
	line-height: 1.65;
}

.cardio-coordination-disclaimer i {
	margin-top: 2px;
	color: var(--cardio-blue);
}

.cardio-workflow-grid {
	margin-top: 29px;
}

.cardio-workflow-card {
	position: relative;
	height: 100%;
	padding: 25px 23px;
	border: 1px solid #e4ebf3;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(28, 57, 91, .04);
}

.cardio-workflow-number {
	position: absolute;
	top: 24px;
	right: 22px;
	color: #b4c0cf;
	font-size: .76rem;
	font-weight: 750;
	letter-spacing: .06em;
}

.cardio-workflow-card .cardio-icon-box {
	width: 44px;
	height: 44px;
	border-radius: 13px;
	font-size: 1.08rem;
}

.cardio-workflow-card h3 {
	margin-top: 17px;
}

.cardio-faq-section {
	padding: 80px 0;
	background: #fff;
}

.cardio-faq-section .cardio-section-title {
	margin-bottom: 13px;
}

.cardio-faq-section .cardio-section-copy {
	margin-bottom: 16px;
}

.cardio-faq-list {
	border-top: 1px solid #dce5ef;
}

.cardio-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #dce5ef;
}

.cardio-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--cardio-ink);
	font-size: .97rem;
	font-weight: 680;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.cardio-faq-item summary::-webkit-details-marker {
	display: none;
}

.cardio-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--cardio-blue);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.cardio-faq-item[open] summary::after {
	content: "\f2ea";
}

.cardio-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--cardio-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.cardio-cta-section {
	padding: 70px 0 85px;
	background: #f5f8fc;
}

.cardio-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.cardio-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.cardio-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.cardio-cta-panel p:not(.cardio-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.cardio-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.cardio-button-light:hover,
.cardio-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.cardio-cta-contact {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
	font-weight: 600;
}

.cardio-cta-contact:hover,
.cardio-cta-contact:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.cardio-hero {
		padding-top: 70px;
	}

	.cardio-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.cardio-coordination-visual {
		max-width: 700px;
	}

	.cardio-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.cardio-hero {
		padding: 55px 0 60px;
	}

	.cardio-hero h1 {
		font-size: 2.45rem;
	}

	.cardio-hero-copy {
		font-size: .94rem;
	}

	.cardio-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.cardio-button-primary {
		padding: 0 17px;
		font-size: .82rem;
	}

	.cardio-hero-visual {
		min-height: 370px;
		padding: 0 7px 24px 0;
	}

	.cardio-hero-photo {
		height: 315px;
		border-width: 5px;
		border-radius: 20px;
	}

	.cardio-photo-caption {
		right: 9px;
		bottom: 9px;
		left: 9px;
		gap: 8px;
		padding: 10px;
	}

	.cardio-photo-caption strong {
		font-size: .68rem;
	}

	.cardio-photo-caption small {
		font-size: .58rem;
	}

	.cardio-photo-icon {
		width: 34px;
		height: 34px;
		flex-basis: 34px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.cardio-record-card {
		right: -1px;
		bottom: 42px;
		gap: 7px;
		padding: 9px;
	}

	.cardio-record-icon {
		width: 33px;
		height: 33px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.cardio-record-card strong {
		font-size: .67rem;
	}

	.cardio-record-card span:not(.cardio-record-check) {
		font-size: .53rem;
	}

	.cardio-record-check {
		width: 20px;
		height: 20px;
		font-size: .68rem;
	}

	.cardio-floating-pill {
		padding: 9px 11px;
		font-size: .61rem;
	}

	.cardio-pill-one {
		top: -9px;
		left: -2px;
	}

	.cardio-pill-two {
		right: -1px;
		bottom: 7px;
	}

	.cardio-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.cardio-trust-items span {
		width: calc(50% - 6px);
		font-size: .74rem;
		text-align: left;
	}

	.cardio-overview-section,
	.cardio-features-section,
	.cardio-coordination-section,
	.cardio-workflow-section,
	.cardio-faq-section {
		padding: 58px 0;
	}

	.cardio-feature-grid,
	.cardio-workflow-grid {
		margin-top: 19px;
	}

	.cardio-feature-card {
		padding: 23px;
	}

	.cardio-coordination-visual {
		min-height: 305px;
		padding: 0 14px 23px 0;
	}

	.cardio-coordination-visual > img {
		height: 285px;
		border-radius: 17px;
	}

	.cardio-coordination-floating {
		top: 12px;
		left: -3px;
		gap: 7px;
		padding: 9px 11px;
	}

	.cardio-coordination-floating > i {
		font-size: 1rem;
	}

	.cardio-coordination-floating strong {
		font-size: .67rem;
	}

	.cardio-coordination-floating small {
		font-size: .55rem;
	}

	.cardio-coordination-label {
		right: 0;
		bottom: 4px;
		padding: 9px 11px;
		font-size: .6rem;
	}

	.cardio-workflow-card {
		padding: 22px;
	}

	.cardio-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.cardio-faq-item p {
		margin-right: 4px;
	}

	.cardio-cta-section {
		padding: 45px 0 58px;
	}

	.cardio-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.cardio-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.cardio-cta-contact {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.cardio-feature-card,
	.cardio-button-primary,
	.cardio-button-light {
		transition: none;
	}
}

/* Consultant physician EMR landing page */
.consultphys-page {
	--consultphys-ink: #112344;
	--consultphys-muted: #61718a;
	--consultphys-blue: #175cdd;
	--consultphys-teal: #0b8588;
	overflow: hidden;
	color: var(--consultphys-muted);
}

.consultphys-page h1,
.consultphys-page h2,
.consultphys-page h3 {
	color: var(--consultphys-ink);
}

.consultphys-hero {
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(23, 92, 221, .1), transparent 32%),
		linear-gradient(135deg, #f7faff 0%, #fff 58%, #eff9f8 100%);
}

.consultphys-eyebrow,
.consultphys-section-kicker {
	margin: 0 0 14px;
	color: var(--consultphys-blue);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.consultphys-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d8e6ff;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.consultphys-hero h1 {
	max-width: 640px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.consultphys-hero h1 span {
	color: var(--consultphys-blue);
}

.consultphys-hero-copy,
.consultphys-section-copy {
	color: var(--consultphys-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.consultphys-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.consultphys-hero-points,
.consultphys-coordination-points {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.consultphys-hero-points li,
.consultphys-coordination-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #33445d;
	font-size: .91rem;
}

.consultphys-hero-points i {
	margin-top: 2px;
	color: #149476;
}

.consultphys-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.consultphys-button-primary,
.consultphys-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--consultphys-blue);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(23, 92, 221, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.consultphys-button-primary:hover,
.consultphys-button-primary:focus {
	transform: translateY(-2px);
	background: #104dbf;
	color: #fff;
	box-shadow: 0 14px 28px rgba(23, 92, 221, .25);
}

.consultphys-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--consultphys-blue);
	font-size: .9rem;
	font-weight: 650;
}

.consultphys-text-link:hover,
.consultphys-text-link:focus {
	color: #104dbf;
}

.consultphys-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #6b7c90;
	font-size: .8rem;
}

.consultphys-hero-note i {
	color: var(--consultphys-teal);
	font-size: 1rem;
}

.consultphys-hero-visual {
	position: relative;
	display: grid;
	min-height: 455px;
	place-items: center;
	max-width: 600px;
	margin-left: auto;
	padding: 12px 25px 27px 0;
}

.consultphys-hero-photo {
	position: relative;
	width: min(100%, 455px);
	height: 385px;
	overflow: hidden;
	border: 7px solid #fff;
	border-radius: 27px;
	background: #eaf2f8;
	box-shadow: 0 28px 65px rgba(24, 58, 96, .16);
	transform: rotate(1.5deg);
}

.consultphys-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.consultphys-photo-shade {
	position: absolute;
	inset: 35% 0 0;
	background: linear-gradient(180deg, transparent, rgba(11, 34, 55, .72));
}

.consultphys-photo-caption {
	position: absolute;
	right: 17px;
	bottom: 17px;
	left: 17px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 14px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 10px 24px rgba(12, 30, 53, .14);
}

.consultphys-photo-icon {
	display: grid;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	place-items: center;
	border-radius: 12px;
	background: #edf4ff;
	color: var(--consultphys-blue);
	font-size: 1.1rem;
}

.consultphys-photo-caption strong,
.consultphys-photo-caption small,
.consultphys-record-card strong,
.consultphys-record-card span:not(.consultphys-record-check) {
	display: block;
}

.consultphys-photo-caption strong {
	color: #233853;
	font-size: .77rem;
}

.consultphys-photo-caption small {
	margin-top: 3px;
	color: #78879b;
	font-size: .65rem;
}

.consultphys-record-card {
	position: absolute;
	right: -3px;
	bottom: 66px;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border: 1px solid #e4ebf3;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 15px 35px rgba(24, 52, 88, .14);
}

.consultphys-record-icon {
	display: grid;
	width: 39px;
	height: 39px;
	place-items: center;
	border-radius: 12px;
	background: #eff8f5;
	color: #168660;
	font-size: 1.1rem;
}

.consultphys-record-card strong {
	color: #273b55;
	font-size: .75rem;
}

.consultphys-record-card span:not(.consultphys-record-check) {
	margin-top: 3px;
	color: #8492a5;
	font-size: .61rem;
}

.consultphys-record-check {
	display: grid;
	width: 23px;
	height: 23px;
	place-items: center;
	border-radius: 50%;
	background: #eaf7f1;
	color: #168660;
	font-size: .78rem;
}

.consultphys-floating-pill {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .97);
	color: #33445d;
	font-size: .73rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 86, .12);
}

.consultphys-floating-pill i {
	color: var(--consultphys-teal);
}

.consultphys-pill-one {
	top: 28px;
	left: -8px;
}

.consultphys-pill-two {
	right: 7px;
	bottom: 19px;
}

.consultphys-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eef5;
	border-bottom: 1px solid #e9eef5;
	background: #fff;
	text-align: center;
}

.consultphys-trust-strip > .container > p {
	margin: 0 0 17px;
	color: #74839a;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.consultphys-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.consultphys-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #384a62;
	font-size: .84rem;
	font-weight: 600;
}

.consultphys-trust-items i {
	color: var(--consultphys-teal);
	font-size: 1rem;
}

.consultphys-overview-section,
.consultphys-coordination-section,
.consultphys-faq-section {
	padding: 72px 0;
	background: #fff;
}

.consultphys-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.consultphys-overview-section .consultphys-section-title {
	max-width: 530px;
	margin-bottom: 0;
}

.consultphys-section-copy {
	margin: 0;
}

.consultphys-overview-followup {
	margin-top: 13px;
}

.consultphys-overview-section .consultphys-text-link {
	margin-top: 17px;
}

.consultphys-features-section,
.consultphys-workflow-section {
	padding: 82px 0 88px;
	background: #f5f8fc;
}

.consultphys-section-heading {
	max-width: 760px;
	margin: 0 auto;
}

.consultphys-section-heading .consultphys-section-title {
	margin-bottom: 13px;
}

.consultphys-feature-grid,
.consultphys-workflow-grid {
	margin-top: 29px;
}

.consultphys-feature-card,
.consultphys-workflow-card {
	height: 100%;
	padding: 28px;
	border: 1px solid #e4ebf3;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 9px 26px rgba(28, 57, 91, .045);
}

.consultphys-feature-card {
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.consultphys-feature-card:hover {
	transform: translateY(-4px);
	border-color: #d2e2f7;
	box-shadow: 0 16px 34px rgba(28, 57, 91, .09);
}

.consultphys-icon-box {
	display: grid;
	width: 49px;
	height: 49px;
	place-items: center;
	border: 1px solid #dce9fb;
	border-radius: 14px;
	background: #f0f6ff;
	color: var(--consultphys-blue);
	font-size: 1.2rem;
}

.consultphys-feature-card h3,
.consultphys-workflow-card h3 {
	margin: 20px 0 9px;
	font-size: 1.08rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.consultphys-feature-card p,
.consultphys-workflow-card p {
	margin: 0;
	color: var(--consultphys-muted);
	font-size: .87rem;
	line-height: 1.75;
}

.consultphys-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 17px;
	color: var(--consultphys-blue);
	font-size: .81rem;
	font-weight: 650;
}

.consultphys-feature-card > a:hover {
	color: #104dbf;
}

.consultphys-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 17px;
}

.consultphys-feature-tags span {
	padding: 6px 9px;
	border: 1px solid #e4ebf3;
	border-radius: 50px;
	background: #f8fafc;
	color: #64758b;
	font-size: .63rem;
	font-weight: 600;
}

.consultphys-coordination-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 27px 0;
}

.consultphys-coordination-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 22px;
	object-fit: cover;
	box-shadow: 0 22px 50px rgba(24, 58, 96, .14);
}

.consultphys-coordination-label {
	position: absolute;
	right: 8px;
	bottom: 4px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid #e3edf5;
	border-radius: 50px;
	background: #fff;
	color: #41566f;
	font-size: .72rem;
	font-weight: 650;
	box-shadow: 0 10px 26px rgba(24, 52, 88, .1);
}

.consultphys-coordination-label i {
	color: var(--consultphys-teal);
}

.consultphys-coordination-floating {
	position: absolute;
	top: 21px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 15px;
	border: 1px solid #e5edf5;
	border-radius: 14px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 12px 28px rgba(24, 52, 88, .11);
}

.consultphys-coordination-floating > i {
	color: var(--consultphys-blue);
	font-size: 1.2rem;
}

.consultphys-coordination-floating strong,
.consultphys-coordination-floating small {
	display: block;
}

.consultphys-coordination-floating strong {
	color: #293e58;
	font-size: .75rem;
}

.consultphys-coordination-floating small {
	margin-top: 3px;
	color: #7d8ca0;
	font-size: .62rem;
}

.consultphys-coordination-section .consultphys-section-title {
	margin-bottom: 13px;
}

.consultphys-coordination-points {
	margin-top: 21px;
}

.consultphys-coordination-points li {
	font-size: .86rem;
}

.consultphys-coordination-points i {
	margin-top: 2px;
	color: #168660;
}

.consultphys-coordination-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 21px 0 0;
	padding: 12px 14px;
	border: 1px solid #e3eaf3;
	border-radius: 10px;
	background: #f8fafc;
	color: #687990;
	font-size: .76rem;
	line-height: 1.65;
}

.consultphys-coordination-disclaimer i {
	margin-top: 2px;
	color: var(--consultphys-blue);
}

.consultphys-workflow-card {
	position: relative;
	padding: 25px 23px;
	border-radius: 15px;
	box-shadow: 0 8px 24px rgba(28, 57, 91, .04);
}

.consultphys-workflow-number {
	position: absolute;
	top: 24px;
	right: 22px;
	color: #b4c0cf;
	font-size: .76rem;
	font-weight: 750;
	letter-spacing: .06em;
}

.consultphys-workflow-card .consultphys-icon-box {
	width: 44px;
	height: 44px;
	border-radius: 13px;
	font-size: 1.08rem;
}

.consultphys-workflow-card h3 {
	margin-top: 17px;
}

.consultphys-faq-section .consultphys-section-title {
	margin-bottom: 13px;
}

.consultphys-faq-section .consultphys-section-copy {
	margin-bottom: 16px;
}

.consultphys-faq-list {
	border-top: 1px solid #dce5ef;
}

.consultphys-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #dce5ef;
}

.consultphys-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--consultphys-ink);
	font-size: .97rem;
	font-weight: 680;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.consultphys-faq-item summary::-webkit-details-marker {
	display: none;
}

.consultphys-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--consultphys-blue);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.consultphys-faq-item[open] summary::after {
	content: "\f2ea";
}

.consultphys-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--consultphys-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.consultphys-cta-section {
	padding: 70px 0 85px;
	background: #f5f8fc;
}

.consultphys-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(123, 199, 255, .28), transparent 29%),
		linear-gradient(120deg, #103e8d 0%, #175cdd 63%, #207acb 100%);
	box-shadow: 0 20px 48px rgba(23, 92, 221, .2);
}

.consultphys-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.consultphys-cta-kicker {
	margin: 0 0 13px;
	color: #d9e8ff;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.consultphys-cta-panel p:not(.consultphys-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-size: .91rem;
	line-height: 1.7;
}

.consultphys-button-light {
	background: #fff;
	color: #174da9;
	box-shadow: none;
}

.consultphys-button-light:hover,
.consultphys-button-light:focus {
	transform: translateY(-2px);
	background: #eff5ff;
	color: #103e8d;
}

.consultphys-cta-contact {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .83);
	font-size: .81rem;
	font-weight: 600;
}

.consultphys-cta-contact:hover,
.consultphys-cta-contact:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.consultphys-hero {
		padding-top: 70px;
	}

	.consultphys-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.consultphys-coordination-visual {
		max-width: 700px;
	}

	.consultphys-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.consultphys-hero {
		padding: 55px 0 60px;
	}

	.consultphys-hero h1 {
		font-size: 2.45rem;
	}

	.consultphys-hero-copy {
		font-size: .94rem;
	}

	.consultphys-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.consultphys-button-primary {
		padding: 0 17px;
		font-size: .82rem;
	}

	.consultphys-hero-visual {
		min-height: 370px;
		padding: 0 7px 24px 0;
	}

	.consultphys-hero-photo {
		height: 315px;
		border-width: 5px;
		border-radius: 20px;
	}

	.consultphys-photo-caption {
		right: 9px;
		bottom: 9px;
		left: 9px;
		gap: 8px;
		padding: 10px;
	}

	.consultphys-photo-caption strong {
		font-size: .68rem;
	}

	.consultphys-photo-caption small {
		font-size: .58rem;
	}

	.consultphys-photo-icon {
		width: 34px;
		height: 34px;
		flex-basis: 34px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.consultphys-record-card {
		right: -1px;
		bottom: 42px;
		gap: 7px;
		padding: 9px;
	}

	.consultphys-record-icon {
		width: 33px;
		height: 33px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.consultphys-record-card strong {
		font-size: .67rem;
	}

	.consultphys-record-card span:not(.consultphys-record-check) {
		font-size: .53rem;
	}

	.consultphys-record-check {
		width: 20px;
		height: 20px;
		font-size: .68rem;
	}

	.consultphys-floating-pill {
		padding: 9px 11px;
		font-size: .61rem;
	}

	.consultphys-pill-one {
		top: -9px;
		left: -2px;
	}

	.consultphys-pill-two {
		right: -1px;
		bottom: 7px;
	}

	.consultphys-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.consultphys-trust-items span {
		width: calc(50% - 6px);
		font-size: .74rem;
		text-align: left;
	}

	.consultphys-overview-section,
	.consultphys-features-section,
	.consultphys-coordination-section,
	.consultphys-workflow-section,
	.consultphys-faq-section {
		padding: 58px 0;
	}

	.consultphys-feature-grid,
	.consultphys-workflow-grid {
		margin-top: 19px;
	}

	.consultphys-feature-card {
		padding: 23px;
	}

	.consultphys-coordination-visual {
		min-height: 305px;
		padding: 0 14px 23px 0;
	}

	.consultphys-coordination-visual > img {
		height: 285px;
		border-radius: 17px;
	}

	.consultphys-coordination-floating {
		top: 12px;
		left: -3px;
		gap: 7px;
		padding: 9px 11px;
	}

	.consultphys-coordination-floating > i {
		font-size: 1rem;
	}

	.consultphys-coordination-floating strong {
		font-size: .67rem;
	}

	.consultphys-coordination-floating small {
		font-size: .55rem;
	}

	.consultphys-coordination-label {
		right: 0;
		bottom: 4px;
		padding: 9px 11px;
		font-size: .6rem;
	}

	.consultphys-workflow-card {
		padding: 22px;
	}

	.consultphys-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.consultphys-faq-item p {
		margin-right: 4px;
	}

	.consultphys-cta-section {
		padding: 45px 0 58px;
	}

	.consultphys-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.consultphys-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.consultphys-cta-contact {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.consultphys-feature-card,
	.consultphys-button-primary,
	.consultphys-button-light {
		transition: none;
	}
}

/* Internal medicine EMR landing page */
.intmed-page {
	--intmed-ink: #172a48;
	--intmed-muted: #65758b;
	--intmed-blue: #3767d5;
	--intmed-teal: #218c86;
	overflow: hidden;
	color: var(--intmed-muted);
}

.intmed-page h1,
.intmed-page h2,
.intmed-page h3 {
	color: var(--intmed-ink);
}

.intmed-hero {
	position: relative;
	padding: 83px 0 86px;
	background:
		radial-gradient(ellipse at 83% 14%, rgba(96, 128, 220, .15), transparent 32%),
		linear-gradient(128deg, #f5f7fd 0%, #fff 55%, #f0f8f8 100%);
}

.intmed-eyebrow,
.intmed-kicker {
	margin: 0 0 14px;
	color: var(--intmed-blue);
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.intmed-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #dce4f6;
	border-radius: 50px;
	background: rgba(255, 255, 255, .82);
	letter-spacing: .07em;
}

.intmed-hero h1 {
	max-width: 620px;
	margin: 14px 0 19px;
	font-size: clamp(2.65rem, 4.7vw, 4.2rem);
	font-weight: 760;
	letter-spacing: -.055em;
	line-height: 1.07;
}

.intmed-hero h1 span {
	color: var(--intmed-blue);
}

.intmed-hero-copy,
.intmed-section-copy {
	color: var(--intmed-muted);
	font-size: .97rem;
	line-height: 1.82;
}

.intmed-hero-copy {
	max-width: 590px;
	margin: 0;
}

.intmed-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.intmed-button-primary,
.intmed-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 21px;
	border: 0;
	border-radius: 10px;
	background: var(--intmed-blue);
	color: #fff;
	font-size: .87rem;
	font-weight: 700;
	box-shadow: 0 11px 25px rgba(55, 103, 213, .2);
	transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}

.intmed-button-primary:hover,
.intmed-button-primary:focus {
	transform: translateY(-2px);
	background: #2d54b4;
	color: #fff;
	box-shadow: 0 15px 29px rgba(55, 103, 213, .26);
}

.intmed-hero-link,
.intmed-inline-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--intmed-blue);
	font-size: .88rem;
	font-weight: 700;
}

.intmed-hero-link:hover,
.intmed-inline-link:hover {
	color: #2d54b4;
}

.intmed-hero-caption {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 28px;
	color: #738197;
	font-size: .77rem;
}

.intmed-caption-line {
	width: 27px;
	height: 2px;
	border-radius: 2px;
	background: var(--intmed-teal);
}

.intmed-hero-visual {
	position: relative;
	display: grid;
	min-height: 475px;
	place-items: center;
	max-width: 615px;
	margin: 0 0 0 auto;
}

.intmed-visual-ring {
	position: absolute;
	border: 1px solid rgba(55, 103, 213, .13);
	border-radius: 50%;
}

.intmed-ring-back {
	width: 450px;
	height: 450px;
}

.intmed-ring-front {
	width: 360px;
	height: 360px;
	border-style: dashed;
	border-color: rgba(33, 140, 134, .25);
}

.intmed-hero-photo {
	position: relative;
	width: min(71%, 370px);
	height: 400px;
	overflow: hidden;
	border: 8px solid #fff;
	border-radius: 190px 190px 28px 28px;
	background: #e8eef5;
	box-shadow: 0 27px 60px rgba(37, 60, 100, .2);
	transform: rotate(-2deg);
}

.intmed-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.intmed-photo-overlay {
	position: absolute;
	inset: 45% 0 0;
	background: linear-gradient(180deg, transparent, rgba(20, 42, 73, .48));
}

.intmed-photo-note {
	position: absolute;
	right: 12px;
	bottom: 13px;
	left: 12px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 12px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 9px 24px rgba(24, 44, 77, .12);
}

.intmed-photo-note > i {
	display: grid;
	width: 36px;
	height: 36px;
	flex: 0 0 36px;
	place-items: center;
	border-radius: 11px;
	background: #edf2ff;
	color: var(--intmed-blue);
	font-size: 1.05rem;
}

.intmed-photo-note strong,
.intmed-photo-note small {
	display: block;
}

.intmed-photo-note strong {
	color: #283c5b;
	font-size: .7rem;
}

.intmed-photo-note small {
	margin-top: 3px;
	color: #7c8ba0;
	font-size: .59rem;
}

.intmed-chart-card {
	position: absolute;
	right: -2px;
	bottom: 38px;
	z-index: 2;
	width: 240px;
	padding: 14px;
	border: 1px solid #e2e9f2;
	border-radius: 15px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 17px 40px rgba(31, 55, 91, .16);
}

.intmed-chart-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 10px;
	color: #314661;
	font-size: .7rem;
	font-weight: 750;
}

.intmed-chart-heading i {
	color: #95a2b3;
}

.intmed-chart-row {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 0;
	border-top: 1px solid #edf0f5;
}

.intmed-chart-row > i:first-child {
	color: var(--intmed-blue);
	font-size: .9rem;
}

.intmed-chart-row span {
	flex: 1;
}

.intmed-chart-row strong,
.intmed-chart-row small {
	display: block;
}

.intmed-chart-row strong {
	color: #354960;
	font-size: .59rem;
}

.intmed-chart-row small {
	margin-top: 2px;
	color: #8996a7;
	font-size: .51rem;
}

.intmed-chart-check {
	color: #3a9a78;
	font-size: .75rem;
}

.intmed-chart-arrow {
	color: #8d9caf;
	font-size: .7rem;
}

.intmed-chart-foot {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 7px;
	padding-top: 8px;
	border-top: 1px solid #edf0f5;
	color: #7f8da0;
	font-size: .54rem;
}

.intmed-chart-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #38a582;
}

.intmed-float-label {
	position: absolute;
	top: 69px;
	left: 7px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 13px;
	border: 1px solid #e1e8f2;
	border-radius: 50px;
	background: #fff;
	color: #405572;
	font-size: .69rem;
	font-weight: 700;
	box-shadow: 0 10px 26px rgba(31, 55, 91, .11);
}

.intmed-float-label i {
	color: var(--intmed-teal);
}

.intmed-capability-strip {
	padding: 23px 0 25px;
	border-top: 1px solid #e6ebf2;
	border-bottom: 1px solid #e6ebf2;
	background: #fff;
}

.intmed-capability-strip > .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
}

.intmed-capability-intro {
	color: #8290a1;
	font-size: .7rem;
	font-weight: 750;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.intmed-capability-items {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 12px 31px;
}

.intmed-capability-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #43556d;
	font-size: .79rem;
	font-weight: 650;
}

.intmed-capability-items i {
	color: var(--intmed-teal);
	font-size: .95rem;
}

.intmed-overview-section {
	padding: 76px 0 80px;
	background: #fff;
}

.intmed-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.95rem, 3.2vw, 2.75rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.intmed-overview-section .intmed-section-title {
	max-width: 520px;
}

.intmed-section-copy {
	margin: 0;
	font-size: .92rem;
}

.intmed-overview-detail {
	margin-top: 12px;
}

.intmed-overview-section .intmed-inline-link {
	margin-top: 17px;
}

.intmed-focus-cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 13px;
	margin-top: 42px;
}

.intmed-focus-card {
	display: flex;
	align-items: flex-start;
	gap: 13px;
	padding: 19px;
	border: 1px solid #e4eaf2;
	border-radius: 12px;
	background: #f9fafc;
}

.intmed-focus-icon {
	display: grid;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	place-items: center;
	border-radius: 11px;
	background: #eaf0ff;
	color: var(--intmed-blue);
	font-size: 1rem;
}

.intmed-focus-card strong,
.intmed-focus-card small {
	display: block;
}

.intmed-focus-card strong {
	margin: 1px 0 5px;
	color: #344961;
	font-size: .78rem;
}

.intmed-focus-card small {
	color: #7c899b;
	font-size: .69rem;
	line-height: 1.55;
}

.intmed-workflows-section {
	padding: 82px 0 89px;
	background: #f4f6fa;
}

.intmed-section-header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 35px;
}

.intmed-section-header > div {
	max-width: 640px;
}

.intmed-section-header > .intmed-section-copy {
	max-width: 380px;
	margin-bottom: 4px;
	font-size: .86rem;
}

.intmed-workflow-grid {
	margin-top: 33px;
}

.intmed-workflow-card {
	height: 100%;
	padding: 25px;
	border: 1px solid #e3e9f1;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(35, 56, 84, .045);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.intmed-workflow-card:hover {
	transform: translateY(-4px);
	border-color: #d5deee;
	box-shadow: 0 16px 32px rgba(35, 56, 84, .1);
}

.intmed-workflow-icon {
	display: grid;
	width: 47px;
	height: 47px;
	place-items: center;
	border-radius: 13px;
	font-size: 1.13rem;
}

.intmed-tone-lilac {
	background: #efebfb;
	color: #735ca8;
}

.intmed-tone-blue {
	background: #e9efff;
	color: #426bd0;
}

.intmed-tone-teal {
	background: #e4f4f1;
	color: #23887f;
}

.intmed-tone-amber {
	background: #fff3df;
	color: #b27b24;
}

.intmed-tone-rose {
	background: #faeaf0;
	color: #b15d7d;
}

.intmed-tone-green {
	background: #e8f3e9;
	color: #48835a;
}

.intmed-card-label {
	display: block;
	margin-top: 19px;
	color: #8b98aa;
	font-size: .59rem;
	font-weight: 750;
	letter-spacing: .1em;
}

.intmed-workflow-card h3 {
	margin: 7px 0 8px;
	font-size: 1.02rem;
	font-weight: 720;
	letter-spacing: -.02em;
}

.intmed-workflow-card p {
	margin: 0;
	color: var(--intmed-muted);
	font-size: .81rem;
	line-height: 1.75;
}

.intmed-workflow-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 15px;
	color: var(--intmed-blue);
	font-size: .76rem;
	font-weight: 700;
}

.intmed-workflow-card > a:hover {
	color: #2d54b4;
}

.intmed-workflow-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 14px;
}

.intmed-workflow-tags span {
	padding: 5px 8px;
	border: 1px solid #e7ebf1;
	border-radius: 30px;
	background: #fafbfd;
	color: #718096;
	font-size: .6rem;
	font-weight: 650;
}

.intmed-insights-section {
	padding: 84px 0;
	background: #fff;
}

.intmed-insights-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 26px 0;
}

.intmed-insights-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 18px 58px 18px 18px;
	object-fit: cover;
	box-shadow: 0 22px 48px rgba(33, 56, 88, .14);
}

.intmed-insights-badge {
	position: absolute;
	top: 22px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 11px 14px;
	border: 1px solid #e2e9f1;
	border-radius: 13px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 11px 27px rgba(32, 56, 88, .12);
}

.intmed-insights-badge > i {
	color: var(--intmed-teal);
	font-size: 1.15rem;
}

.intmed-insights-badge strong,
.intmed-insights-badge small {
	display: block;
}

.intmed-insights-badge strong {
	color: #344a62;
	font-size: .7rem;
}

.intmed-insights-badge small {
	margin-top: 3px;
	color: #8290a2;
	font-size: .58rem;
}

.intmed-insights-caption {
	position: absolute;
	right: 0;
	bottom: 3px;
	display: flex;
	align-items: center;
	gap: 7px;
	padding: 10px 13px;
	border: 1px solid #e2e9f1;
	border-radius: 30px;
	background: #fff;
	color: #53687d;
	font-size: .66rem;
	font-weight: 700;
	box-shadow: 0 9px 23px rgba(32, 56, 88, .1);
}

.intmed-insights-caption i {
	color: var(--intmed-blue);
	font-size: 1rem;
}

.intmed-insights-section .intmed-section-title {
	margin-bottom: 13px;
}

.intmed-check-list {
	display: grid;
	gap: 12px;
	margin: 21px 0 0;
	padding: 0;
	list-style: none;
}

.intmed-check-list li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #475b72;
	font-size: .82rem;
}

.intmed-check-list i {
	display: grid;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	place-items: center;
	border-radius: 50%;
	background: #e4f3f0;
	color: #23887f;
	font-size: .76rem;
}

.intmed-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 20px 0 0;
	padding: 12px 13px;
	border: 1px solid #e4e9f1;
	border-radius: 10px;
	background: #f8f9fb;
	color: #718096;
	font-size: .71rem;
	line-height: 1.65;
}

.intmed-disclaimer i {
	margin-top: 2px;
	color: var(--intmed-blue);
}

.intmed-journey-section {
	padding: 78px 0 84px;
	background: #f4f6fa;
}

.intmed-journey-heading {
	max-width: 720px;
	margin: 0 auto;
}

.intmed-journey-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 15px;
	margin-top: 36px;
}

.intmed-journey-step {
	position: relative;
	padding: 23px 20px;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	background: #fff;
}

.intmed-step-number {
	position: absolute;
	top: 19px;
	right: 19px;
	color: #aab5c3;
	font-size: .68rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.intmed-step-icon {
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	border: 1px solid #dfe7f7;
	border-radius: 14px;
	background: #edf2ff;
	color: var(--intmed-blue);
	font-size: 1.1rem;
}

.intmed-journey-step h3 {
	margin: 16px 0 7px;
	font-size: .98rem;
	font-weight: 720;
}

.intmed-journey-step p {
	margin: 0;
	color: var(--intmed-muted);
	font-size: .75rem;
	line-height: 1.7;
}

.intmed-faq-section {
	padding: 80px 0;
	background: #fff;
}

.intmed-faq-section .intmed-section-title {
	margin-bottom: 12px;
}

.intmed-faq-section .intmed-section-copy {
	margin-bottom: 16px;
	font-size: .88rem;
}

.intmed-faq-list {
	border-top: 1px solid #e0e7f0;
}

.intmed-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #e0e7f0;
}

.intmed-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--intmed-ink);
	font-size: .93rem;
	font-weight: 700;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.intmed-faq-item summary::-webkit-details-marker {
	display: none;
}

.intmed-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--intmed-blue);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.intmed-faq-item[open] summary::after {
	content: "\f2ea";
}

.intmed-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--intmed-muted);
	font-size: .84rem;
	line-height: 1.75;
}

.intmed-cta-section {
	padding: 68px 0 84px;
	background: #f4f6fa;
}

.intmed-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 47px 51px;
	border-radius: 21px;
	background:
		radial-gradient(circle at 90% 4%, rgba(114, 192, 190, .26), transparent 28%),
		linear-gradient(120deg, #18304e 0%, #294e83 57%, #346c99 100%);
	box-shadow: 0 20px 45px rgba(34, 67, 110, .22);
}

.intmed-cta-panel h2 {
	max-width: 650px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.85rem, 3vw, 2.5rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.intmed-cta-kicker {
	margin: 0 0 13px;
	color: #c8e5e5;
	font-size: .7rem;
	font-weight: 750;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.intmed-cta-panel p:not(.intmed-cta-kicker) {
	max-width: 600px;
	margin: 0;
	color: rgba(255, 255, 255, .8);
	font-size: .88rem;
	line-height: 1.75;
}

.intmed-button-light {
	background: #fff;
	color: #244e7b;
	box-shadow: none;
}

.intmed-button-light:hover,
.intmed-button-light:focus {
	transform: translateY(-2px);
	background: #edf5f7;
	color: #183c67;
}

.intmed-cta-link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .85);
	font-size: .78rem;
	font-weight: 650;
}

.intmed-cta-link:hover,
.intmed-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.intmed-hero {
		padding-top: 70px;
	}

	.intmed-hero-visual {
		max-width: 700px;
		margin: 0 auto;
	}

	.intmed-capability-strip > .container {
		align-items: flex-start;
		flex-direction: column;
		gap: 13px;
	}

	.intmed-capability-items {
		justify-content: flex-start;
	}

	.intmed-section-header {
		display: block;
	}

	.intmed-section-header > .intmed-section-copy {
		max-width: 620px;
		margin-top: 13px;
	}

	.intmed-insights-visual {
		max-width: 700px;
	}

	.intmed-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 767.98px) {
	.intmed-focus-cards {
		grid-template-columns: 1fr;
		margin-top: 28px;
	}

	.intmed-journey-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {
	.intmed-hero {
		padding: 54px 0 58px;
	}

	.intmed-hero h1 {
		font-size: 2.45rem;
	}

	.intmed-hero-copy {
		font-size: .92rem;
	}

	.intmed-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.intmed-button-primary {
		padding: 0 16px;
		font-size: .79rem;
	}

	.intmed-hero-visual {
		min-height: 385px;
	}

	.intmed-ring-back {
		width: 330px;
		height: 330px;
	}

	.intmed-ring-front {
		width: 275px;
		height: 275px;
	}

	.intmed-hero-photo {
		width: min(70%, 300px);
		height: 320px;
		border-width: 6px;
		border-radius: 150px 150px 22px 22px;
	}

	.intmed-photo-note {
		right: 8px;
		bottom: 9px;
		left: 8px;
		gap: 7px;
		padding: 9px;
	}

	.intmed-photo-note > i {
		width: 31px;
		height: 31px;
		flex-basis: 31px;
		font-size: .92rem;
	}

	.intmed-photo-note strong {
		font-size: .61rem;
	}

	.intmed-photo-note small {
		font-size: .51rem;
	}

	.intmed-chart-card {
		right: -4px;
		bottom: 19px;
		width: 205px;
		padding: 11px;
	}

	.intmed-chart-heading {
		font-size: .64rem;
	}

	.intmed-chart-row {
		gap: 6px;
		padding: 7px 0;
	}

	.intmed-chart-row strong {
		font-size: .53rem;
	}

	.intmed-chart-row small {
		font-size: .47rem;
	}

	.intmed-chart-foot {
		font-size: .49rem;
	}

	.intmed-float-label {
		top: 35px;
		left: -3px;
		padding: 9px 10px;
		font-size: .6rem;
	}

	.intmed-capability-items {
		gap: 11px;
	}

	.intmed-capability-items span {
		width: calc(50% - 6px);
		font-size: .71rem;
	}

	.intmed-overview-section,
	.intmed-workflows-section,
	.intmed-insights-section,
	.intmed-journey-section,
	.intmed-faq-section {
		padding: 58px 0;
	}

	.intmed-section-title {
		font-size: 1.9rem;
	}

	.intmed-focus-card {
		padding: 16px;
	}

	.intmed-workflow-grid {
		margin-top: 22px;
	}

	.intmed-workflow-card {
		padding: 22px;
	}

	.intmed-insights-visual {
		min-height: 305px;
		padding: 0 13px 23px 0;
	}

	.intmed-insights-visual > img {
		height: 285px;
		border-radius: 16px 42px 16px 16px;
	}

	.intmed-insights-badge {
		top: 12px;
		left: -3px;
		gap: 7px;
		padding: 9px 10px;
	}

	.intmed-insights-badge strong {
		font-size: .62rem;
	}

	.intmed-insights-badge small {
		font-size: .53rem;
	}

	.intmed-insights-caption {
		right: 0;
		bottom: 3px;
		padding: 9px 10px;
		font-size: .57rem;
	}

	.intmed-journey-grid {
		gap: 10px;
		margin-top: 24px;
	}

	.intmed-journey-step {
		padding: 16px;
	}

	.intmed-journey-step p {
		font-size: .7rem;
	}

	.intmed-faq-item summary {
		padding-right: 33px;
		font-size: .87rem;
	}

	.intmed-faq-item p {
		margin-right: 4px;
	}

	.intmed-cta-section {
		padding: 43px 0 56px;
	}

	.intmed-cta-panel {
		padding: 29px 23px;
		border-radius: 16px;
	}

	.intmed-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.intmed-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.intmed-workflow-card,
	.intmed-button-primary,
	.intmed-button-light {
		transition: none;
	}
}

/* General medicine EMR landing page */
.generalmed-page {
	--generalmed-ink: #203a32;
	--generalmed-muted: #64756f;
	--generalmed-green: #26755c;
	--generalmed-green-dark: #1c5747;
	--generalmed-gold: #d7a74b;
	overflow: hidden;
	color: var(--generalmed-muted);
}

.generalmed-page h1,
.generalmed-page h2,
.generalmed-page h3 {
	color: var(--generalmed-ink);
}

.generalmed-hero {
	position: relative;
	padding: 86px 0 90px;
	background:
		radial-gradient(ellipse at 88% 14%, rgba(218, 174, 91, .15), transparent 30%),
		linear-gradient(130deg, #f5faf6 0%, #fffdf8 58%, #f8f5e9 100%);
}

.generalmed-eyebrow,
.generalmed-kicker {
	margin: 0 0 15px;
	color: var(--generalmed-green);
	font-size: .76rem;
	font-weight: 750;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.generalmed-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #dbe9dd;
	border-radius: 40px;
	background: rgba(255, 255, 255, .78);
	letter-spacing: .07em;
}

.generalmed-hero h1 {
	max-width: 630px;
	margin: 15px 0 20px;
	font-size: clamp(2.65rem, 4.8vw, 4.25rem);
	font-weight: 760;
	letter-spacing: -.06em;
	line-height: 1.06;
}

.generalmed-hero h1 span {
	color: var(--generalmed-green);
}

.generalmed-hero-copy,
.generalmed-section-copy {
	color: var(--generalmed-muted);
	font-size: .98rem;
	line-height: 1.85;
}

.generalmed-hero-copy {
	max-width: 590px;
	margin-bottom: 0;
}

.generalmed-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 23px;
	margin-top: 29px;
}

.generalmed-button-primary,
.generalmed-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 21px;
	border: 0;
	border-radius: 9px;
	background: var(--generalmed-green);
	color: #fff;
	font-size: .88rem;
	font-weight: 700;
	box-shadow: 0 12px 25px rgba(38, 117, 92, .2);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.generalmed-button-primary:hover,
.generalmed-button-primary:focus {
	transform: translateY(-2px);
	background: var(--generalmed-green-dark);
	color: #fff;
	box-shadow: 0 16px 30px rgba(38, 117, 92, .27);
}

.generalmed-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--generalmed-green-dark);
	font-size: .88rem;
	font-weight: 700;
}

.generalmed-text-link:hover,
.generalmed-text-link:focus {
	color: var(--generalmed-green);
}

.generalmed-hero-footnote {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #71827a;
	font-size: .78rem;
}

.generalmed-hero-footnote i {
	color: var(--generalmed-green);
	font-size: 1rem;
}

.generalmed-hero-art {
	position: relative;
	display: grid;
	min-height: 470px;
	place-items: center;
	max-width: 610px;
	margin: 0 0 0 auto;
}

.generalmed-orbit {
	position: absolute;
	border: 1px solid rgba(38, 117, 92, .15);
	border-radius: 50%;
}

.generalmed-orbit-one {
	width: 430px;
	height: 430px;
}

.generalmed-orbit-two {
	width: 360px;
	height: 360px;
	border-style: dashed;
	border-color: rgba(215, 167, 75, .35);
}

.generalmed-hero-image {
	position: relative;
	width: min(76%, 390px);
	height: 405px;
	overflow: hidden;
	border: 8px solid rgba(255, 255, 255, .92);
	border-radius: 48% 48% 28px 28px;
	background: #e7eee9;
	box-shadow: 0 30px 65px rgba(40, 74, 57, .19);
	transform: rotate(2deg);
}

.generalmed-hero-image > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.generalmed-image-label {
	position: absolute;
	right: 13px;
	bottom: 14px;
	left: 13px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 12px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 12px;
	background: rgba(255, 255, 255, .95);
	color: #355a49;
	font-size: .73rem;
	font-weight: 700;
	box-shadow: 0 8px 24px rgba(30, 63, 47, .12);
}

.generalmed-image-label i {
	color: var(--generalmed-green);
	font-size: 1.1rem;
}

.generalmed-note-card {
	position: absolute;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border: 1px solid rgba(222, 232, 221, .9);
	border-radius: 14px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 15px 35px rgba(33, 63, 46, .13);
}

.generalmed-note-record {
	top: 72px;
	left: 0;
}

.generalmed-note-visit {
	right: -2px;
	bottom: 75px;
}

.generalmed-note-icon,
.generalmed-visit-icon {
	display: grid;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	place-items: center;
	border-radius: 12px;
	background: #eaf4ec;
	color: var(--generalmed-green);
	font-size: 1.1rem;
}

.generalmed-visit-icon {
	background: #fff4da;
	color: #b57f20;
}

.generalmed-note-card strong,
.generalmed-note-card small {
	display: block;
}

.generalmed-note-card strong {
	color: #294638;
	font-size: .74rem;
}

.generalmed-note-card small {
	margin-top: 4px;
	color: #7a8b81;
	font-size: .61rem;
}

.generalmed-visit-arrow {
	margin-left: 6px;
	color: #8ca091;
	font-size: .8rem;
}

.generalmed-deco-cross {
	position: absolute;
	color: #d2a74e;
	font-family: Arial, sans-serif;
	font-weight: 300;
	line-height: 1;
}

.generalmed-cross-one {
	top: 57px;
	right: 57px;
	font-size: 2.4rem;
}

.generalmed-cross-two {
	bottom: 55px;
	left: 42px;
	color: #72a78d;
	font-size: 1.8rem;
}

.generalmed-value-bar {
	padding: 24px 0 27px;
	border-top: 1px solid #e7eee7;
	border-bottom: 1px solid #e7eee7;
	background: #fff;
	text-align: center;
}

.generalmed-value-bar > .container > p {
	margin: 0 0 16px;
	color: #86938a;
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.generalmed-value-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 13px 44px;
}

.generalmed-value-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #3b5144;
	font-size: .83rem;
	font-weight: 650;
}

.generalmed-value-items i {
	color: var(--generalmed-green);
	font-size: 1rem;
}

.generalmed-intro-section {
	padding: 78px 0 76px;
	background: #fff;
}

.generalmed-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.95rem, 3.2vw, 2.8rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.18;
}

.generalmed-intro-section .generalmed-section-title {
	max-width: 650px;
	margin-bottom: 0;
}

.generalmed-intro-section .generalmed-section-copy {
	margin: 0 0 15px;
}

.generalmed-highlight-row {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin-top: 44px;
}

.generalmed-highlight {
	display: flex;
	align-items: flex-start;
	gap: 15px;
	padding: 21px 19px;
	border: 1px solid #e5ece4;
	border-radius: 12px;
	background: #fbfcf8;
}

.generalmed-highlight-number {
	color: #83a18c;
	font-size: .72rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.generalmed-highlight strong,
.generalmed-highlight small {
	display: block;
}

.generalmed-highlight strong {
	margin-bottom: 5px;
	color: #30483a;
	font-size: .85rem;
}

.generalmed-highlight small {
	color: #7b8980;
	font-size: .74rem;
	line-height: 1.55;
}

.generalmed-workflows-section {
	padding: 82px 0 90px;
	background: #f4f7f2;
}

.generalmed-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 35px;
}

.generalmed-section-heading > div {
	max-width: 620px;
}

.generalmed-section-heading > .generalmed-section-copy {
	max-width: 390px;
	margin-bottom: 5px;
	font-size: .9rem;
}

.generalmed-workflow-grid {
	margin-top: 34px;
}

.generalmed-workflow-card {
	position: relative;
	height: 100%;
	padding: 27px;
	border: 1px solid #e4ebe1;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(47, 72, 50, .045);
	transition: transform .2s ease, box-shadow .2s ease;
}

.generalmed-workflow-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 32px rgba(47, 72, 50, .1);
}

.generalmed-card-icon {
	display: grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: 14px;
	font-size: 1.18rem;
}

.generalmed-icon-green {
	background: #e7f3e9;
	color: #347a4e;
}

.generalmed-icon-yellow {
	background: #fff4d9;
	color: #ae7d20;
}

.generalmed-icon-blue {
	background: #e8f0fb;
	color: #356da7;
}

.generalmed-icon-purple {
	background: #f1eafa;
	color: #7956a1;
}

.generalmed-icon-orange {
	background: #fff0e3;
	color: #b97035;
}

.generalmed-icon-teal {
	background: #e3f3f0;
	color: #288578;
}

.generalmed-card-index {
	margin-top: 22px;
	color: #93a196;
	font-size: .62rem;
	font-weight: 750;
	letter-spacing: .1em;
}

.generalmed-workflow-card h3 {
	margin: 7px 0 9px;
	font-size: 1.08rem;
	font-weight: 720;
	letter-spacing: -.025em;
}

.generalmed-workflow-card p {
	margin: 0;
	color: var(--generalmed-muted);
	font-size: .84rem;
	line-height: 1.75;
}

.generalmed-workflow-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 16px;
	color: var(--generalmed-green);
	font-size: .78rem;
	font-weight: 700;
}

.generalmed-workflow-card > a:hover {
	color: var(--generalmed-green-dark);
}

.generalmed-card-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 16px;
}

.generalmed-card-meta span {
	padding: 6px 9px;
	border: 1px solid #e7ede5;
	border-radius: 30px;
	background: #fafbf8;
	color: #718078;
	font-size: .62rem;
	font-weight: 650;
}

.generalmed-continuity-section {
	padding: 86px 0;
	background: #fff;
}

.generalmed-continuity-art {
	position: relative;
	max-width: 550px;
	min-height: 405px;
	padding: 0 25px 30px 0;
}

.generalmed-continuity-art > img {
	width: 100%;
	height: 380px;
	border-radius: 24px 24px 70px 24px;
	object-fit: cover;
	box-shadow: 0 23px 52px rgba(40, 74, 57, .15);
}

.generalmed-continuity-stamp {
	position: absolute;
	top: 23px;
	left: -13px;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid #e3ebe2;
	border-radius: 30px;
	background: #fff;
	color: #41634e;
	font-size: .69rem;
	font-weight: 700;
	box-shadow: 0 9px 25px rgba(34, 67, 44, .12);
}

.generalmed-continuity-stamp i {
	color: #40875f;
}

.generalmed-timeline-card {
	position: absolute;
	right: 0;
	bottom: 4px;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 13px 15px;
	border: 1px solid #e1e9df;
	border-radius: 13px;
	background: #fff;
	box-shadow: 0 12px 28px rgba(34, 67, 44, .12);
}

.generalmed-timeline-dot {
	width: 10px;
	height: 10px;
	flex: 0 0 10px;
	border: 3px solid #cce3d0;
	border-radius: 50%;
	background: #38845b;
	box-sizing: content-box;
}

.generalmed-timeline-card strong,
.generalmed-timeline-card small {
	display: block;
}

.generalmed-timeline-card strong {
	color: #385442;
	font-size: .73rem;
}

.generalmed-timeline-card small {
	margin-top: 3px;
	color: #819087;
	font-size: .62rem;
}

.generalmed-timeline-card > i {
	margin-left: 7px;
	color: #41845a;
	font-size: .95rem;
}

.generalmed-continuity-section .generalmed-section-title {
	margin-bottom: 14px;
}

.generalmed-check-list {
	display: grid;
	gap: 12px;
	margin: 21px 0 0;
	padding: 0;
	list-style: none;
}

.generalmed-check-list li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #465d4d;
	font-size: .85rem;
}

.generalmed-check-list i {
	display: grid;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	place-items: center;
	border-radius: 50%;
	background: #e8f3e9;
	color: #347a4e;
	font-size: .76rem;
}

.generalmed-clinical-note {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	margin: 22px 0 0;
	padding: 13px 14px;
	border: 1px solid #e4ebe1;
	border-radius: 10px;
	background: #f8faf6;
	color: #708077;
	font-size: .73rem;
	line-height: 1.65;
}

.generalmed-clinical-note i {
	margin-top: 2px;
	color: var(--generalmed-green);
}

.generalmed-day-section {
	padding: 78px 0 84px;
	background: #f4f7f2;
}

.generalmed-day-heading {
	max-width: 700px;
	margin: 0 auto;
}

.generalmed-day-track {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
	margin-top: 42px;
}

.generalmed-day-track::before {
	position: absolute;
	top: 45px;
	right: 11%;
	left: 11%;
	border-top: 1px dashed #c9d8c8;
	content: "";
}

.generalmed-day-step {
	position: relative;
	z-index: 1;
	padding: 20px;
	border: 1px solid #e4ebe1;
	border-radius: 14px;
	background: #fff;
}

.generalmed-step-number {
	position: absolute;
	top: 19px;
	right: 19px;
	color: #a9b9a9;
	font-size: .7rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.generalmed-step-icon {
	display: grid;
	width: 50px;
	height: 50px;
	place-items: center;
	border: 5px solid #f4f7f2;
	border-radius: 50%;
	background: #e7f2e7;
	color: #347a4e;
	font-size: 1.08rem;
	box-shadow: 0 0 0 1px #dbe8d9;
}

.generalmed-day-step h3 {
	margin: 17px 0 7px;
	font-size: 1rem;
	font-weight: 720;
}

.generalmed-day-step p {
	margin: 0;
	color: var(--generalmed-muted);
	font-size: .78rem;
	line-height: 1.7;
}

.generalmed-faq-section {
	padding: 80px 0;
	background: #fff;
}

.generalmed-faq-section .generalmed-section-title {
	margin-bottom: 13px;
}

.generalmed-faq-section .generalmed-section-copy {
	margin-bottom: 16px;
	font-size: .9rem;
}

.generalmed-faq-list {
	border-top: 1px solid #e0e8df;
}

.generalmed-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #e0e8df;
}

.generalmed-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--generalmed-ink);
	font-size: .94rem;
	font-weight: 700;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.generalmed-faq-item summary::-webkit-details-marker {
	display: none;
}

.generalmed-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--generalmed-green);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.generalmed-faq-item[open] summary::after {
	content: "\f2ea";
}

.generalmed-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--generalmed-muted);
	font-size: .86rem;
	line-height: 1.75;
}

.generalmed-cta-section {
	padding: 68px 0 84px;
	background: #f4f7f2;
}

.generalmed-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 20px;
	background:
		radial-gradient(circle at 88% 6%, rgba(226, 191, 119, .27), transparent 29%),
		linear-gradient(120deg, #1d5142 0%, #26755c 62%, #3b8868 100%);
	box-shadow: 0 20px 45px rgba(37, 100, 74, .2);
}

.generalmed-cta-panel h2 {
	max-width: 670px;
	margin: 0 0 12px;
	color: #fff;
	font-size: clamp(1.85rem, 3vw, 2.55rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.generalmed-cta-kicker {
	margin: 0 0 13px;
	color: #d8ecdd;
	font-size: .7rem;
	font-weight: 750;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.generalmed-cta-panel p:not(.generalmed-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .8);
	font-size: .9rem;
	line-height: 1.75;
}

.generalmed-button-light {
	background: #fff;
	color: #235f48;
	box-shadow: none;
}

.generalmed-button-light:hover,
.generalmed-button-light:focus {
	transform: translateY(-2px);
	background: #f4f8f1;
	color: #174c39;
}

.generalmed-cta-link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 14px;
	color: rgba(255, 255, 255, .85);
	font-size: .79rem;
	font-weight: 650;
}

.generalmed-cta-link:hover,
.generalmed-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.generalmed-hero {
		padding-top: 70px;
	}

	.generalmed-hero-art {
		max-width: 700px;
		margin: 0 auto;
	}

	.generalmed-section-heading {
		display: block;
	}

	.generalmed-section-heading > .generalmed-section-copy {
		max-width: 620px;
		margin-top: 15px;
	}

	.generalmed-continuity-art {
		max-width: 700px;
	}

	.generalmed-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 767.98px) {
	.generalmed-highlight-row {
		grid-template-columns: 1fr;
		margin-top: 30px;
	}

	.generalmed-day-track {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.generalmed-day-track::before {
		display: none;
	}
}

@media (max-width: 575.98px) {
	.generalmed-hero {
		padding: 54px 0 58px;
	}

	.generalmed-hero h1 {
		font-size: 2.45rem;
	}

	.generalmed-hero-copy {
		font-size: .92rem;
	}

	.generalmed-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.generalmed-button-primary {
		padding: 0 16px;
		font-size: .8rem;
	}

	.generalmed-hero-art {
		min-height: 365px;
	}

	.generalmed-orbit-one {
		width: 335px;
		height: 335px;
	}

	.generalmed-orbit-two {
		width: 280px;
		height: 280px;
	}

	.generalmed-hero-image {
		width: min(76%, 310px);
		height: 315px;
		border-width: 6px;
		border-radius: 48% 48% 22px 22px;
	}

	.generalmed-image-label {
		right: 9px;
		bottom: 10px;
		left: 9px;
		gap: 7px;
		padding: 10px;
		font-size: .63rem;
	}

	.generalmed-note-card {
		gap: 7px;
		padding: 9px 10px;
	}

	.generalmed-note-record {
		top: 48px;
		left: -2px;
	}

	.generalmed-note-visit {
		right: -4px;
		bottom: 43px;
	}

	.generalmed-note-icon,
	.generalmed-visit-icon {
		width: 33px;
		height: 33px;
		flex-basis: 33px;
		border-radius: 10px;
		font-size: .94rem;
	}

	.generalmed-note-card strong {
		font-size: .63rem;
	}

	.generalmed-note-card small {
		font-size: .52rem;
	}

	.generalmed-cross-one {
		top: 34px;
		right: 22px;
	}

	.generalmed-cross-two {
		bottom: 27px;
		left: 15px;
	}

	.generalmed-value-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.generalmed-value-items span {
		width: calc(50% - 6px);
		font-size: .74rem;
		text-align: left;
	}

	.generalmed-intro-section,
	.generalmed-workflows-section,
	.generalmed-continuity-section,
	.generalmed-day-section,
	.generalmed-faq-section {
		padding: 58px 0;
	}

	.generalmed-section-title {
		font-size: 1.9rem;
	}

	.generalmed-highlight {
		padding: 17px;
	}

	.generalmed-workflow-grid {
		margin-top: 22px;
	}

	.generalmed-workflow-card {
		padding: 23px;
	}

	.generalmed-continuity-art {
		min-height: 305px;
		padding: 0 13px 23px 0;
	}

	.generalmed-continuity-art > img {
		height: 285px;
		border-radius: 18px 18px 48px 18px;
	}

	.generalmed-continuity-stamp {
		top: 12px;
		left: -3px;
		gap: 6px;
		padding: 9px 11px;
		font-size: .59rem;
	}

	.generalmed-timeline-card {
		right: 0;
		bottom: 3px;
		gap: 7px;
		padding: 10px;
	}

	.generalmed-timeline-card strong {
		font-size: .63rem;
	}

	.generalmed-timeline-card small {
		font-size: .54rem;
	}

	.generalmed-day-track {
		gap: 11px;
		margin-top: 25px;
	}

	.generalmed-day-step {
		padding: 16px;
	}

	.generalmed-day-step p {
		font-size: .73rem;
	}

	.generalmed-faq-item summary {
		padding-right: 32px;
		font-size: .88rem;
	}

	.generalmed-faq-item p {
		margin-right: 4px;
	}

	.generalmed-cta-section {
		padding: 43px 0 56px;
	}

	.generalmed-cta-panel {
		padding: 29px 23px;
		border-radius: 16px;
	}

	.generalmed-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.generalmed-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.generalmed-workflow-card,
	.generalmed-button-primary,
	.generalmed-button-light {
		transition: none;
	}
}

/* Ayurveda EMR landing page */
.ayur-page {
	--ayur-ink: #183b31;
	--ayur-muted: #66796f;
	--ayur-green: #287a56;
	--ayur-teal: #0b8588;
	--ayur-line: #e2ece5;
	overflow: hidden;
	color: var(--ayur-muted);
}

.ayur-page h1,
.ayur-page h2,
.ayur-page h3 {
	color: var(--ayur-ink);
}

.ayur-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(40, 122, 86, .11), transparent 32%),
		linear-gradient(135deg, #f8fbf6 0%, #fff 58%, #eff8f2 100%);
}

.ayur-eyebrow,
.ayur-section-kicker {
	margin: 0 0 14px;
	color: var(--ayur-green);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ayur-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d9eadd;
	border-radius: 50px;
	background: rgba(255, 255, 255, .84);
	letter-spacing: .07em;
}

.ayur-hero h1 {
	max-width: 650px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.ayur-hero h1 span {
	color: var(--ayur-green);
}

.ayur-hero-copy,
.ayur-section-copy {
	color: var(--ayur-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.ayur-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.ayur-hero-points,
.ayur-care-points {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ayur-hero-points li,
.ayur-care-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #334b40;
	font-size: .91rem;
}

.ayur-hero-points i {
	margin-top: 2px;
	color: #27875c;
}

.ayur-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.ayur-button-primary,
.ayur-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--ayur-green);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(40, 122, 86, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.ayur-button-primary:hover,
.ayur-button-primary:focus {
	transform: translateY(-2px);
	background: #1e6245;
	color: #fff;
	box-shadow: 0 14px 28px rgba(40, 122, 86, .25);
}

.ayur-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--ayur-green);
	font-size: .9rem;
	font-weight: 650;
}

.ayur-text-link:hover,
.ayur-text-link:focus {
	color: #1e6245;
}

.ayur-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #728376;
	font-size: .8rem;
}

.ayur-hero-note i {
	color: var(--ayur-teal);
	font-size: 1rem;
}

.ayur-hero-visual {
	position: relative;
	display: grid;
	min-height: 455px;
	place-items: center;
	max-width: 600px;
	margin-left: auto;
	padding: 12px 25px 27px 0;
}

.ayur-hero-photo {
	position: relative;
	width: min(100%, 455px);
	height: 385px;
	overflow: hidden;
	border: 7px solid #fff;
	border-radius: 27px;
	background: #eaf2ed;
	box-shadow: 0 28px 65px rgba(32, 70, 50, .16);
	transform: rotate(1.5deg);
}

.ayur-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ayur-photo-shade {
	position: absolute;
	inset: 35% 0 0;
	background: linear-gradient(180deg, transparent, rgba(15, 43, 29, .7));
}

.ayur-photo-caption {
	position: absolute;
	right: 17px;
	bottom: 17px;
	left: 17px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 14px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 10px 24px rgba(12, 30, 24, .14);
}

.ayur-photo-icon {
	display: grid;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	place-items: center;
	border-radius: 12px;
	background: #eef7ef;
	color: var(--ayur-green);
	font-size: 1.1rem;
}

.ayur-photo-caption strong,
.ayur-photo-caption small {
	display: block;
}

.ayur-photo-caption strong {
	color: #233d32;
	font-size: .77rem;
}

.ayur-photo-caption small {
	margin-top: 3px;
	color: #788b7e;
	font-size: .65rem;
}

.ayur-record-card {
	position: absolute;
	right: -3px;
	bottom: 66px;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border: 1px solid #e4ece5;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 15px 35px rgba(32, 65, 48, .14);
}

.ayur-record-icon {
	display: grid;
	width: 39px;
	height: 39px;
	place-items: center;
	border-radius: 12px;
	background: #eff8f1;
	color: var(--ayur-green);
	font-size: 1.1rem;
}

.ayur-record-card strong,
.ayur-record-card span:not(.ayur-record-check) {
	display: block;
}

.ayur-record-card strong {
	color: #273f34;
	font-size: .75rem;
}

.ayur-record-card span:not(.ayur-record-check) {
	margin-top: 3px;
	color: #849288;
	font-size: .61rem;
}

.ayur-record-check {
	display: grid;
	width: 23px;
	height: 23px;
	place-items: center;
	border-radius: 50%;
	background: #eaf7ef;
	color: #26875b;
	font-size: .78rem;
}

.ayur-floating-pill {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .97);
	color: #354a3e;
	font-size: .73rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 40, .12);
}

.ayur-floating-pill i {
	color: var(--ayur-green);
}

.ayur-pill-one {
	top: 28px;
	left: -8px;
}

.ayur-pill-two {
	right: 7px;
	bottom: 19px;
}

.ayur-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eee9;
	border-bottom: 1px solid #e9eee9;
	background: #fff;
	text-align: center;
}

.ayur-trust-strip > .container > p {
	margin: 0 0 17px;
	color: #748378;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.ayur-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.ayur-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #3d5146;
	font-size: .84rem;
	font-weight: 600;
}

.ayur-trust-items i {
	color: var(--ayur-green);
	font-size: 1rem;
}

.ayur-overview-section {
	padding: 68px 0;
	background: #fff;
}

.ayur-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.ayur-overview-section .ayur-section-title {
	max-width: 530px;
	margin-bottom: 0;
}

.ayur-section-copy {
	margin: 0;
}

.ayur-overview-followup {
	margin-top: 13px;
}

.ayur-overview-section .ayur-text-link {
	margin-top: 17px;
}

.ayur-features-section,
.ayur-workflow-section {
	padding: 82px 0 88px;
	background: #f5f8f5;
}

.ayur-section-heading {
	max-width: 760px;
	margin: 0 auto;
}

.ayur-section-heading .ayur-section-title {
	margin-bottom: 13px;
}

.ayur-feature-grid {
	margin-top: 28px;
}

.ayur-feature-card {
	height: 100%;
	padding: 28px;
	border: 1px solid #e4ece5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 9px 26px rgba(38, 74, 50, .045);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.ayur-feature-card:hover {
	transform: translateY(-4px);
	border-color: #cfe2d3;
	box-shadow: 0 16px 34px rgba(38, 74, 50, .09);
}

.ayur-icon-box {
	display: grid;
	width: 49px;
	height: 49px;
	place-items: center;
	border: 1px solid #dceade;
	border-radius: 14px;
	background: #f0f7f0;
	color: var(--ayur-green);
	font-size: 1.2rem;
}

.ayur-feature-card h3,
.ayur-workflow-card h3 {
	margin: 20px 0 9px;
	font-size: 1.08rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.ayur-feature-card p,
.ayur-workflow-card p {
	margin: 0;
	color: var(--ayur-muted);
	font-size: .87rem;
	line-height: 1.75;
}

.ayur-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 17px;
	color: var(--ayur-green);
	font-size: .81rem;
	font-weight: 650;
}

.ayur-feature-card > a:hover {
	color: #1e6245;
}

.ayur-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 17px;
}

.ayur-feature-tags span {
	padding: 6px 9px;
	border: 1px solid #e4ece5;
	border-radius: 50px;
	background: #f8fbf8;
	color: #64766a;
	font-size: .63rem;
	font-weight: 600;
}

.ayur-care-section {
	padding: 82px 0;
	background: #fff;
}

.ayur-care-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 27px 0;
}

.ayur-care-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 22px;
	object-fit: cover;
	box-shadow: 0 22px 50px rgba(32, 70, 50, .14);
}

.ayur-care-label {
	position: absolute;
	right: 8px;
	bottom: 4px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid #e3ece4;
	border-radius: 50px;
	background: #fff;
	color: #41584a;
	font-size: .72rem;
	font-weight: 650;
	box-shadow: 0 10px 26px rgba(32, 65, 48, .1);
}

.ayur-care-label i {
	color: var(--ayur-green);
}

.ayur-care-floating {
	position: absolute;
	top: 21px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 15px;
	border: 1px solid #e5ece5;
	border-radius: 14px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 12px 28px rgba(32, 65, 48, .11);
}

.ayur-care-floating > i {
	color: var(--ayur-green);
	font-size: 1.2rem;
}

.ayur-care-floating strong,
.ayur-care-floating small {
	display: block;
}

.ayur-care-floating strong {
	color: #293f33;
	font-size: .75rem;
}

.ayur-care-floating small {
	margin-top: 3px;
	color: #7d8d80;
	font-size: .62rem;
}

.ayur-care-section .ayur-section-title {
	margin-bottom: 13px;
}

.ayur-care-points {
	margin-top: 21px;
}

.ayur-care-points li {
	font-size: .86rem;
}

.ayur-care-points i {
	margin-top: 2px;
	color: #27875c;
}

.ayur-care-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 21px 0 0;
	padding: 12px 14px;
	border: 1px solid #e3ebe4;
	border-radius: 10px;
	background: #f8fbf8;
	color: #68796e;
	font-size: .76rem;
	line-height: 1.65;
}

.ayur-care-disclaimer i {
	margin-top: 2px;
	color: var(--ayur-green);
}

.ayur-workflow-grid {
	margin-top: 29px;
}

.ayur-workflow-card {
	position: relative;
	height: 100%;
	padding: 25px 23px;
	border: 1px solid #e4ece5;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(38, 74, 50, .04);
}

.ayur-workflow-number {
	position: absolute;
	top: 24px;
	right: 22px;
	color: #b4c2b6;
	font-size: .76rem;
	font-weight: 750;
	letter-spacing: .06em;
}

.ayur-workflow-card .ayur-icon-box {
	width: 44px;
	height: 44px;
	border-radius: 13px;
	font-size: 1.08rem;
}

.ayur-workflow-card h3 {
	margin-top: 17px;
}

.ayur-faq-section {
	padding: 80px 0;
	background: #fff;
}

.ayur-faq-section .ayur-section-title {
	margin-bottom: 13px;
}

.ayur-faq-section .ayur-section-copy {
	margin-bottom: 16px;
}

.ayur-faq-list {
	border-top: 1px solid #dce6dd;
}

.ayur-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #dce6dd;
}

.ayur-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--ayur-ink);
	font-size: .97rem;
	font-weight: 680;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.ayur-faq-item summary::-webkit-details-marker {
	display: none;
}

.ayur-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--ayur-green);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.ayur-faq-item[open] summary::after {
	content: "\f2ea";
}

.ayur-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--ayur-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.ayur-cta-section {
	padding: 70px 0 85px;
	background: #f5f8f5;
}

.ayur-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(154, 220, 175, .24), transparent 29%),
		linear-gradient(120deg, #1c563e 0%, #287a56 63%, #32916c 100%);
	box-shadow: 0 20px 48px rgba(40, 122, 86, .2);
}

.ayur-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.ayur-cta-kicker {
	margin: 0 0 13px;
	color: #e0f1e5;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ayur-cta-panel p:not(.ayur-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .8);
	font-size: .91rem;
	line-height: 1.7;
}

.ayur-button-light {
	background: #fff;
	color: #1f6547;
	box-shadow: none;
}

.ayur-button-light:hover,
.ayur-button-light:focus {
	transform: translateY(-2px);
	background: #f0f7f1;
	color: #194d37;
}

.ayur-cta-contact {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .85);
	font-size: .81rem;
	font-weight: 600;
}

.ayur-cta-contact:hover,
.ayur-cta-contact:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.ayur-hero {
		padding-top: 70px;
	}

	.ayur-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.ayur-care-visual {
		max-width: 700px;
	}

	.ayur-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.ayur-hero {
		padding: 55px 0 60px;
	}

	.ayur-hero h1 {
		font-size: 2.45rem;
	}

	.ayur-hero-copy {
		font-size: .94rem;
	}

	.ayur-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.ayur-button-primary {
		padding: 0 17px;
		font-size: .82rem;
	}

	.ayur-hero-visual {
		min-height: 370px;
		padding: 0 7px 24px 0;
	}

	.ayur-hero-photo {
		height: 315px;
		border-width: 5px;
		border-radius: 20px;
	}

	.ayur-photo-caption {
		right: 9px;
		bottom: 9px;
		left: 9px;
		gap: 8px;
		padding: 10px;
	}

	.ayur-photo-caption strong {
		font-size: .68rem;
	}

	.ayur-photo-caption small {
		font-size: .58rem;
	}

	.ayur-photo-icon {
		width: 34px;
		height: 34px;
		flex-basis: 34px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.ayur-record-card {
		right: -1px;
		bottom: 42px;
		gap: 7px;
		padding: 9px;
	}

	.ayur-record-icon {
		width: 33px;
		height: 33px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.ayur-record-card strong {
		font-size: .67rem;
	}

	.ayur-record-card span:not(.ayur-record-check) {
		font-size: .53rem;
	}

	.ayur-record-check {
		width: 20px;
		height: 20px;
		font-size: .68rem;
	}

	.ayur-floating-pill {
		padding: 9px 11px;
		font-size: .61rem;
	}

	.ayur-pill-one {
		top: -9px;
		left: -2px;
	}

	.ayur-pill-two {
		right: -1px;
		bottom: 7px;
	}

	.ayur-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.ayur-trust-items span {
		width: calc(50% - 6px);
		font-size: .74rem;
		text-align: left;
	}

	.ayur-overview-section,
	.ayur-features-section,
	.ayur-care-section,
	.ayur-workflow-section,
	.ayur-faq-section {
		padding: 58px 0;
	}

	.ayur-feature-grid,
	.ayur-workflow-grid {
		margin-top: 19px;
	}

	.ayur-feature-card {
		padding: 23px;
	}

	.ayur-care-visual {
		min-height: 305px;
		padding: 0 14px 23px 0;
	}

	.ayur-care-visual > img {
		height: 285px;
		border-radius: 17px;
	}

	.ayur-care-floating {
		top: 12px;
		left: -3px;
		gap: 7px;
		padding: 9px 11px;
	}

	.ayur-care-floating > i {
		font-size: 1rem;
	}

	.ayur-care-floating strong {
		font-size: .67rem;
	}

	.ayur-care-floating small {
		font-size: .55rem;
	}

	.ayur-care-label {
		right: 0;
		bottom: 4px;
		padding: 9px 11px;
		font-size: .6rem;
	}

	.ayur-workflow-card {
		padding: 22px;
	}

	.ayur-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.ayur-faq-item p {
		margin-right: 4px;
	}

	.ayur-cta-section {
		padding: 45px 0 58px;
	}

	.ayur-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.ayur-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.ayur-cta-contact {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ayur-feature-card,
	.ayur-button-primary,
	.ayur-button-light {
		transition: none;
	}
}

/* Homeopathy EMR landing page */
.homeo-page {
	--homeo-ink: #183b31;
	--homeo-muted: #66796f;
	--homeo-green: #287a56;
	--homeo-teal: #0b8588;
	--homeo-line: #e2ece5;
	overflow: hidden;
	color: var(--homeo-muted);
}

.homeo-page h1,
.homeo-page h2,
.homeo-page h3 {
	color: var(--homeo-ink);
}

.homeo-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 16%, rgba(40, 122, 86, .11), transparent 32%),
		linear-gradient(135deg, #f8fbf6 0%, #fff 58%, #eff8f2 100%);
}

.homeo-eyebrow,
.homeo-section-kicker {
	margin: 0 0 14px;
	color: var(--homeo-green);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.homeo-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d9eadd;
	border-radius: 50px;
	background: rgba(255, 255, 255, .84);
	letter-spacing: .07em;
}

.homeo-hero h1 {
	max-width: 650px;
	margin: 12px 0 18px;
	font-size: clamp(2.5rem, 4.5vw, 4.1rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.08;
}

.homeo-hero h1 span {
	color: var(--homeo-green);
}

.homeo-hero-copy,
.homeo-section-copy {
	color: var(--homeo-muted);
	font-size: 1rem;
	line-height: 1.8;
}

.homeo-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.homeo-hero-points,
.homeo-care-points {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.homeo-hero-points li,
.homeo-care-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #334b40;
	font-size: .91rem;
}

.homeo-hero-points i {
	margin-top: 2px;
	color: #27875c;
}

.homeo-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.homeo-button-primary,
.homeo-button-light {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border: 0;
	border-radius: 10px;
	background: var(--homeo-green);
	color: #fff;
	font-size: .9rem;
	font-weight: 650;
	box-shadow: 0 10px 24px rgba(40, 122, 86, .18);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.homeo-button-primary:hover,
.homeo-button-primary:focus {
	transform: translateY(-2px);
	background: #1e6245;
	color: #fff;
	box-shadow: 0 14px 28px rgba(40, 122, 86, .25);
}

.homeo-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--homeo-green);
	font-size: .9rem;
	font-weight: 650;
}

.homeo-text-link:hover,
.homeo-text-link:focus {
	color: #1e6245;
}

.homeo-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #728376;
	font-size: .8rem;
}

.homeo-hero-note i {
	color: var(--homeo-teal);
	font-size: 1rem;
}

.homeo-hero-visual {
	position: relative;
	display: grid;
	min-height: 455px;
	place-items: center;
	max-width: 600px;
	margin-left: auto;
	padding: 12px 25px 27px 0;
}

.homeo-hero-photo {
	position: relative;
	width: min(100%, 455px);
	height: 385px;
	overflow: hidden;
	border: 7px solid #fff;
	border-radius: 27px;
	background: #eaf2ed;
	box-shadow: 0 28px 65px rgba(32, 70, 50, .16);
	transform: rotate(1.5deg);
}

.homeo-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.homeo-photo-shade {
	position: absolute;
	inset: 35% 0 0;
	background: linear-gradient(180deg, transparent, rgba(15, 43, 29, .7));
}

.homeo-photo-caption {
	position: absolute;
	right: 17px;
	bottom: 17px;
	left: 17px;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 14px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 10px 24px rgba(12, 30, 24, .14);
}

.homeo-photo-icon {
	display: grid;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	place-items: center;
	border-radius: 12px;
	background: #eef7ef;
	color: var(--homeo-green);
	font-size: 1.1rem;
}

.homeo-photo-caption strong,
.homeo-photo-caption small {
	display: block;
}

.homeo-photo-caption strong {
	color: #233d32;
	font-size: .77rem;
}

.homeo-photo-caption small {
	margin-top: 3px;
	color: #788b7e;
	font-size: .65rem;
}

.homeo-record-card {
	position: absolute;
	right: -3px;
	bottom: 66px;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border: 1px solid #e4ece5;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 15px 35px rgba(32, 65, 48, .14);
}

.homeo-record-icon {
	display: grid;
	width: 39px;
	height: 39px;
	place-items: center;
	border-radius: 12px;
	background: #eff8f1;
	color: var(--homeo-green);
	font-size: 1.1rem;
}

.homeo-record-card strong,
.homeo-record-card span:not(.homeo-record-check) {
	display: block;
}

.homeo-record-card strong {
	color: #273f34;
	font-size: .75rem;
}

.homeo-record-card span:not(.homeo-record-check) {
	margin-top: 3px;
	color: #849288;
	font-size: .61rem;
}

.homeo-record-check {
	display: grid;
	width: 23px;
	height: 23px;
	place-items: center;
	border-radius: 50%;
	background: #eaf7ef;
	color: #26875b;
	font-size: .78rem;
}

.homeo-floating-pill {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 50px;
	background: rgba(255, 255, 255, .97);
	color: #354a3e;
	font-size: .73rem;
	font-weight: 650;
	box-shadow: 0 10px 30px rgba(28, 55, 40, .12);
}

.homeo-floating-pill i {
	color: var(--homeo-green);
}

.homeo-pill-one {
	top: 28px;
	left: -8px;
}

.homeo-pill-two {
	right: 7px;
	bottom: 19px;
}

.homeo-trust-strip {
	padding: 25px 0 27px;
	border-top: 1px solid #e9eee9;
	border-bottom: 1px solid #e9eee9;
	background: #fff;
	text-align: center;
}

.homeo-trust-strip > .container > p {
	margin: 0 0 17px;
	color: #748378;
	font-size: .75rem;
	font-weight: 650;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.homeo-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px 40px;
}

.homeo-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #3d5146;
	font-size: .84rem;
	font-weight: 600;
}

.homeo-trust-items i {
	color: var(--homeo-green);
	font-size: 1rem;
}

.homeo-overview-section {
	padding: 68px 0;
	background: #fff;
}

.homeo-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3vw, 2.65rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.homeo-overview-section .homeo-section-title {
	max-width: 530px;
	margin-bottom: 0;
}

.homeo-section-copy {
	margin: 0;
}

.homeo-overview-followup {
	margin-top: 13px;
}

.homeo-overview-section .homeo-text-link {
	margin-top: 17px;
}

.homeo-features-section,
.homeo-workflow-section {
	padding: 82px 0 88px;
	background: #f5f8f5;
}

.homeo-section-heading {
	max-width: 760px;
	margin: 0 auto;
}

.homeo-section-heading .homeo-section-title {
	margin-bottom: 13px;
}

.homeo-feature-grid {
	margin-top: 28px;
}

.homeo-feature-card {
	height: 100%;
	padding: 28px;
	border: 1px solid #e4ece5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 9px 26px rgba(38, 74, 50, .045);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.homeo-feature-card:hover {
	transform: translateY(-4px);
	border-color: #cfe2d3;
	box-shadow: 0 16px 34px rgba(38, 74, 50, .09);
}

.homeo-icon-box {
	display: grid;
	width: 49px;
	height: 49px;
	place-items: center;
	border: 1px solid #dceade;
	border-radius: 14px;
	background: #f0f7f0;
	color: var(--homeo-green);
	font-size: 1.2rem;
}

.homeo-feature-card h3,
.homeo-workflow-card h3 {
	margin: 20px 0 9px;
	font-size: 1.08rem;
	font-weight: 700;
	letter-spacing: -.02em;
}

.homeo-feature-card p,
.homeo-workflow-card p {
	margin: 0;
	color: var(--homeo-muted);
	font-size: .87rem;
	line-height: 1.75;
}

.homeo-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 17px;
	color: var(--homeo-green);
	font-size: .81rem;
	font-weight: 650;
}

.homeo-feature-card > a:hover {
	color: #1e6245;
}

.homeo-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 17px;
}

.homeo-feature-tags span {
	padding: 6px 9px;
	border: 1px solid #e4ece5;
	border-radius: 50px;
	background: #f8fbf8;
	color: #64766a;
	font-size: .63rem;
	font-weight: 600;
}

.homeo-care-section {
	padding: 82px 0;
	background: #fff;
}

.homeo-care-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 27px 0;
}

.homeo-care-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 22px;
	object-fit: cover;
	box-shadow: 0 22px 50px rgba(32, 70, 50, .14);
}

.homeo-care-label {
	position: absolute;
	right: 8px;
	bottom: 4px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid #e3ece4;
	border-radius: 50px;
	background: #fff;
	color: #41584a;
	font-size: .72rem;
	font-weight: 650;
	box-shadow: 0 10px 26px rgba(32, 65, 48, .1);
}

.homeo-care-label i {
	color: var(--homeo-green);
}

.homeo-care-floating {
	position: absolute;
	top: 21px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 15px;
	border: 1px solid #e5ece5;
	border-radius: 14px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 12px 28px rgba(32, 65, 48, .11);
}

.homeo-care-floating > i {
	color: var(--homeo-green);
	font-size: 1.2rem;
}

.homeo-care-floating strong,
.homeo-care-floating small {
	display: block;
}

.homeo-care-floating strong {
	color: #293f33;
	font-size: .75rem;
}

.homeo-care-floating small {
	margin-top: 3px;
	color: #7d8d80;
	font-size: .62rem;
}

.homeo-care-section .homeo-section-title {
	margin-bottom: 13px;
}

.homeo-care-points {
	margin-top: 21px;
}

.homeo-care-points li {
	font-size: .86rem;
}

.homeo-care-points i {
	margin-top: 2px;
	color: #27875c;
}

.homeo-care-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 21px 0 0;
	padding: 12px 14px;
	border: 1px solid #e3ebe4;
	border-radius: 10px;
	background: #f8fbf8;
	color: #68796e;
	font-size: .76rem;
	line-height: 1.65;
}

.homeo-care-disclaimer i {
	margin-top: 2px;
	color: var(--homeo-green);
}

.homeo-workflow-grid {
	margin-top: 29px;
}

.homeo-workflow-card {
	position: relative;
	height: 100%;
	padding: 25px 23px;
	border: 1px solid #e4ece5;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(38, 74, 50, .04);
}

.homeo-workflow-number {
	position: absolute;
	top: 24px;
	right: 22px;
	color: #b4c2b6;
	font-size: .76rem;
	font-weight: 750;
	letter-spacing: .06em;
}

.homeo-workflow-card .homeo-icon-box {
	width: 44px;
	height: 44px;
	border-radius: 13px;
	font-size: 1.08rem;
}

.homeo-workflow-card h3 {
	margin-top: 17px;
}

.homeo-faq-section {
	padding: 80px 0;
	background: #fff;
}

.homeo-faq-section .homeo-section-title {
	margin-bottom: 13px;
}

.homeo-faq-section .homeo-section-copy {
	margin-bottom: 16px;
}

.homeo-faq-list {
	border-top: 1px solid #dce6dd;
}

.homeo-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #dce6dd;
}

.homeo-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--homeo-ink);
	font-size: .97rem;
	font-weight: 680;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.homeo-faq-item summary::-webkit-details-marker {
	display: none;
}

.homeo-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--homeo-green);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.homeo-faq-item[open] summary::after {
	content: "\f2ea";
}

.homeo-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--homeo-muted);
	font-size: .88rem;
	line-height: 1.75;
}

.homeo-cta-section {
	padding: 70px 0 85px;
	background: #f5f8f5;
}

.homeo-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 48px 52px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 92% 10%, rgba(154, 220, 175, .24), transparent 29%),
		linear-gradient(120deg, #1c563e 0%, #287a56 63%, #32916c 100%);
	box-shadow: 0 20px 48px rgba(40, 122, 86, .2);
}

.homeo-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 720;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.homeo-cta-kicker {
	margin: 0 0 13px;
	color: #e0f1e5;
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.homeo-cta-panel p:not(.homeo-cta-kicker) {
	max-width: 610px;
	margin: 0;
	color: rgba(255, 255, 255, .8);
	font-size: .91rem;
	line-height: 1.7;
}

.homeo-button-light {
	background: #fff;
	color: #1f6547;
	box-shadow: none;
}

.homeo-button-light:hover,
.homeo-button-light:focus {
	transform: translateY(-2px);
	background: #f0f7f1;
	color: #194d37;
}

.homeo-cta-contact {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .85);
	font-size: .81rem;
	font-weight: 600;
}

.homeo-cta-contact:hover,
.homeo-cta-contact:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.homeo-hero {
		padding-top: 70px;
	}

	.homeo-hero-visual {
		max-width: 700px;
		margin: 0 auto;
		padding-left: 16px;
	}

	.homeo-care-visual {
		max-width: 700px;
	}

	.homeo-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 575.98px) {
	.homeo-hero {
		padding: 55px 0 60px;
	}

	.homeo-hero h1 {
		font-size: 2.45rem;
	}

	.homeo-hero-copy {
		font-size: .94rem;
	}

	.homeo-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 15px;
	}

	.homeo-button-primary {
		padding: 0 17px;
		font-size: .82rem;
	}

	.homeo-hero-visual {
		min-height: 370px;
		padding: 0 7px 24px 0;
	}

	.homeo-hero-photo {
		height: 315px;
		border-width: 5px;
		border-radius: 20px;
	}

	.homeo-photo-caption {
		right: 9px;
		bottom: 9px;
		left: 9px;
		gap: 8px;
		padding: 10px;
	}

	.homeo-photo-caption strong {
		font-size: .68rem;
	}

	.homeo-photo-caption small {
		font-size: .58rem;
	}

	.homeo-photo-icon {
		width: 34px;
		height: 34px;
		flex-basis: 34px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.homeo-record-card {
		right: -1px;
		bottom: 42px;
		gap: 7px;
		padding: 9px;
	}

	.homeo-record-icon {
		width: 33px;
		height: 33px;
		border-radius: 10px;
		font-size: .95rem;
	}

	.homeo-record-card strong {
		font-size: .67rem;
	}

	.homeo-record-card span:not(.homeo-record-check) {
		font-size: .53rem;
	}

	.homeo-record-check {
		width: 20px;
		height: 20px;
		font-size: .68rem;
	}

	.homeo-floating-pill {
		padding: 9px 11px;
		font-size: .61rem;
	}

	.homeo-pill-one {
		top: -9px;
		left: -2px;
	}

	.homeo-pill-two {
		right: -1px;
		bottom: 7px;
	}

	.homeo-trust-items {
		justify-content: flex-start;
		gap: 12px;
	}

	.homeo-trust-items span {
		width: calc(50% - 6px);
		font-size: .74rem;
		text-align: left;
	}

	.homeo-overview-section,
	.homeo-features-section,
	.homeo-care-section,
	.homeo-workflow-section,
	.homeo-faq-section {
		padding: 58px 0;
	}

	.homeo-feature-grid,
	.homeo-workflow-grid {
		margin-top: 19px;
	}

	.homeo-feature-card {
		padding: 23px;
	}

	.homeo-care-visual {
		min-height: 305px;
		padding: 0 14px 23px 0;
	}

	.homeo-care-visual > img {
		height: 285px;
		border-radius: 17px;
	}

	.homeo-care-floating {
		top: 12px;
		left: -3px;
		gap: 7px;
		padding: 9px 11px;
	}

	.homeo-care-floating > i {
		font-size: 1rem;
	}

	.homeo-care-floating strong {
		font-size: .67rem;
	}

	.homeo-care-floating small {
		font-size: .55rem;
	}

	.homeo-care-label {
		right: 0;
		bottom: 4px;
		padding: 9px 11px;
		font-size: .6rem;
	}

	.homeo-workflow-card {
		padding: 22px;
	}

	.homeo-faq-item summary {
		padding-right: 34px;
		font-size: .9rem;
	}

	.homeo-faq-item p {
		margin-right: 4px;
	}

	.homeo-cta-section {
		padding: 45px 0 58px;
	}

	.homeo-cta-panel {
		padding: 30px 24px;
		border-radius: 17px;
	}

	.homeo-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.homeo-cta-contact {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.homeo-feature-card,
	.homeo-button-primary,
	.homeo-button-light {
		transition: none;
	}
}

/* Dental EMR landing page */
.dental-page {
	--dental-ink: #24334d;
	--dental-muted: #6b7b8e;
	--dental-teal: #148d88;
	--dental-blue: #4774cc;
	--dental-coral: #e68174;
	overflow: hidden;
	color: var(--dental-muted);
}

.dental-page h1,
.dental-page h2,
.dental-page h3 {
	color: var(--dental-ink);
}

.dental-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 86% 13%, rgba(115, 191, 185, .16), transparent 30%),
		linear-gradient(132deg, #f2faf8 0%, #fff 56%, #f5f7fd 100%);
}

.dental-eyebrow,
.dental-kicker {
	margin: 0 0 14px;
	color: var(--dental-teal);
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.dental-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d6ebe7;
	border-radius: 40px;
	background: rgba(255, 255, 255, .85);
	letter-spacing: .06em;
}

.dental-hero h1 {
	max-width: 630px;
	margin: 14px 0 19px;
	font-size: clamp(2.65rem, 4.7vw, 4.15rem);
	font-weight: 760;
	letter-spacing: -.055em;
	line-height: 1.07;
}

.dental-hero h1 span {
	color: var(--dental-teal);
}

.dental-hero-copy,
.dental-section-copy {
	color: var(--dental-muted);
	font-size: .96rem;
	line-height: 1.82;
}

.dental-hero-copy {
	max-width: 590px;
	margin: 0;
}

.dental-hero-points,
.dental-check-list {
	display: grid;
	gap: 11px;
	margin: 21px 0 0;
	padding: 0;
	list-style: none;
}

.dental-hero-points li,
.dental-check-list li {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	color: #45596d;
	font-size: .84rem;
}

.dental-hero-points i {
	margin-top: 2px;
	color: #3e9a79;
}

.dental-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 27px;
}

.dental-button-primary,
.dental-button-light {
	display: inline-flex;
	min-height: 51px;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 0 20px;
	border: 0;
	border-radius: 10px;
	background: var(--dental-teal);
	color: #fff;
	font-size: .86rem;
	font-weight: 700;
	box-shadow: 0 11px 25px rgba(20, 141, 136, .2);
	transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}

.dental-button-primary:hover,
.dental-button-primary:focus {
	transform: translateY(-2px);
	background: #11716e;
	color: #fff;
	box-shadow: 0 15px 29px rgba(20, 141, 136, .26);
}

.dental-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #347b8b;
	font-size: .86rem;
	font-weight: 700;
}

.dental-text-link:hover,
.dental-text-link:focus {
	color: #225c6c;
}

.dental-hero-footnote {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 24px;
	color: #7a8993;
	font-size: .75rem;
}

.dental-hero-footnote i {
	color: var(--dental-coral);
}

.dental-hero-visual {
	position: relative;
	display: grid;
	min-height: 480px;
	place-items: center;
	max-width: 620px;
	margin: 0 0 0 auto;
}

.dental-hero-backdrop {
	position: absolute;
	width: 420px;
	height: 420px;
	border: 1px solid rgba(20, 141, 136, .13);
	border-radius: 50%;
	background: radial-gradient(circle, rgba(224, 243, 236, .8), rgba(224, 243, 236, .12) 68%, transparent 69%);
}

.dental-hero-photo {
	position: relative;
	width: min(69%, 365px);
	height: 395px;
	overflow: hidden;
	border: 8px solid #fff;
	border-radius: 45% 45% 24px 24px;
	background: #e8f0ed;
	box-shadow: 0 27px 58px rgba(41, 75, 77, .18);
	transform: rotate(-1.5deg);
}

.dental-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.dental-photo-shade {
	position: absolute;
	inset: 45% 0 0;
	background: linear-gradient(180deg, transparent, rgba(24, 48, 68, .43));
}

.dental-photo-caption {
	position: absolute;
	right: 12px;
	bottom: 12px;
	left: 12px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px;
	border: 1px solid rgba(255, 255, 255, .8);
	border-radius: 13px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 9px 23px rgba(34, 59, 71, .12);
}

.dental-photo-caption > i {
	display: grid;
	width: 36px;
	height: 36px;
	flex: 0 0 36px;
	place-items: center;
	border-radius: 12px;
	background: #fff0eb;
	color: var(--dental-coral);
	font-size: 1.05rem;
}

.dental-photo-caption strong,
.dental-photo-caption small {
	display: block;
}

.dental-photo-caption strong {
	color: #384b5e;
	font-size: .68rem;
}

.dental-photo-caption small {
	margin-top: 3px;
	color: #87939d;
	font-size: .55rem;
}

.dental-chart-card {
	position: absolute;
	right: -4px;
	bottom: 49px;
	z-index: 2;
	width: 244px;
	padding: 14px;
	border: 1px solid #e1e9e7;
	border-radius: 15px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 16px 37px rgba(38, 65, 74, .16);
}

.dental-chart-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 12px;
	color: #374b60;
	font-size: .7rem;
	font-weight: 750;
}

.dental-chart-status {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: #84928f;
	font-size: .52rem;
	font-weight: 650;
}

.dental-chart-status i {
	color: #5aa47c;
	font-size: .4rem;
}

.dental-teeth {
	display: grid;
	grid-template-columns: repeat(8, minmax(0, 1fr));
	gap: 5px;
}

.dental-tooth {
	display: grid;
	height: 27px;
	place-items: center;
	border: 1px solid #dfe9e5;
	border-radius: 8px 8px 10px 10px;
	background: #f8fbf9;
	color: #74877f;
	font-size: .56rem;
	font-weight: 700;
}

.dental-tooth-marked {
	border-color: #f0b9a8;
	background: #fff0ea;
	color: #d67867;
}

.dental-chart-foot {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 11px;
	padding-top: 9px;
	border-top: 1px solid #edf1ef;
	color: #7a8987;
	font-size: .54rem;
}

.dental-chart-foot i {
	color: var(--dental-teal);
}

.dental-float-pill {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 13px;
	border: 1px solid rgba(255, 255, 255, .9);
	border-radius: 40px;
	background: rgba(255, 255, 255, .97);
	color: #4a5e6a;
	font-size: .66rem;
	font-weight: 700;
	box-shadow: 0 10px 25px rgba(43, 71, 78, .12);
}

.dental-float-pill i {
	color: var(--dental-teal);
}

.dental-pill-appointment {
	top: 65px;
	left: 0;
}

.dental-pill-plan {
	right: 0;
	bottom: 17px;
}

.dental-hero-spark {
	position: absolute;
	color: #e9aa62;
	font-size: 1.45rem;
}

.dental-spark-one {
	top: 35px;
	right: 62px;
}

.dental-spark-two {
	bottom: 78px;
	left: 31px;
	color: #e78b78;
	font-size: 1.05rem;
}

.dental-workflow-strip {
	padding: 24px 0 26px;
	border-top: 1px solid #e6ecea;
	border-bottom: 1px solid #e6ecea;
	background: #fff;
	text-align: center;
}

.dental-workflow-strip > .container > p {
	margin: 0 0 16px;
	color: #899692;
	font-size: .7rem;
	font-weight: 750;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.dental-workflow-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px 37px;
}

.dental-workflow-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #4a5c67;
	font-size: .8rem;
	font-weight: 650;
}

.dental-workflow-items i {
	color: var(--dental-teal);
	font-size: .98rem;
}

.dental-overview-section {
	padding: 77px 0 79px;
	background: #fff;
}

.dental-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3.1vw, 2.7rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.dental-overview-section .dental-section-title {
	max-width: 530px;
}

.dental-section-copy {
	margin: 0;
	font-size: .9rem;
}

.dental-overview-detail {
	margin-top: 11px;
}

.dental-overview-section .dental-text-link {
	margin-top: 16px;
}

.dental-overview-points {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 13px;
	margin-top: 39px;
}

.dental-overview-point {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 18px;
	border: 1px solid #e7ece9;
	border-radius: 12px;
	background: #fbfcfa;
}

.dental-point-icon {
	display: grid;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	place-items: center;
	border-radius: 12px;
	font-size: 1rem;
}

.dental-point-coral {
	background: #fff0eb;
	color: #d67867;
}

.dental-point-blue {
	background: #eaf0fc;
	color: #5275c7;
}

.dental-point-mint {
	background: #e8f4ec;
	color: #45876a;
}

.dental-overview-point strong,
.dental-overview-point small {
	display: block;
}

.dental-overview-point strong {
	margin: 1px 0 5px;
	color: #3d5260;
	font-size: .76rem;
}

.dental-overview-point small {
	color: #7f8e8b;
	font-size: .66rem;
	line-height: 1.55;
}

.dental-features-section {
	padding: 82px 0 89px;
	background: #f4f8f6;
}

.dental-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 35px;
}

.dental-section-heading > div {
	max-width: 640px;
}

.dental-section-heading > .dental-section-copy {
	max-width: 380px;
	margin-bottom: 4px;
	font-size: .86rem;
}

.dental-feature-grid {
	margin-top: 32px;
}

.dental-feature-card {
	height: 100%;
	padding: 25px;
	border: 1px solid #e3ebe6;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(42, 75, 61, .045);
	transition: transform .2s ease, box-shadow .2s ease;
}

.dental-feature-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 32px rgba(42, 75, 61, .1);
}

.dental-feature-icon {
	display: grid;
	width: 47px;
	height: 47px;
	place-items: center;
	border-radius: 14px;
	font-size: 1.12rem;
}

.dental-feature-coral {
	background: #fff0eb;
	color: #d67867;
}

.dental-feature-blue {
	background: #eaf0fc;
	color: #5275c7;
}

.dental-feature-mint {
	background: #e8f4ec;
	color: #45876a;
}

.dental-feature-purple {
	background: #f1ecfa;
	color: #8265ad;
}

.dental-feature-yellow {
	background: #fff4dc;
	color: #b28731;
}

.dental-feature-teal {
	background: #e4f4f1;
	color: #2b8982;
}

.dental-feature-label {
	display: block;
	margin-top: 18px;
	color: #929e98;
	font-size: .58rem;
	font-weight: 750;
	letter-spacing: .1em;
}

.dental-feature-card h3 {
	margin: 7px 0 8px;
	font-size: 1rem;
	font-weight: 720;
	letter-spacing: -.02em;
}

.dental-feature-card p {
	margin: 0;
	color: var(--dental-muted);
	font-size: .8rem;
	line-height: 1.75;
}

.dental-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 14px;
	color: #317d84;
	font-size: .75rem;
	font-weight: 700;
}

.dental-feature-card > a:hover {
	color: #205b64;
}

.dental-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 14px;
}

.dental-feature-tags span {
	padding: 5px 8px;
	border: 1px solid #e8eeea;
	border-radius: 30px;
	background: #fbfcfa;
	color: #798984;
	font-size: .58rem;
	font-weight: 650;
}

.dental-plan-section {
	padding: 83px 0;
	background: #fff;
}

.dental-plan-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 26px 0;
}

.dental-plan-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 22px 60px 22px 22px;
	object-fit: cover;
	box-shadow: 0 22px 48px rgba(41, 72, 67, .14);
}

.dental-plan-note {
	position: absolute;
	top: 20px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px 14px;
	border: 1px solid #e4ebe7;
	border-radius: 13px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 10px 25px rgba(38, 69, 62, .12);
}

.dental-plan-note > i {
	color: var(--dental-coral);
	font-size: 1.08rem;
}

.dental-plan-note strong,
.dental-plan-note small {
	display: block;
}

.dental-plan-note strong {
	color: #405560;
	font-size: .67rem;
}

.dental-plan-note small {
	margin-top: 3px;
	color: #87948f;
	font-size: .55rem;
}

.dental-plan-label {
	position: absolute;
	right: 0;
	bottom: 2px;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 13px;
	border: 1px solid #e4ece7;
	border-radius: 30px;
	background: #fff;
	color: #536967;
	font-size: .64rem;
	font-weight: 700;
	box-shadow: 0 8px 22px rgba(41, 72, 67, .1);
}

.dental-plan-label i {
	color: #4b9a75;
}

.dental-plan-section .dental-section-title {
	margin-bottom: 13px;
}

.dental-check-list {
	margin-top: 20px;
}

.dental-check-list li {
	font-size: .8rem;
}

.dental-check-list i {
	display: grid;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	place-items: center;
	border-radius: 50%;
	background: #e8f4ec;
	color: #448768;
	font-size: .76rem;
}

.dental-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 20px 0 0;
	padding: 12px 13px;
	border: 1px solid #e6ece8;
	border-radius: 10px;
	background: #f8faf8;
	color: #74827e;
	font-size: .7rem;
	line-height: 1.65;
}

.dental-disclaimer i {
	margin-top: 2px;
	color: #398b85;
}

.dental-journey-section {
	padding: 78px 0 84px;
	background: #f4f8f6;
}

.dental-journey-heading {
	align-items: flex-end;
}

.dental-journey-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin-top: 34px;
}

.dental-journey-step {
	position: relative;
	padding: 21px;
	border: 1px solid #e3ebe6;
	border-radius: 14px;
	background: #fff;
}

.dental-journey-number {
	position: absolute;
	top: 17px;
	right: 17px;
	color: #a9b7ae;
	font-size: .68rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.dental-journey-icon {
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	border: 1px solid #dcece4;
	border-radius: 14px;
	background: #edf6f0;
	color: #3f8b6a;
	font-size: 1.08rem;
}

.dental-journey-step h3 {
	margin: 16px 0 7px;
	font-size: .96rem;
	font-weight: 720;
}

.dental-journey-step p {
	margin: 0;
	color: var(--dental-muted);
	font-size: .74rem;
	line-height: 1.7;
}

.dental-faq-section {
	padding: 79px 0;
	background: #fff;
}

.dental-faq-section .dental-section-title {
	margin-bottom: 12px;
}

.dental-faq-section .dental-section-copy {
	margin-bottom: 16px;
	font-size: .86rem;
}

.dental-faq-list {
	border-top: 1px solid #e3ebe7;
}

.dental-faq-item {
	padding: 18px 0;
	border-bottom: 1px solid #e3ebe7;
}

.dental-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--dental-ink);
	font-size: .91rem;
	font-weight: 700;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.dental-faq-item summary::-webkit-details-marker {
	display: none;
}

.dental-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--dental-teal);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.dental-faq-item[open] summary::after {
	content: "\f2ea";
}

.dental-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--dental-muted);
	font-size: .82rem;
	line-height: 1.75;
}

.dental-cta-section {
	padding: 67px 0 83px;
	background: #f4f8f6;
}

.dental-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 46px 50px;
	border-radius: 21px;
	background:
		radial-gradient(circle at 91% 6%, rgba(246, 193, 161, .24), transparent 29%),
		linear-gradient(120deg, #176b70 0%, #148d88 58%, #3c9b8c 100%);
	box-shadow: 0 19px 44px rgba(29, 119, 112, .22);
}

.dental-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.85rem, 3vw, 2.5rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.dental-cta-kicker {
	margin: 0 0 12px;
	color: #d7efea;
	font-size: .7rem;
	font-weight: 750;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.dental-cta-panel p:not(.dental-cta-kicker) {
	max-width: 600px;
	margin: 0;
	color: rgba(255, 255, 255, .82);
	font-size: .87rem;
	line-height: 1.75;
}

.dental-button-light {
	background: #fff;
	color: #24736d;
	box-shadow: none;
}

.dental-button-light:hover,
.dental-button-light:focus {
	transform: translateY(-2px);
	background: #f0faf7;
	color: #1b5b56;
}

.dental-cta-link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .88);
	font-size: .77rem;
	font-weight: 650;
}

.dental-cta-link:hover,
.dental-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.dental-hero {
		padding-top: 70px;
	}

	.dental-hero-visual {
		max-width: 700px;
		margin: 0 auto;
	}

	.dental-section-heading {
		display: block;
	}

	.dental-section-heading > .dental-section-copy {
		max-width: 620px;
		margin-top: 13px;
	}

	.dental-plan-visual {
		max-width: 700px;
	}

	.dental-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 767.98px) {
	.dental-overview-points {
		grid-template-columns: 1fr;
		margin-top: 27px;
	}

	.dental-journey-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {
	.dental-hero {
		padding: 53px 0 57px;
	}

	.dental-hero h1 {
		font-size: 2.45rem;
	}

	.dental-hero-copy {
		font-size: .91rem;
	}

	.dental-hero-points {
		gap: 9px;
	}

	.dental-hero-points li {
		font-size: .77rem;
	}

	.dental-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.dental-button-primary {
		padding: 0 15px;
		font-size: .78rem;
	}

	.dental-hero-visual {
		min-height: 370px;
	}

	.dental-hero-backdrop {
		width: 330px;
		height: 330px;
	}

	.dental-hero-photo {
		width: min(69%, 300px);
		height: 315px;
		border-width: 6px;
		border-radius: 45% 45% 20px 20px;
	}

	.dental-photo-caption {
		right: 8px;
		bottom: 8px;
		left: 8px;
		gap: 7px;
		padding: 8px;
	}

	.dental-photo-caption > i {
		width: 31px;
		height: 31px;
		flex-basis: 31px;
		font-size: .92rem;
	}

	.dental-photo-caption strong {
		font-size: .59rem;
	}

	.dental-photo-caption small {
		font-size: .49rem;
	}

	.dental-chart-card {
		right: -3px;
		bottom: 31px;
		width: 205px;
		padding: 11px;
	}

	.dental-chart-top {
		margin-bottom: 9px;
		font-size: .62rem;
	}

	.dental-chart-status {
		font-size: .47rem;
	}

	.dental-teeth {
		gap: 4px;
	}

	.dental-tooth {
		height: 23px;
		font-size: .49rem;
	}

	.dental-chart-foot {
		margin-top: 8px;
		padding-top: 7px;
		font-size: .48rem;
	}

	.dental-float-pill {
		gap: 5px;
		padding: 8px 10px;
		font-size: .57rem;
	}

	.dental-pill-appointment {
		top: 30px;
		left: -2px;
	}

	.dental-pill-plan {
		right: -2px;
		bottom: 8px;
	}

	.dental-spark-one {
		top: 12px;
		right: 22px;
	}

	.dental-spark-two {
		bottom: 33px;
		left: 15px;
	}

	.dental-workflow-items {
		justify-content: flex-start;
		gap: 11px;
	}

	.dental-workflow-items span {
		width: calc(50% - 6px);
		font-size: .7rem;
		text-align: left;
	}

	.dental-overview-section,
	.dental-features-section,
	.dental-plan-section,
	.dental-journey-section,
	.dental-faq-section {
		padding: 57px 0;
	}

	.dental-section-title {
		font-size: 1.88rem;
	}

	.dental-overview-points {
		gap: 9px;
	}

	.dental-feature-grid {
		margin-top: 21px;
	}

	.dental-feature-card {
		padding: 22px;
	}

	.dental-plan-visual {
		min-height: 300px;
		padding: 0 13px 22px 0;
	}

	.dental-plan-visual > img {
		height: 280px;
		border-radius: 17px 44px 17px 17px;
	}

	.dental-plan-note {
		top: 11px;
		left: -2px;
		gap: 7px;
		padding: 9px 10px;
	}

	.dental-plan-note strong {
		font-size: .59rem;
	}

	.dental-plan-note small {
		font-size: .49rem;
	}

	.dental-plan-label {
		right: 0;
		bottom: 2px;
		padding: 8px 10px;
		font-size: .56rem;
	}

	.dental-journey-grid {
		gap: 10px;
		margin-top: 22px;
	}

	.dental-journey-step {
		padding: 15px;
	}

	.dental-journey-step p {
		font-size: .68rem;
	}

	.dental-faq-item summary {
		padding-right: 32px;
		font-size: .85rem;
	}

	.dental-faq-item p {
		margin-right: 4px;
	}

	.dental-cta-section {
		padding: 42px 0 55px;
	}

	.dental-cta-panel {
		padding: 28px 22px;
		border-radius: 16px;
	}

	.dental-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.dental-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.dental-feature-card,
	.dental-button-primary,
	.dental-button-light {
		transition: none;
	}
}

/* Pediatric EMR landing page */
.pedi-page {
	--pedi-ink: #28344e;
	--pedi-muted: #6f7d91;
	--pedi-teal: #258a83;
	--pedi-blue: #5273d1;
	--pedi-coral: #e98274;
	overflow: hidden;
	color: var(--pedi-muted);
}

.pedi-page h1,
.pedi-page h2,
.pedi-page h3 {
	color: var(--pedi-ink);
}

.pedi-hero {
	position: relative;
	padding: 82px 0 88px;
	background:
		radial-gradient(ellipse at 88% 13%, rgba(242, 187, 147, .2), transparent 30%),
		linear-gradient(130deg, #f5fbf8 0%, #fff 58%, #fff8f2 100%);
}

.pedi-eyebrow,
.pedi-kicker {
	margin: 0 0 14px;
	color: var(--pedi-teal);
	font-size: .76rem;
	font-weight: 750;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.pedi-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d9ece5;
	border-radius: 40px;
	background: rgba(255, 255, 255, .85);
	letter-spacing: .06em;
}

.pedi-hero h1 {
	max-width: 620px;
	margin: 14px 0 18px;
	font-size: clamp(2.65rem, 4.7vw, 4.15rem);
	font-weight: 760;
	letter-spacing: -.055em;
	line-height: 1.07;
}

.pedi-hero h1 span {
	color: var(--pedi-teal);
}

.pedi-hero-copy,
.pedi-section-copy {
	color: var(--pedi-muted);
	font-size: .96rem;
	line-height: 1.82;
}

.pedi-hero-copy {
	max-width: 585px;
	margin: 0;
}

.pedi-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 21px;
	margin-top: 28px;
}

.pedi-button-primary,
.pedi-button-light {
	display: inline-flex;
	min-height: 51px;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 0 20px;
	border: 0;
	border-radius: 10px;
	background: var(--pedi-teal);
	color: #fff;
	font-size: .86rem;
	font-weight: 700;
	box-shadow: 0 11px 25px rgba(37, 138, 131, .2);
	transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}

.pedi-button-primary:hover,
.pedi-button-primary:focus {
	transform: translateY(-2px);
	background: #1b716c;
	color: #fff;
	box-shadow: 0 15px 29px rgba(37, 138, 131, .26);
}

.pedi-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #347d87;
	font-size: .87rem;
	font-weight: 700;
}

.pedi-text-link:hover,
.pedi-text-link:focus {
	color: #235d67;
}

.pedi-hero-trust {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 27px;
	color: #7b8993;
	font-size: .76rem;
}

.pedi-hero-trust i {
	color: var(--pedi-coral);
	font-size: .98rem;
}

.pedi-hero-visual {
	position: relative;
	display: grid;
	min-height: 475px;
	place-items: center;
	max-width: 620px;
	margin: 0 0 0 auto;
}

.pedi-sunburst {
	position: absolute;
	border-radius: 50%;
}

.pedi-sunburst-one {
	width: 425px;
	height: 425px;
	background: #e7f4ed;
}

.pedi-sunburst-two {
	width: 355px;
	height: 355px;
	border: 1px dashed rgba(37, 138, 131, .25);
	background: rgba(255, 255, 255, .45);
}

.pedi-hero-photo {
	position: relative;
	width: min(72%, 370px);
	height: 400px;
	overflow: hidden;
	border: 8px solid #fff;
	border-radius: 48% 48% 24px 24px;
	background: #e8f0eb;
	box-shadow: 0 26px 58px rgba(48, 86, 72, .19);
	transform: rotate(1.5deg);
}

.pedi-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.pedi-photo-fade {
	position: absolute;
	inset: 47% 0 0;
	background: linear-gradient(180deg, transparent, rgba(38, 57, 69, .45));
}

.pedi-photo-caption {
	position: absolute;
	right: 13px;
	bottom: 13px;
	left: 13px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px 12px;
	border: 1px solid rgba(255, 255, 255, .8);
	border-radius: 13px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 9px 24px rgba(37, 66, 58, .13);
}

.pedi-photo-caption > i {
	display: grid;
	width: 36px;
	height: 36px;
	flex: 0 0 36px;
	place-items: center;
	border-radius: 12px;
	background: #fff0e9;
	color: var(--pedi-coral);
	font-size: 1.05rem;
}

.pedi-photo-caption strong,
.pedi-photo-caption small {
	display: block;
}

.pedi-photo-caption strong {
	color: #39465a;
	font-size: .72rem;
}

.pedi-photo-caption small {
	margin-top: 3px;
	color: #87939d;
	font-size: .59rem;
}

.pedi-record-card {
	position: absolute;
	right: -4px;
	bottom: 72px;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 12px 13px;
	border: 1px solid #e6ece9;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 14px 32px rgba(46, 73, 66, .14);
}

.pedi-record-icon {
	display: grid;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	place-items: center;
	border-radius: 12px;
	background: #e9f5ef;
	color: var(--pedi-teal);
	font-size: 1.05rem;
}

.pedi-record-card strong,
.pedi-record-card small {
	display: block;
}

.pedi-record-card strong {
	color: #3c4b5a;
	font-size: .68rem;
}

.pedi-record-card small {
	margin-top: 3px;
	color: #87939c;
	font-size: .56rem;
}

.pedi-record-check {
	margin-left: 5px;
	color: #53a47b;
	font-size: .85rem;
}

.pedi-float-label {
	position: absolute;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 13px;
	border: 1px solid rgba(255, 255, 255, .9);
	border-radius: 40px;
	background: rgba(255, 255, 255, .97);
	color: #536273;
	font-size: .68rem;
	font-weight: 700;
	box-shadow: 0 10px 26px rgba(46, 73, 66, .12);
}

.pedi-float-label i {
	color: var(--pedi-teal);
}

.pedi-float-growth {
	top: 67px;
	left: 4px;
}

.pedi-float-care {
	right: 1px;
	bottom: 30px;
}

.pedi-spark {
	position: absolute;
	color: #edb45e;
	font-size: 1.5rem;
}

.pedi-spark-one {
	top: 47px;
	right: 58px;
}

.pedi-spark-two {
	bottom: 80px;
	left: 34px;
	color: #e9897c;
	font-size: 1.1rem;
}

.pedi-care-strip {
	padding: 24px 0 26px;
	border-top: 1px solid #e8eee9;
	border-bottom: 1px solid #e8eee9;
	background: #fff;
	text-align: center;
}

.pedi-care-strip > .container > p {
	margin: 0 0 16px;
	color: #89968e;
	font-size: .71rem;
	font-weight: 750;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.pedi-care-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px 37px;
}

.pedi-care-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #4b5c57;
	font-size: .8rem;
	font-weight: 650;
}

.pedi-care-items i {
	color: var(--pedi-teal);
	font-size: .98rem;
}

.pedi-intro-section {
	padding: 77px 0 78px;
	background: #fff;
}

.pedi-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3.1vw, 2.7rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.pedi-intro-section .pedi-section-title {
	max-width: 530px;
}

.pedi-section-copy {
	margin: 0;
	font-size: .91rem;
}

.pedi-intro-detail {
	margin-top: 11px;
}

.pedi-intro-section .pedi-text-link {
	margin-top: 16px;
}

.pedi-stage-row {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 13px;
	margin-top: 40px;
}

.pedi-stage-card {
	display: flex;
	align-items: center;
	gap: 13px;
	padding: 17px;
	border: 1px solid #e8ece8;
	border-radius: 13px;
	background: #fbfcf9;
}

.pedi-stage-age {
	display: grid;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	place-items: center;
	border-radius: 14px;
	font-size: 1.1rem;
}

.pedi-stage-mint {
	background: #e6f4eb;
	color: #3f916f;
}

.pedi-stage-yellow {
	background: #fff3d9;
	color: #bd8b2d;
}

.pedi-stage-lilac {
	background: #f0ebfa;
	color: #8066ad;
}

.pedi-stage-card strong,
.pedi-stage-card small {
	display: block;
}

.pedi-stage-card strong {
	margin-bottom: 4px;
	color: #3d514a;
	font-size: .77rem;
}

.pedi-stage-card small {
	color: #84918b;
	font-size: .66rem;
	line-height: 1.5;
}

.pedi-features-section {
	padding: 81px 0 88px;
	background: #f5f8f5;
}

.pedi-section-heading {
	max-width: 760px;
	margin: 0 auto;
}

.pedi-section-heading .pedi-section-title {
	margin-bottom: 12px;
}

.pedi-section-heading .pedi-section-copy {
	font-size: .89rem;
}

.pedi-feature-grid {
	margin-top: 31px;
}

.pedi-feature-card {
	height: 100%;
	padding: 25px;
	border: 1px solid #e6ece6;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(49, 76, 61, .045);
	transition: transform .2s ease, box-shadow .2s ease;
}

.pedi-feature-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 32px rgba(49, 76, 61, .1);
}

.pedi-feature-icon {
	display: grid;
	width: 47px;
	height: 47px;
	place-items: center;
	border-radius: 14px;
	font-size: 1.12rem;
}

.pedi-tone-coral {
	background: #fff0eb;
	color: #d87769;
}

.pedi-tone-mint {
	background: #e7f4eb;
	color: #418b68;
}

.pedi-tone-yellow {
	background: #fff4dc;
	color: #b6872c;
}

.pedi-tone-blue {
	background: #e9f0fb;
	color: #5578c7;
}

.pedi-tone-lilac {
	background: #f1ebfa;
	color: #8268ad;
}

.pedi-tone-teal {
	background: #e4f4f1;
	color: #2e8b82;
}

.pedi-feature-label {
	display: block;
	margin-top: 18px;
	color: #929d95;
	font-size: .58rem;
	font-weight: 750;
	letter-spacing: .1em;
}

.pedi-feature-card h3 {
	margin: 7px 0 8px;
	font-size: 1.02rem;
	font-weight: 720;
	letter-spacing: -.02em;
}

.pedi-feature-card p {
	margin: 0;
	color: var(--pedi-muted);
	font-size: .8rem;
	line-height: 1.75;
}

.pedi-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 14px;
	color: #347e85;
	font-size: .75rem;
	font-weight: 700;
}

.pedi-feature-card > a:hover {
	color: #235e66;
}

.pedi-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 14px;
}

.pedi-feature-tags span {
	padding: 5px 8px;
	border: 1px solid #e8ede8;
	border-radius: 30px;
	background: #fbfcfa;
	color: #79877f;
	font-size: .59rem;
	font-weight: 650;
}

.pedi-prevention-section {
	padding: 83px 0;
	background: #fff;
}

.pedi-prevention-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 26px 0;
}

.pedi-prevention-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 22px 22px 62px 22px;
	object-fit: cover;
	box-shadow: 0 22px 48px rgba(47, 78, 61, .14);
}

.pedi-prevention-note {
	position: absolute;
	top: 20px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px 14px;
	border: 1px solid #e5ebe4;
	border-radius: 13px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 10px 26px rgba(44, 72, 56, .12);
}

.pedi-prevention-note > i {
	color: #4c9c74;
	font-size: 1.1rem;
}

.pedi-prevention-note strong,
.pedi-prevention-note small {
	display: block;
}

.pedi-prevention-note strong {
	color: #3c5548;
	font-size: .68rem;
}

.pedi-prevention-note small {
	margin-top: 3px;
	color: #87938a;
	font-size: .56rem;
}

.pedi-prevention-sticker {
	position: absolute;
	right: 0;
	bottom: 2px;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 13px;
	border: 1px solid #f0e7df;
	border-radius: 30px;
	background: #fffaf5;
	color: #795a4e;
	font-size: .66rem;
	font-weight: 700;
	box-shadow: 0 8px 22px rgba(68, 61, 48, .1);
}

.pedi-prevention-sticker i {
	color: var(--pedi-coral);
	font-size: .83rem;
}

.pedi-prevention-section .pedi-section-title {
	margin-bottom: 13px;
}

.pedi-check-list {
	display: grid;
	gap: 11px;
	margin: 20px 0 0;
	padding: 0;
	list-style: none;
}

.pedi-check-list li {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	color: #4f625b;
	font-size: .81rem;
}

.pedi-check-list i {
	display: grid;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	place-items: center;
	border-radius: 50%;
	background: #e9f5ed;
	color: #3f916f;
	font-size: .77rem;
}

.pedi-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 20px 0 0;
	padding: 12px 13px;
	border: 1px solid #e7ece6;
	border-radius: 10px;
	background: #f8faf7;
	color: #748178;
	font-size: .7rem;
	line-height: 1.65;
}

.pedi-disclaimer i {
	margin-top: 2px;
	color: #438b72;
}

.pedi-journey-section {
	padding: 77px 0 83px;
	background: #f5f8f5;
}

.pedi-journey-section .pedi-section-heading {
	max-width: 720px;
}

.pedi-journey-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin-top: 34px;
}

.pedi-journey-step {
	position: relative;
	padding: 21px;
	border: 1px solid #e5ebe5;
	border-radius: 14px;
	background: #fff;
}

.pedi-step-count {
	position: absolute;
	top: 17px;
	right: 17px;
	color: #aab6ad;
	font-size: .68rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.pedi-step-icon {
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	border: 1px solid #e0eee5;
	border-radius: 15px;
	background: #edf6ef;
	color: #438b68;
	font-size: 1.08rem;
}

.pedi-journey-step h3 {
	margin: 16px 0 7px;
	font-size: .96rem;
	font-weight: 720;
}

.pedi-journey-step p {
	margin: 0;
	color: var(--pedi-muted);
	font-size: .74rem;
	line-height: 1.7;
}

.pedi-faq-section {
	padding: 79px 0;
	background: #fff;
}

.pedi-faq-section .pedi-section-title {
	margin-bottom: 12px;
}

.pedi-faq-section .pedi-section-copy {
	margin-bottom: 16px;
	font-size: .87rem;
}

.pedi-faq-list {
	border-top: 1px solid #e4ebe5;
}

.pedi-faq-item {
	padding: 18px 0;
	border-bottom: 1px solid #e4ebe5;
}

.pedi-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--pedi-ink);
	font-size: .92rem;
	font-weight: 700;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.pedi-faq-item summary::-webkit-details-marker {
	display: none;
}

.pedi-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--pedi-teal);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.pedi-faq-item[open] summary::after {
	content: "\f2ea";
}

.pedi-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--pedi-muted);
	font-size: .83rem;
	line-height: 1.75;
}

.pedi-cta-section {
	padding: 67px 0 83px;
	background: #f5f8f5;
}

.pedi-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 46px 50px;
	border-radius: 21px;
	background:
		radial-gradient(circle at 89% 7%, rgba(248, 201, 165, .25), transparent 29%),
		linear-gradient(120deg, #256c68 0%, #258a83 60%, #49a294 100%);
	box-shadow: 0 19px 44px rgba(37, 122, 112, .22);
}

.pedi-cta-panel h2 {
	max-width: 650px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.85rem, 3vw, 2.5rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.pedi-cta-kicker {
	margin: 0 0 12px;
	color: #d7f0e8;
	font-size: .7rem;
	font-weight: 750;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.pedi-cta-panel p:not(.pedi-cta-kicker) {
	max-width: 600px;
	margin: 0;
	color: rgba(255, 255, 255, .82);
	font-size: .88rem;
	line-height: 1.75;
}

.pedi-button-light {
	background: #fff;
	color: #28756e;
	box-shadow: none;
}

.pedi-button-light:hover,
.pedi-button-light:focus {
	transform: translateY(-2px);
	background: #f1faf6;
	color: #1f625b;
}

.pedi-cta-link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .88);
	font-size: .78rem;
	font-weight: 650;
}

.pedi-cta-link:hover,
.pedi-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.pedi-hero {
		padding-top: 70px;
	}

	.pedi-hero-visual {
		max-width: 700px;
		margin: 0 auto;
	}

	.pedi-prevention-visual {
		max-width: 700px;
	}

	.pedi-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 767.98px) {
	.pedi-stage-row {
		grid-template-columns: 1fr;
		margin-top: 28px;
	}

	.pedi-journey-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {
	.pedi-hero {
		padding: 53px 0 57px;
	}

	.pedi-hero h1 {
		font-size: 2.45rem;
	}

	.pedi-hero-copy {
		font-size: .91rem;
	}

	.pedi-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.pedi-button-primary {
		padding: 0 15px;
		font-size: .78rem;
	}

	.pedi-hero-visual {
		min-height: 365px;
	}

	.pedi-sunburst-one {
		width: 330px;
		height: 330px;
	}

	.pedi-sunburst-two {
		width: 275px;
		height: 275px;
	}

	.pedi-hero-photo {
		width: min(72%, 300px);
		height: 315px;
		border-width: 6px;
		border-radius: 48% 48% 20px 20px;
	}

	.pedi-photo-caption {
		right: 8px;
		bottom: 9px;
		left: 8px;
		gap: 7px;
		padding: 9px;
	}

	.pedi-photo-caption > i {
		width: 31px;
		height: 31px;
		flex-basis: 31px;
		font-size: .92rem;
	}

	.pedi-photo-caption strong {
		font-size: .62rem;
	}

	.pedi-photo-caption small {
		font-size: .51rem;
	}

	.pedi-record-card {
		right: -3px;
		bottom: 45px;
		gap: 6px;
		padding: 9px;
	}

	.pedi-record-icon {
		width: 31px;
		height: 31px;
		flex-basis: 31px;
		border-radius: 10px;
		font-size: .9rem;
	}

	.pedi-record-card strong {
		font-size: .59rem;
	}

	.pedi-record-card small {
		font-size: .49rem;
	}

	.pedi-record-check {
		font-size: .72rem;
	}

	.pedi-float-label {
		gap: 6px;
		padding: 8px 10px;
		font-size: .58rem;
	}

	.pedi-float-growth {
		top: 37px;
		left: -2px;
	}

	.pedi-float-care {
		right: -2px;
		bottom: 17px;
	}

	.pedi-spark-one {
		top: 21px;
		right: 22px;
	}

	.pedi-spark-two {
		bottom: 33px;
		left: 18px;
	}

	.pedi-care-items {
		justify-content: flex-start;
		gap: 11px;
	}

	.pedi-care-items span {
		width: calc(50% - 6px);
		font-size: .7rem;
		text-align: left;
	}

	.pedi-intro-section,
	.pedi-features-section,
	.pedi-prevention-section,
	.pedi-journey-section,
	.pedi-faq-section {
		padding: 57px 0;
	}

	.pedi-section-title {
		font-size: 1.88rem;
	}

	.pedi-feature-grid {
		margin-top: 21px;
	}

	.pedi-feature-card {
		padding: 22px;
	}

	.pedi-prevention-visual {
		min-height: 300px;
		padding: 0 13px 22px 0;
	}

	.pedi-prevention-visual > img {
		height: 280px;
		border-radius: 17px 17px 45px 17px;
	}

	.pedi-prevention-note {
		top: 11px;
		left: -2px;
		gap: 7px;
		padding: 9px 10px;
	}

	.pedi-prevention-note strong {
		font-size: .6rem;
	}

	.pedi-prevention-note small {
		font-size: .51rem;
	}

	.pedi-prevention-sticker {
		right: 0;
		bottom: 2px;
		padding: 8px 10px;
		font-size: .58rem;
	}

	.pedi-journey-grid {
		gap: 10px;
		margin-top: 22px;
	}

	.pedi-journey-step {
		padding: 15px;
	}

	.pedi-journey-step p {
		font-size: .69rem;
	}

	.pedi-faq-item summary {
		padding-right: 32px;
		font-size: .86rem;
	}

	.pedi-faq-item p {
		margin-right: 4px;
	}

	.pedi-cta-section {
		padding: 42px 0 55px;
	}

	.pedi-cta-panel {
		padding: 28px 22px;
		border-radius: 16px;
	}

	.pedi-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.pedi-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pedi-feature-card,
	.pedi-button-primary,
	.pedi-button-light {
		transition: none;
	}
}

/* Orthopedic EMR landing page */
.ortho-page {
	--ortho-ink: #20344b;
	--ortho-muted: #697b8d;
	--ortho-blue: #3974bd;
	--ortho-teal: #218d86;
	--ortho-coral: #db806e;
	overflow: hidden;
	color: var(--ortho-muted);
}

.ortho-page h1,
.ortho-page h2,
.ortho-page h3 {
	color: var(--ortho-ink);
}

.ortho-hero {
	padding: 82px 0 87px;
	background: radial-gradient(ellipse at 86% 12%, rgba(114, 167, 202, .17), transparent 31%), linear-gradient(130deg, #f2f8fb 0%, #fff 57%, #f4f8f5 100%);
}

.ortho-eyebrow,
.ortho-kicker {
	margin: 0 0 14px;
	color: var(--ortho-blue);
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.ortho-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #dce8ef;
	border-radius: 40px;
	background: rgba(255, 255, 255, .85);
	letter-spacing: .06em;
}

.ortho-hero h1 {
	max-width: 640px;
	margin: 14px 0 19px;
	font-size: clamp(2.6rem, 4.7vw, 4.1rem);
	font-weight: 760;
	letter-spacing: -.055em;
	line-height: 1.07;
}

.ortho-hero h1 span {
	color: var(--ortho-blue);
}

.ortho-hero-copy,
.ortho-section-copy {
	color: var(--ortho-muted);
	font-size: .95rem;
	line-height: 1.82;
}

.ortho-hero-copy {
	max-width: 590px;
	margin: 0;
}

.ortho-hero-points,
.ortho-check-list {
	display: grid;
	gap: 10px;
	margin: 20px 0 0;
	padding: 0;
	list-style: none;
}

.ortho-hero-points li,
.ortho-check-list li {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	color: #45596d;
	font-size: .82rem;
}

.ortho-hero-points i {
	margin-top: 2px;
	color: #438f72;
}

.ortho-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 26px;
}

.ortho-button-primary,
.ortho-button-light {
	display: inline-flex;
	min-height: 51px;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 0 20px;
	border: 0;
	border-radius: 10px;
	background: var(--ortho-blue);
	color: #fff;
	font-size: .85rem;
	font-weight: 700;
	box-shadow: 0 11px 25px rgba(57, 116, 189, .2);
	transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}

.ortho-button-primary:hover,
.ortho-button-primary:focus {
	transform: translateY(-2px);
	background: #2c5e9b;
	color: #fff;
	box-shadow: 0 15px 28px rgba(57, 116, 189, .26);
}

.ortho-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #347b83;
	font-size: .85rem;
	font-weight: 700;
}

.ortho-text-link:hover {
	color: #245961;
}

.ortho-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 23px;
	color: #7a8995;
	font-size: .74rem;
}

.ortho-hero-note i {
	color: var(--ortho-teal);
}

.ortho-hero-visual {
	position: relative;
	display: grid;
	min-height: 475px;
	place-items: center;
	max-width: 620px;
	margin-left: auto;
}

.ortho-hero-orbit {
	position: absolute;
	border: 1px solid rgba(57, 116, 189, .15);
	border-radius: 50%;
}

.ortho-orbit-large {
	width: 430px;
	height: 430px;
	background: radial-gradient(circle, rgba(221, 237, 242, .75), rgba(221, 237, 242, .1) 67%, transparent 68%);
}

.ortho-orbit-small {
	width: 345px;
	height: 345px;
	border-style: dashed;
	border-color: rgba(33, 141, 134, .25);
}

.ortho-hero-photo {
	position: relative;
	width: min(70%, 370px);
	height: 395px;
	overflow: hidden;
	border: 8px solid #fff;
	border-radius: 47% 47% 26px 26px;
	background: #e6edf1;
	box-shadow: 0 26px 58px rgba(41, 71, 94, .19);
	transform: rotate(1.5deg);
}

.ortho-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ortho-photo-overlay {
	position: absolute;
	inset: 45% 0 0;
	background: linear-gradient(180deg, transparent, rgba(26, 49, 69, .48));
}

.ortho-photo-caption {
	position: absolute;
	right: 12px;
	bottom: 12px;
	left: 12px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px;
	border: 1px solid rgba(255, 255, 255, .8);
	border-radius: 13px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 9px 23px rgba(33, 61, 79, .12);
}

.ortho-photo-caption > i {
	display: grid;
	width: 36px;
	height: 36px;
	flex: 0 0 36px;
	place-items: center;
	border-radius: 12px;
	background: #eaf2fa;
	color: var(--ortho-blue);
}

.ortho-photo-caption strong,
.ortho-photo-caption small,
.ortho-case-row strong,
.ortho-case-row small {
	display: block;
}

.ortho-photo-caption strong {
	color: #374d61;
	font-size: .68rem;
}

.ortho-photo-caption small {
	margin-top: 3px;
	color: #85929d;
	font-size: .55rem;
}

.ortho-case-card {
	position: absolute;
	right: -3px;
	bottom: 45px;
	z-index: 2;
	width: 238px;
	padding: 13px;
	border: 1px solid #e1e9ed;
	border-radius: 14px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 15px 35px rgba(38, 63, 81, .16);
}

.ortho-case-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 8px;
	color: #3b5063;
	font-size: .68rem;
	font-weight: 750;
}

.ortho-case-top i {
	color: #95a2aa;
}

.ortho-case-row {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 0;
	border-top: 1px solid #edf1f0;
}

.ortho-case-row > i:first-child {
	color: var(--ortho-blue);
	font-size: .9rem;
}

.ortho-case-row span {
	flex: 1;
}

.ortho-case-row strong {
	color: #425568;
	font-size: .57rem;
}

.ortho-case-row small {
	margin-top: 2px;
	color: #89959e;
	font-size: .5rem;
}

.ortho-case-check {
	color: #4b9a78;
	font-size: .75rem;
}

.ortho-case-arrow {
	color: #8797a2;
	font-size: .7rem;
}

.ortho-case-footer {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 6px;
	padding-top: 8px;
	border-top: 1px solid #edf1f0;
	color: #7d8a91;
	font-size: .52rem;
}

.ortho-case-footer span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #48a17c;
}

.ortho-floating-tag {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 13px;
	border: 1px solid rgba(255, 255, 255, .9);
	border-radius: 40px;
	background: #fff;
	color: #4d6070;
	font-size: .65rem;
	font-weight: 700;
	box-shadow: 0 10px 24px rgba(39, 66, 84, .12);
}

.ortho-floating-tag i {
	color: var(--ortho-teal);
}

.ortho-tag-one {
	top: 67px;
	left: 0;
}

.ortho-tag-two {
	right: 1px;
	bottom: 13px;
}

.ortho-spark {
	position: absolute;
	top: 35px;
	right: 60px;
	color: #e4ad62;
	font-size: 1.4rem;
}

.ortho-workflow-strip {
	padding: 23px 0 26px;
	border-top: 1px solid #e7ecef;
	border-bottom: 1px solid #e7ecef;
	background: #fff;
	text-align: center;
}

.ortho-workflow-strip > .container > p {
	margin: 0 0 16px;
	color: #8996a0;
	font-size: .7rem;
	font-weight: 750;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.ortho-workflow-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px 34px;
}

.ortho-workflow-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #4a5d6d;
	font-size: .79rem;
	font-weight: 650;
}

.ortho-workflow-items i {
	color: var(--ortho-teal);
	font-size: .98rem;
}

.ortho-overview-section {
	padding: 76px 0 79px;
	background: #fff;
}

.ortho-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3.1vw, 2.7rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.ortho-overview-section .ortho-section-title {
	max-width: 540px;
}

.ortho-section-copy {
	margin: 0;
	font-size: .9rem;
}

.ortho-overview-detail {
	margin-top: 11px;
}

.ortho-overview-section .ortho-text-link {
	margin-top: 16px;
}

.ortho-practice-points {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 13px;
	margin-top: 38px;
}

.ortho-practice-point {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 17px;
	border: 1px solid #e5ebef;
	border-radius: 12px;
	background: #fbfcfd;
}

.ortho-point-icon {
	display: grid;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	place-items: center;
	border-radius: 12px;
	font-size: 1rem;
}

.ortho-point-blue,
.ortho-tone-blue {
	background: #eaf1fb;
	color: #4b78bc;
}

.ortho-point-coral,
.ortho-tone-coral {
	background: #fff0eb;
	color: #d47b69;
}

.ortho-point-green,
.ortho-tone-green {
	background: #e9f4ed;
	color: #498765;
}

.ortho-practice-point strong,
.ortho-practice-point small {
	display: block;
}

.ortho-practice-point strong {
	margin: 1px 0 5px;
	color: #40566a;
	font-size: .75rem;
}

.ortho-practice-point small {
	color: #7e8d96;
	font-size: .64rem;
	line-height: 1.55;
}

.ortho-features-section,
.ortho-journey-section {
	padding: 81px 0 88px;
	background: #f3f7f9;
}

.ortho-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 34px;
}

.ortho-section-heading > div {
	max-width: 640px;
}

.ortho-section-heading > .ortho-section-copy {
	max-width: 380px;
	margin-bottom: 4px;
	font-size: .85rem;
}

.ortho-feature-grid {
	margin-top: 32px;
}

.ortho-feature-card {
	height: 100%;
	padding: 25px;
	border: 1px solid #e2eaf0;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(39, 66, 88, .045);
	transition: transform .2s ease, box-shadow .2s ease;
}

.ortho-feature-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 32px rgba(39, 66, 88, .1);
}

.ortho-feature-icon {
	display: grid;
	width: 47px;
	height: 47px;
	place-items: center;
	border-radius: 14px;
	font-size: 1.12rem;
}

.ortho-tone-purple {
	background: #f0ebfa;
	color: #8067a8;
}

.ortho-tone-amber {
	background: #fff4df;
	color: #b5852f;
}

.ortho-tone-teal {
	background: #e4f4f1;
	color: #308a81;
}

.ortho-feature-kicker {
	display: block;
	margin-top: 18px;
	color: #929fa7;
	font-size: .58rem;
	font-weight: 750;
	letter-spacing: .1em;
}

.ortho-feature-card h3 {
	margin: 7px 0 8px;
	font-size: 1rem;
	font-weight: 720;
	letter-spacing: -.02em;
}

.ortho-feature-card p {
	margin: 0;
	color: var(--ortho-muted);
	font-size: .8rem;
	line-height: 1.75;
}

.ortho-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 14px;
	color: #3977a5;
	font-size: .75rem;
	font-weight: 700;
}

.ortho-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 14px;
}

.ortho-feature-tags span {
	padding: 5px 8px;
	border: 1px solid #e6ecef;
	border-radius: 30px;
	background: #fafcfd;
	color: #788992;
	font-size: .58rem;
	font-weight: 650;
}

.ortho-imaging-section {
	padding: 83px 0;
	background: #fff;
}

.ortho-imaging-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 25px 26px 0;
}

.ortho-imaging-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 24px 24px 60px 24px;
	object-fit: cover;
	box-shadow: 0 22px 48px rgba(37, 67, 90, .15);
}

.ortho-imaging-note {
	position: absolute;
	top: 20px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px 14px;
	border: 1px solid #e2eaf0;
	border-radius: 13px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 10px 26px rgba(39, 66, 88, .12);
}

.ortho-imaging-note > i {
	color: var(--ortho-blue);
	font-size: 1.1rem;
}

.ortho-imaging-note strong,
.ortho-imaging-note small {
	display: block;
}

.ortho-imaging-note strong {
	color: #40576a;
	font-size: .67rem;
}

.ortho-imaging-note small {
	margin-top: 3px;
	color: #84929b;
	font-size: .55rem;
}

.ortho-imaging-stamp {
	position: absolute;
	right: 0;
	bottom: 2px;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 13px;
	border: 1px solid #e3eaee;
	border-radius: 30px;
	background: #fff;
	color: #536a75;
	font-size: .63rem;
	font-weight: 700;
	box-shadow: 0 8px 22px rgba(39, 66, 88, .1);
}

.ortho-imaging-stamp i {
	color: var(--ortho-teal);
}

.ortho-imaging-section .ortho-section-title {
	margin-bottom: 13px;
}

.ortho-check-list {
	margin-top: 19px;
}

.ortho-check-list li {
	font-size: .79rem;
}

.ortho-check-list i {
	display: grid;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	place-items: center;
	border-radius: 50%;
	background: #e7f3ec;
	color: #438865;
	font-size: .75rem;
}

.ortho-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 20px 0 0;
	padding: 12px 13px;
	border: 1px solid #e4ebef;
	border-radius: 10px;
	background: #f8fafb;
	color: #71808b;
	font-size: .69rem;
	line-height: 1.65;
}

.ortho-disclaimer i {
	margin-top: 2px;
	color: var(--ortho-blue);
}

.ortho-journey-heading {
	align-items: flex-end;
}

.ortho-journey-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin-top: 33px;
}

.ortho-journey-step {
	position: relative;
	padding: 21px;
	border: 1px solid #e1e9ef;
	border-radius: 14px;
	background: #fff;
}

.ortho-step-count {
	position: absolute;
	top: 17px;
	right: 17px;
	color: #a7b4bf;
	font-size: .68rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.ortho-step-icon {
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	border: 1px solid #dce9ef;
	border-radius: 14px;
	background: #ebf3f7;
	color: var(--ortho-blue);
	font-size: 1.08rem;
}

.ortho-journey-step h3 {
	margin: 16px 0 7px;
	font-size: .95rem;
	font-weight: 720;
}

.ortho-journey-step p {
	margin: 0;
	color: var(--ortho-muted);
	font-size: .73rem;
	line-height: 1.7;
}

.ortho-faq-section {
	padding: 79px 0;
	background: #fff;
}

.ortho-faq-section .ortho-section-title {
	margin-bottom: 12px;
}

.ortho-faq-section .ortho-section-copy {
	margin-bottom: 16px;
	font-size: .86rem;
}

.ortho-faq-list {
	border-top: 1px solid #e1e9ef;
}

.ortho-faq-item {
	padding: 18px 0;
	border-bottom: 1px solid #e1e9ef;
}

.ortho-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--ortho-ink);
	font-size: .91rem;
	font-weight: 700;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.ortho-faq-item summary::-webkit-details-marker {
	display: none;
}

.ortho-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--ortho-blue);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.ortho-faq-item[open] summary::after {
	content: "\f2ea";
}

.ortho-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--ortho-muted);
	font-size: .82rem;
	line-height: 1.75;
}

.ortho-cta-section {
	padding: 66px 0 82px;
	background: #f3f7f9;
}

.ortho-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 46px 50px;
	border-radius: 21px;
	background: radial-gradient(circle at 90% 5%, rgba(132, 195, 199, .24), transparent 29%), linear-gradient(120deg, #254c68 0%, #3974a7 57%, #328d91 100%);
	box-shadow: 0 19px 44px rgba(42, 94, 124, .21);
}

.ortho-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.85rem, 3vw, 2.5rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.ortho-cta-kicker {
	margin: 0 0 12px;
	color: #d6ebed;
	font-size: .69rem;
	font-weight: 750;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ortho-cta-panel p:not(.ortho-cta-kicker) {
	max-width: 600px;
	margin: 0;
	color: rgba(255, 255, 255, .82);
	font-size: .87rem;
	line-height: 1.75;
}

.ortho-button-light {
	background: #fff;
	color: #315f84;
	box-shadow: none;
}

.ortho-button-light:hover,
.ortho-button-light:focus {
	transform: translateY(-2px);
	background: #f0f7f8;
	color: #234b6c;
}

.ortho-cta-link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .88);
	font-size: .77rem;
	font-weight: 650;
}

.ortho-cta-link:hover,
.ortho-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.ortho-hero {
		padding-top: 70px;
	}

	.ortho-hero-visual {
		max-width: 700px;
		margin: 0 auto;
	}

	.ortho-section-heading {
		display: block;
	}

	.ortho-section-heading > .ortho-section-copy {
		max-width: 620px;
		margin-top: 13px;
	}

	.ortho-imaging-visual {
		max-width: 700px;
	}

	.ortho-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 767.98px) {
	.ortho-practice-points {
		grid-template-columns: 1fr;
		margin-top: 27px;
	}

	.ortho-journey-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {
	.ortho-hero {
		padding: 53px 0 57px;
	}

	.ortho-hero h1 {
		font-size: 2.4rem;
	}

	.ortho-hero-copy {
		font-size: .9rem;
	}

	.ortho-hero-points {
		gap: 9px;
	}

	.ortho-hero-points li {
		font-size: .75rem;
	}

	.ortho-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.ortho-button-primary {
		padding: 0 14px;
		font-size: .76rem;
	}

	.ortho-hero-visual {
		min-height: 365px;
	}

	.ortho-orbit-large {
		width: 330px;
		height: 330px;
	}

	.ortho-orbit-small {
		width: 275px;
		height: 275px;
	}

	.ortho-hero-photo {
		width: min(70%, 300px);
		height: 310px;
		border-width: 6px;
	}

	.ortho-photo-caption {
		right: 8px;
		bottom: 8px;
		left: 8px;
		gap: 6px;
		padding: 8px;
	}

	.ortho-photo-caption > i {
		width: 30px;
		height: 30px;
		flex-basis: 30px;
		font-size: .9rem;
	}

	.ortho-photo-caption strong {
		font-size: .57rem;
	}

	.ortho-photo-caption small {
		font-size: .48rem;
	}

	.ortho-case-card {
		right: -3px;
		bottom: 29px;
		width: 205px;
		padding: 10px;
	}

	.ortho-case-top {
		font-size: .62rem;
	}

	.ortho-case-row {
		gap: 6px;
		padding: 7px 0;
	}

	.ortho-case-row strong {
		font-size: .51rem;
	}

	.ortho-case-row small,
	.ortho-case-footer {
		font-size: .46rem;
	}

	.ortho-floating-tag {
		gap: 5px;
		padding: 8px 10px;
		font-size: .56rem;
	}

	.ortho-tag-one {
		top: 32px;
		left: -2px;
	}

	.ortho-tag-two {
		right: -2px;
		bottom: 8px;
	}

	.ortho-spark {
		top: 12px;
		right: 23px;
	}

	.ortho-workflow-items {
		justify-content: flex-start;
		gap: 11px;
	}

	.ortho-workflow-items span {
		width: calc(50% - 6px);
		font-size: .69rem;
		text-align: left;
	}

	.ortho-overview-section,
	.ortho-features-section,
	.ortho-imaging-section,
	.ortho-journey-section,
	.ortho-faq-section {
		padding: 57px 0;
	}

	.ortho-section-title {
		font-size: 1.88rem;
	}

	.ortho-practice-points {
		gap: 9px;
	}

	.ortho-feature-grid {
		margin-top: 21px;
	}

	.ortho-feature-card {
		padding: 22px;
	}

	.ortho-imaging-visual {
		min-height: 300px;
		padding: 0 13px 22px 0;
	}

	.ortho-imaging-visual > img {
		height: 280px;
		border-radius: 17px 17px 45px 17px;
	}

	.ortho-imaging-note {
		top: 11px;
		left: -2px;
		gap: 7px;
		padding: 9px 10px;
	}

	.ortho-imaging-note strong {
		font-size: .59rem;
	}

	.ortho-imaging-note small {
		font-size: .49rem;
	}

	.ortho-imaging-stamp {
		right: 0;
		bottom: 2px;
		padding: 8px 10px;
		font-size: .56rem;
	}

	.ortho-journey-grid {
		gap: 10px;
		margin-top: 22px;
	}

	.ortho-journey-step {
		padding: 15px;
	}

	.ortho-journey-step p {
		font-size: .68rem;
	}

	.ortho-faq-item summary {
		padding-right: 32px;
		font-size: .85rem;
	}

	.ortho-faq-item p {
		margin-right: 4px;
	}

	.ortho-cta-section {
		padding: 42px 0 55px;
	}

	.ortho-cta-panel {
		padding: 28px 22px;
		border-radius: 16px;
	}

	.ortho-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.ortho-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ortho-feature-card,
	.ortho-button-primary,
	.ortho-button-light {
		transition: none;
	}
}

/* Pulmonology EMR landing page */
.pulmo-page {
	--pulmo-ink: #1d354b;
	--pulmo-muted: #687d8b;
	--pulmo-teal: #268b87;
	--pulmo-blue: #447bb3;
	--pulmo-coral: #df8a73;
	overflow: hidden;
	color: var(--pulmo-muted);
}

.pulmo-page h1,
.pulmo-page h2,
.pulmo-page h3 {
	color: var(--pulmo-ink);
}

.pulmo-hero {
	padding: 82px 0 87px;
	background:
		radial-gradient(ellipse at 86% 12%, rgba(105, 180, 174, .17), transparent 30%),
		linear-gradient(130deg, #f1f9f8 0%, #fff 57%, #f2f7fb 100%);
}

.pulmo-eyebrow,
.pulmo-kicker {
	margin: 0 0 14px;
	color: var(--pulmo-teal);
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.pulmo-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #d7ebe8;
	border-radius: 40px;
	background: rgba(255, 255, 255, .85);
	letter-spacing: .06em;
}

.pulmo-hero h1 {
	max-width: 635px;
	margin: 14px 0 19px;
	font-size: clamp(2.6rem, 4.7vw, 4.1rem);
	font-weight: 760;
	letter-spacing: -.055em;
	line-height: 1.07;
}

.pulmo-hero h1 span {
	color: var(--pulmo-teal);
}

.pulmo-hero-copy,
.pulmo-section-copy {
	color: var(--pulmo-muted);
	font-size: .95rem;
	line-height: 1.82;
}

.pulmo-hero-copy {
	max-width: 590px;
	margin: 0;
}

.pulmo-hero-points,
.pulmo-check-list {
	display: grid;
	gap: 10px;
	margin: 20px 0 0;
	padding: 0;
	list-style: none;
}

.pulmo-hero-points li,
.pulmo-check-list li {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	color: #465c69;
	font-size: .82rem;
}

.pulmo-hero-points i {
	margin-top: 2px;
	color: #429779;
}

.pulmo-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 26px;
}

.pulmo-button-primary,
.pulmo-button-light {
	display: inline-flex;
	min-height: 51px;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 0 20px;
	border: 0;
	border-radius: 10px;
	background: var(--pulmo-teal);
	color: #fff;
	font-size: .85rem;
	font-weight: 700;
	box-shadow: 0 11px 25px rgba(38, 139, 135, .2);
	transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}

.pulmo-button-primary:hover,
.pulmo-button-primary:focus {
	transform: translateY(-2px);
	background: #1d716e;
	color: #fff;
	box-shadow: 0 15px 28px rgba(38, 139, 135, .27);
}

.pulmo-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #347a8a;
	font-size: .85rem;
	font-weight: 700;
}

.pulmo-text-link:hover,
.pulmo-text-link:focus {
	color: #225a69;
}

.pulmo-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 23px;
	color: #7a8b95;
	font-size: .74rem;
}

.pulmo-hero-note i {
	color: var(--pulmo-blue);
}

.pulmo-hero-visual {
	position: relative;
	display: grid;
	min-height: 480px;
	place-items: center;
	max-width: 620px;
	margin-left: auto;
}

.pulmo-visual-halo {
	position: absolute;
	border: 1px solid rgba(38, 139, 135, .14);
	border-radius: 50%;
}

.pulmo-halo-one {
	width: 430px;
	height: 430px;
	background: radial-gradient(circle, rgba(220, 241, 235, .78), rgba(220, 241, 235, .08) 68%, transparent 69%);
}

.pulmo-halo-two {
	width: 350px;
	height: 350px;
	border-style: dashed;
	border-color: rgba(68, 123, 179, .22);
}

.pulmo-hero-photo {
	position: relative;
	width: min(69%, 365px);
	height: 395px;
	overflow: hidden;
	border: 8px solid #fff;
	border-radius: 47% 47% 25px 25px;
	background: #e6efed;
	box-shadow: 0 27px 58px rgba(37, 72, 81, .19);
	transform: rotate(-1.5deg);
}

.pulmo-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.pulmo-photo-overlay {
	position: absolute;
	inset: 46% 0 0;
	background: linear-gradient(180deg, transparent, rgba(23, 48, 64, .48));
}

.pulmo-photo-caption {
	position: absolute;
	right: 12px;
	bottom: 12px;
	left: 12px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px;
	border: 1px solid rgba(255, 255, 255, .8);
	border-radius: 13px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 9px 23px rgba(35, 66, 73, .12);
}

.pulmo-photo-caption > i {
	display: grid;
	width: 36px;
	height: 36px;
	flex: 0 0 36px;
	place-items: center;
	border-radius: 12px;
	background: #e4f4f0;
	color: var(--pulmo-teal);
	font-size: 1.05rem;
}

.pulmo-photo-caption strong,
.pulmo-photo-caption small {
	display: block;
}

.pulmo-photo-caption strong {
	color: #3a5060;
	font-size: .68rem;
}

.pulmo-photo-caption small {
	margin-top: 3px;
	color: #84939c;
	font-size: .55rem;
}

.pulmo-record-card {
	position: absolute;
	right: -3px;
	bottom: 42px;
	z-index: 2;
	width: 239px;
	padding: 13px;
	border: 1px solid #e0e9e8;
	border-radius: 14px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 15px 35px rgba(37, 68, 76, .16);
}

.pulmo-record-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 8px;
	color: #3d5361;
	font-size: .67rem;
	font-weight: 750;
}

.pulmo-record-head i {
	color: #96a4a8;
}

.pulmo-record-row {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 0;
	border-top: 1px solid #edf1ef;
}

.pulmo-record-row > i:first-child {
	color: var(--pulmo-teal);
	font-size: .9rem;
}

.pulmo-record-row span {
	flex: 1;
}

.pulmo-record-row strong,
.pulmo-record-row small {
	display: block;
}

.pulmo-record-row strong {
	color: #435967;
	font-size: .56rem;
}

.pulmo-record-row small {
	margin-top: 2px;
	color: #88969c;
	font-size: .49rem;
}

.pulmo-record-check {
	color: #4b9c79;
	font-size: .75rem;
}

.pulmo-record-arrow {
	color: #85969c;
	font-size: .7rem;
}

.pulmo-record-foot {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 6px;
	padding-top: 8px;
	border-top: 1px solid #edf1ef;
	color: #7f8e92;
	font-size: .51rem;
}

.pulmo-record-foot span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #48a27d;
}

.pulmo-float-tag {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 13px;
	border: 1px solid rgba(255, 255, 255, .9);
	border-radius: 40px;
	background: #fff;
	color: #4e636e;
	font-size: .65rem;
	font-weight: 700;
	box-shadow: 0 10px 24px rgba(37, 68, 76, .12);
}

.pulmo-float-tag i {
	color: var(--pulmo-teal);
}

.pulmo-tag-one {
	top: 65px;
	left: 0;
}

.pulmo-tag-two {
	right: 0;
	bottom: 12px;
}

.pulmo-spark {
	position: absolute;
	color: #e3af66;
	font-size: 1.4rem;
}

.pulmo-spark-one {
	top: 34px;
	right: 61px;
}

.pulmo-spark-two {
	bottom: 77px;
	left: 31px;
	color: #72b8ad;
	font-size: 1rem;
}

.pulmo-workflow-strip {
	padding: 23px 0 26px;
	border-top: 1px solid #e6ecec;
	border-bottom: 1px solid #e6ecec;
	background: #fff;
	text-align: center;
}

.pulmo-workflow-strip > .container > p {
	margin: 0 0 16px;
	color: #87959b;
	font-size: .7rem;
	font-weight: 750;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.pulmo-workflow-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px 35px;
}

.pulmo-workflow-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #4b606b;
	font-size: .79rem;
	font-weight: 650;
}

.pulmo-workflow-items i {
	color: var(--pulmo-teal);
	font-size: .97rem;
}

.pulmo-overview-section {
	padding: 76px 0 79px;
	background: #fff;
}

.pulmo-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3.1vw, 2.68rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.pulmo-overview-section .pulmo-section-title {
	max-width: 550px;
}

.pulmo-section-copy {
	margin: 0;
	font-size: .89rem;
}

.pulmo-overview-detail {
	margin-top: 11px;
}

.pulmo-overview-section .pulmo-text-link {
	margin-top: 16px;
}

.pulmo-focus-row {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 13px;
	margin-top: 38px;
}

.pulmo-focus-item {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 17px;
	border: 1px solid #e3ebeb;
	border-radius: 12px;
	background: #fbfcfc;
}

.pulmo-focus-icon {
	display: grid;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	place-items: center;
	border-radius: 12px;
	font-size: 1rem;
}

.pulmo-focus-blue,
.pulmo-tone-blue {
	background: #e9f1f9;
	color: #4b7eaf;
}

.pulmo-focus-teal,
.pulmo-tone-teal {
	background: #e4f4f0;
	color: #328a7d;
}

.pulmo-focus-coral,
.pulmo-tone-coral {
	background: #fff0e9;
	color: #d47f68;
}

.pulmo-focus-item strong,
.pulmo-focus-item small {
	display: block;
}

.pulmo-focus-item strong {
	margin: 1px 0 5px;
	color: #405864;
	font-size: .75rem;
}

.pulmo-focus-item small {
	color: #7f9095;
	font-size: .64rem;
	line-height: 1.55;
}

.pulmo-features-section,
.pulmo-journey-section {
	padding: 81px 0 88px;
	background: #f3f8f7;
}

.pulmo-section-header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 35px;
}

.pulmo-section-header > div {
	max-width: 640px;
}

.pulmo-section-header > .pulmo-section-copy {
	max-width: 380px;
	margin-bottom: 4px;
	font-size: .85rem;
}

.pulmo-feature-grid {
	margin-top: 32px;
}

.pulmo-feature-card {
	height: 100%;
	padding: 25px;
	border: 1px solid #e2ebe8;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(40, 77, 70, .045);
	transition: transform .2s ease, box-shadow .2s ease;
}

.pulmo-feature-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 32px rgba(40, 77, 70, .1);
}

.pulmo-feature-icon {
	display: grid;
	width: 47px;
	height: 47px;
	place-items: center;
	border-radius: 14px;
	font-size: 1.12rem;
}

.pulmo-tone-purple {
	background: #f0ebfa;
	color: #8067a8;
}

.pulmo-tone-amber {
	background: #fff4dd;
	color: #b7862f;
}

.pulmo-tone-green {
	background: #e8f3ea;
	color: #47865b;
}

.pulmo-feature-label {
	display: block;
	margin-top: 18px;
	color: #919f9c;
	font-size: .58rem;
	font-weight: 750;
	letter-spacing: .1em;
}

.pulmo-feature-card h3 {
	margin: 7px 0 8px;
	font-size: 1rem;
	font-weight: 720;
	letter-spacing: -.02em;
}

.pulmo-feature-card p {
	margin: 0;
	color: var(--pulmo-muted);
	font-size: .79rem;
	line-height: 1.75;
}

.pulmo-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 14px;
	color: #347b84;
	font-size: .74rem;
	font-weight: 700;
}

.pulmo-feature-card > a:hover {
	color: #225a63;
}

.pulmo-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 14px;
}

.pulmo-feature-tags span {
	padding: 5px 8px;
	border: 1px solid #e6edeb;
	border-radius: 30px;
	background: #fafcfb;
	color: #788b87;
	font-size: .58rem;
	font-weight: 650;
}

.pulmo-diagnostics-section {
	padding: 82px 0;
	background: #fff;
}

.pulmo-diagnostics-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 26px 0;
}

.pulmo-diagnostics-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 24px 24px 60px 24px;
	object-fit: cover;
	box-shadow: 0 22px 48px rgba(39, 72, 80, .14);
}

.pulmo-diagnostics-note {
	position: absolute;
	top: 20px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px 14px;
	border: 1px solid #e2ebe8;
	border-radius: 13px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 10px 26px rgba(39, 72, 80, .12);
}

.pulmo-diagnostics-note > i {
	color: var(--pulmo-teal);
	font-size: 1.1rem;
}

.pulmo-diagnostics-note strong,
.pulmo-diagnostics-note small {
	display: block;
}

.pulmo-diagnostics-note strong {
	color: #405963;
	font-size: .67rem;
}

.pulmo-diagnostics-note small {
	margin-top: 3px;
	color: #849397;
	font-size: .55rem;
}

.pulmo-diagnostics-label {
	position: absolute;
	right: 0;
	bottom: 2px;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 13px;
	border: 1px solid #e3ebe8;
	border-radius: 30px;
	background: #fff;
	color: #526a6e;
	font-size: .63rem;
	font-weight: 700;
	box-shadow: 0 8px 22px rgba(39, 72, 80, .1);
}

.pulmo-diagnostics-label i {
	color: var(--pulmo-blue);
}

.pulmo-diagnostics-section .pulmo-section-title {
	margin-bottom: 13px;
}

.pulmo-check-list {
	margin-top: 19px;
}

.pulmo-check-list li {
	font-size: .79rem;
}

.pulmo-check-list i {
	display: grid;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	place-items: center;
	border-radius: 50%;
	background: #e6f3ef;
	color: #388c78;
	font-size: .75rem;
}

.pulmo-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 20px 0 0;
	padding: 12px 13px;
	border: 1px solid #e3ebe8;
	border-radius: 10px;
	background: #f8faf9;
	color: #71817f;
	font-size: .69rem;
	line-height: 1.65;
}

.pulmo-disclaimer i {
	margin-top: 2px;
	color: var(--pulmo-teal);
}

.pulmo-journey-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin-top: 33px;
}

.pulmo-journey-step {
	position: relative;
	padding: 21px;
	border: 1px solid #e1ebe8;
	border-radius: 14px;
	background: #fff;
}

.pulmo-step-number {
	position: absolute;
	top: 17px;
	right: 17px;
	color: #a7b8b1;
	font-size: .68rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.pulmo-step-icon {
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	border: 1px solid #dcece7;
	border-radius: 14px;
	background: #eaf5f1;
	color: var(--pulmo-teal);
	font-size: 1.08rem;
}

.pulmo-journey-step h3 {
	margin: 16px 0 7px;
	font-size: .95rem;
	font-weight: 720;
}

.pulmo-journey-step p {
	margin: 0;
	color: var(--pulmo-muted);
	font-size: .73rem;
	line-height: 1.7;
}

.pulmo-faq-section {
	padding: 79px 0;
	background: #fff;
}

.pulmo-faq-section .pulmo-section-title {
	margin-bottom: 12px;
}

.pulmo-faq-section .pulmo-section-copy {
	margin-bottom: 16px;
	font-size: .86rem;
}

.pulmo-faq-list {
	border-top: 1px solid #e2ebe8;
}

.pulmo-faq-item {
	padding: 18px 0;
	border-bottom: 1px solid #e2ebe8;
}

.pulmo-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--pulmo-ink);
	font-size: .91rem;
	font-weight: 700;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.pulmo-faq-item summary::-webkit-details-marker {
	display: none;
}

.pulmo-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--pulmo-teal);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.pulmo-faq-item[open] summary::after {
	content: "\f2ea";
}

.pulmo-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--pulmo-muted);
	font-size: .82rem;
	line-height: 1.75;
}

.pulmo-cta-section {
	padding: 66px 0 82px;
	background: #f3f8f7;
}

.pulmo-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 46px 50px;
	border-radius: 21px;
	background:
		radial-gradient(circle at 90% 5%, rgba(135, 206, 190, .25), transparent 29%),
		linear-gradient(120deg, #20566a 0%, #268b87 58%, #3c9f93 100%);
	box-shadow: 0 19px 44px rgba(34, 119, 115, .22);
}

.pulmo-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.85rem, 3vw, 2.5rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.pulmo-cta-kicker {
	margin: 0 0 12px;
	color: #d5efeb;
	font-size: .69rem;
	font-weight: 750;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.pulmo-cta-panel p:not(.pulmo-cta-kicker) {
	max-width: 600px;
	margin: 0;
	color: rgba(255, 255, 255, .82);
	font-size: .87rem;
	line-height: 1.75;
}

.pulmo-button-light {
	background: #fff;
	color: #28736e;
	box-shadow: none;
}

.pulmo-button-light:hover,
.pulmo-button-light:focus {
	transform: translateY(-2px);
	background: #effaf7;
	color: #1c5e59;
}

.pulmo-cta-link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .88);
	font-size: .77rem;
	font-weight: 650;
}

.pulmo-cta-link:hover,
.pulmo-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.pulmo-hero {
		padding-top: 70px;
	}

	.pulmo-hero-visual {
		max-width: 700px;
		margin: 0 auto;
	}

	.pulmo-section-header {
		display: block;
	}

	.pulmo-section-header > .pulmo-section-copy {
		max-width: 620px;
		margin-top: 13px;
	}

	.pulmo-diagnostics-visual {
		max-width: 700px;
	}

	.pulmo-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 767.98px) {
	.pulmo-focus-row {
		grid-template-columns: 1fr;
		margin-top: 27px;
	}

	.pulmo-journey-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {
	.pulmo-hero {
		padding: 53px 0 57px;
	}

	.pulmo-hero h1 {
		font-size: 2.4rem;
	}

	.pulmo-hero-copy {
		font-size: .9rem;
	}

	.pulmo-hero-points {
		gap: 9px;
	}

	.pulmo-hero-points li {
		font-size: .75rem;
	}

	.pulmo-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.pulmo-button-primary {
		padding: 0 14px;
		font-size: .76rem;
	}

	.pulmo-hero-visual {
		min-height: 365px;
	}

	.pulmo-halo-one {
		width: 330px;
		height: 330px;
	}

	.pulmo-halo-two {
		width: 275px;
		height: 275px;
	}

	.pulmo-hero-photo {
		width: min(69%, 300px);
		height: 310px;
		border-width: 6px;
	}

	.pulmo-photo-caption {
		right: 8px;
		bottom: 8px;
		left: 8px;
		gap: 6px;
		padding: 8px;
	}

	.pulmo-photo-caption > i {
		width: 30px;
		height: 30px;
		flex-basis: 30px;
		font-size: .9rem;
	}

	.pulmo-photo-caption strong {
		font-size: .57rem;
	}

	.pulmo-photo-caption small {
		font-size: .48rem;
	}

	.pulmo-record-card {
		right: -3px;
		bottom: 26px;
		width: 205px;
		padding: 10px;
	}

	.pulmo-record-head {
		font-size: .61rem;
	}

	.pulmo-record-row {
		gap: 6px;
		padding: 7px 0;
	}

	.pulmo-record-row strong {
		font-size: .51rem;
	}

	.pulmo-record-row small,
	.pulmo-record-foot {
		font-size: .46rem;
	}

	.pulmo-float-tag {
		gap: 5px;
		padding: 8px 10px;
		font-size: .56rem;
	}

	.pulmo-tag-one {
		top: 32px;
		left: -2px;
	}

	.pulmo-tag-two {
		right: -2px;
		bottom: 6px;
	}

	.pulmo-spark-one {
		top: 11px;
		right: 22px;
	}

	.pulmo-spark-two {
		bottom: 32px;
		left: 14px;
	}

	.pulmo-workflow-items {
		justify-content: flex-start;
		gap: 11px;
	}

	.pulmo-workflow-items span {
		width: calc(50% - 6px);
		font-size: .69rem;
		text-align: left;
	}

	.pulmo-overview-section,
	.pulmo-features-section,
	.pulmo-diagnostics-section,
	.pulmo-journey-section,
	.pulmo-faq-section {
		padding: 57px 0;
	}

	.pulmo-section-title {
		font-size: 1.88rem;
	}

	.pulmo-focus-row {
		gap: 9px;
	}

	.pulmo-feature-grid {
		margin-top: 21px;
	}

	.pulmo-feature-card {
		padding: 22px;
	}

	.pulmo-diagnostics-visual {
		min-height: 300px;
		padding: 0 13px 22px 0;
	}

	.pulmo-diagnostics-visual > img {
		height: 280px;
		border-radius: 17px 17px 45px 17px;
	}

	.pulmo-diagnostics-note {
		top: 11px;
		left: -2px;
		gap: 7px;
		padding: 9px 10px;
	}

	.pulmo-diagnostics-note strong {
		font-size: .59rem;
	}

	.pulmo-diagnostics-note small {
		font-size: .49rem;
	}

	.pulmo-diagnostics-label {
		right: 0;
		bottom: 2px;
		padding: 8px 10px;
		font-size: .56rem;
	}

	.pulmo-journey-grid {
		gap: 10px;
		margin-top: 22px;
	}

	.pulmo-journey-step {
		padding: 15px;
	}

	.pulmo-journey-step p {
		font-size: .68rem;
	}

	.pulmo-faq-item summary {
		padding-right: 32px;
		font-size: .85rem;
	}

	.pulmo-faq-item p {
		margin-right: 4px;
	}

	.pulmo-cta-section {
		padding: 42px 0 55px;
	}

	.pulmo-cta-panel {
		padding: 28px 22px;
		border-radius: 16px;
	}

	.pulmo-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.pulmo-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pulmo-feature-card,
	.pulmo-button-primary,
	.pulmo-button-light {
		transition: none;
	}
}

/* Rheumatology EMR landing page */
.rheum-page {
	--rheum-ink: #2c304d;
	--rheum-muted: #74788f;
	--rheum-violet: #7467bb;
	--rheum-teal: #398c8a;
	--rheum-coral: #d98578;
	overflow: hidden;
	color: var(--rheum-muted);
}

.rheum-page h1,
.rheum-page h2,
.rheum-page h3 {
	color: var(--rheum-ink);
}

.rheum-hero {
	padding: 82px 0 87px;
	background: radial-gradient(ellipse at 86% 12%, rgba(154, 143, 210, .17), transparent 31%), linear-gradient(130deg, #f7f6fc 0%, #fff 58%, #f1f8f7 100%);
}

.rheum-eyebrow,
.rheum-kicker {
	margin: 0 0 14px;
	color: var(--rheum-violet);
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.rheum-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #e4e0f1;
	border-radius: 40px;
	background: rgba(255, 255, 255, .85);
	letter-spacing: .06em;
}

.rheum-hero h1 {
	max-width: 630px;
	margin: 14px 0 19px;
	font-size: clamp(2.6rem, 4.7vw, 4.1rem);
	font-weight: 760;
	letter-spacing: -.055em;
	line-height: 1.07;
}

.rheum-hero h1 span {
	color: var(--rheum-violet);
}

.rheum-hero-copy,
.rheum-section-copy {
	color: var(--rheum-muted);
	font-size: .95rem;
	line-height: 1.82;
}

.rheum-hero-copy {
	max-width: 590px;
	margin: 0;
}

.rheum-hero-points,
.rheum-check-list {
	display: grid;
	gap: 10px;
	margin: 20px 0 0;
	padding: 0;
	list-style: none;
}

.rheum-hero-points li,
.rheum-check-list li {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	color: #51566f;
	font-size: .82rem;
}

.rheum-hero-points i {
	margin-top: 2px;
	color: #4a9a78;
}

.rheum-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 26px;
}

.rheum-button-primary,
.rheum-button-light {
	display: inline-flex;
	min-height: 51px;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 0 20px;
	border: 0;
	border-radius: 10px;
	background: var(--rheum-violet);
	color: #fff;
	font-size: .85rem;
	font-weight: 700;
	box-shadow: 0 11px 25px rgba(116, 103, 187, .2);
	transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}

.rheum-button-primary:hover,
.rheum-button-primary:focus {
	transform: translateY(-2px);
	background: #5d529b;
	color: #fff;
	box-shadow: 0 15px 28px rgba(116, 103, 187, .27);
}

.rheum-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #4d7e88;
	font-size: .85rem;
	font-weight: 700;
}

.rheum-text-link:hover,
.rheum-text-link:focus {
	color: #315b65;
}

.rheum-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 23px;
	color: #85869a;
	font-size: .74rem;
}

.rheum-hero-note i {
	color: var(--rheum-teal);
}

.rheum-hero-visual {
	position: relative;
	display: grid;
	min-height: 480px;
	place-items: center;
	max-width: 620px;
	margin-left: auto;
}

.rheum-hero-halo {
	position: absolute;
	border: 1px solid rgba(116, 103, 187, .14);
	border-radius: 50%;
}

.rheum-halo-one {
	width: 430px;
	height: 430px;
	background: radial-gradient(circle, rgba(232, 228, 245, .72), rgba(232, 228, 245, .08) 68%, transparent 69%);
}

.rheum-halo-two {
	width: 350px;
	height: 350px;
	border-style: dashed;
	border-color: rgba(57, 140, 138, .23);
}

.rheum-hero-photo {
	position: relative;
	width: min(69%, 365px);
	height: 395px;
	overflow: hidden;
	border: 8px solid #fff;
	border-radius: 47% 47% 25px 25px;
	background: #ebeaf0;
	box-shadow: 0 27px 58px rgba(59, 55, 95, .17);
	transform: rotate(1.5deg);
}

.rheum-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.rheum-photo-overlay {
	position: absolute;
	inset: 46% 0 0;
	background: linear-gradient(180deg, transparent, rgba(39, 44, 66, .46));
}

.rheum-photo-caption {
	position: absolute;
	right: 12px;
	bottom: 12px;
	left: 12px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px;
	border: 1px solid rgba(255, 255, 255, .8);
	border-radius: 13px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 9px 23px rgba(53, 53, 83, .12);
}

.rheum-photo-caption > i {
	display: grid;
	width: 36px;
	height: 36px;
	flex: 0 0 36px;
	place-items: center;
	border-radius: 12px;
	background: #f0edfa;
	color: var(--rheum-violet);
	font-size: 1.04rem;
}

.rheum-photo-caption strong,
.rheum-photo-caption small {
	display: block;
}

.rheum-photo-caption strong {
	color: #45445e;
	font-size: .68rem;
}

.rheum-photo-caption small {
	margin-top: 3px;
	color: #8a899b;
	font-size: .55rem;
}

.rheum-record-card {
	position: absolute;
	right: -3px;
	bottom: 42px;
	z-index: 2;
	width: 239px;
	padding: 13px;
	border: 1px solid #e5e3ed;
	border-radius: 14px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 15px 35px rgba(57, 53, 87, .15);
}

.rheum-record-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 8px;
	color: #4a4b65;
	font-size: .67rem;
	font-weight: 750;
}

.rheum-record-header i {
	color: #a09eb0;
}

.rheum-record-line {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 0;
	border-top: 1px solid #f0eef4;
}

.rheum-record-line > i:first-child {
	color: var(--rheum-violet);
	font-size: .9rem;
}

.rheum-record-line span {
	flex: 1;
}

.rheum-record-line strong,
.rheum-record-line small {
	display: block;
}

.rheum-record-line strong {
	color: #4c5066;
	font-size: .56rem;
}

.rheum-record-line small {
	margin-top: 2px;
	color: #908fa0;
	font-size: .49rem;
}

.rheum-record-check {
	color: #4c9b79;
	font-size: .75rem;
}

.rheum-record-arrow {
	color: #8a98a0;
	font-size: .7rem;
}

.rheum-record-footer {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 6px;
	padding-top: 8px;
	border-top: 1px solid #f0eef4;
	color: #848497;
	font-size: .51rem;
}

.rheum-record-footer span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #48a17c;
}

.rheum-float-label {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 13px;
	border: 1px solid rgba(255, 255, 255, .9);
	border-radius: 40px;
	background: #fff;
	color: #5a5c72;
	font-size: .65rem;
	font-weight: 700;
	box-shadow: 0 10px 24px rgba(57, 53, 87, .12);
}

.rheum-float-label i {
	color: var(--rheum-teal);
}

.rheum-label-joint {
	top: 65px;
	left: 0;
}

.rheum-label-follow {
	right: 0;
	bottom: 12px;
}

.rheum-spark {
	position: absolute;
	top: 35px;
	right: 61px;
	color: #e6b166;
	font-size: 1.4rem;
}

.rheum-spark-two {
	top: auto;
	right: auto;
	bottom: 77px;
	left: 31px;
	color: #77b7ab;
	font-size: 1rem;
}

.rheum-workflow-strip {
	padding: 23px 0 26px;
	border-top: 1px solid #e9e8ef;
	border-bottom: 1px solid #e9e8ef;
	background: #fff;
	text-align: center;
}

.rheum-workflow-strip > .container > p {
	margin: 0 0 16px;
	color: #8e8c9c;
	font-size: .7rem;
	font-weight: 750;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.rheum-workflow-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px 34px;
}

.rheum-workflow-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #55596e;
	font-size: .78rem;
	font-weight: 650;
}

.rheum-workflow-items i {
	color: var(--rheum-teal);
	font-size: .97rem;
}

.rheum-overview-section {
	padding: 76px 0 79px;
	background: #fff;
}

.rheum-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3.1vw, 2.68rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.rheum-overview-section .rheum-section-title {
	max-width: 550px;
}

.rheum-section-copy {
	margin: 0;
	font-size: .89rem;
}

.rheum-overview-detail {
	margin-top: 11px;
}

.rheum-overview-section .rheum-text-link {
	margin-top: 16px;
}

.rheum-focus-row {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 13px;
	margin-top: 38px;
}

.rheum-focus-card {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 17px;
	border: 1px solid #e8e6ef;
	border-radius: 12px;
	background: #fcfbfd;
}

.rheum-focus-icon {
	display: grid;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	place-items: center;
	border-radius: 12px;
	font-size: 1rem;
}

.rheum-focus-blue,
.rheum-tone-blue {
	background: #eceffc;
	color: #647ac0;
}

.rheum-focus-violet,
.rheum-tone-violet {
	background: #f0ecfa;
	color: #8069af;
}

.rheum-focus-green,
.rheum-tone-green {
	background: #e8f4ed;
	color: #478b6a;
}

.rheum-focus-card strong,
.rheum-focus-card small {
	display: block;
}

.rheum-focus-card strong {
	margin: 1px 0 5px;
	color: #4e5068;
	font-size: .74rem;
}

.rheum-focus-card small {
	color: #88899b;
	font-size: .63rem;
	line-height: 1.55;
}

.rheum-features-section,
.rheum-journey-section {
	padding: 81px 0 88px;
	background: #f6f5fa;
}

.rheum-section-header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 35px;
}

.rheum-section-header > div {
	max-width: 640px;
}

.rheum-section-header > .rheum-section-copy {
	max-width: 380px;
	margin-bottom: 4px;
	font-size: .85rem;
}

.rheum-feature-grid {
	margin-top: 32px;
}

.rheum-feature-card {
	height: 100%;
	padding: 25px;
	border: 1px solid #e7e5ed;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(54, 50, 78, .045);
	transition: transform .2s ease, box-shadow .2s ease;
}

.rheum-feature-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 32px rgba(54, 50, 78, .1);
}

.rheum-feature-icon {
	display: grid;
	width: 47px;
	height: 47px;
	place-items: center;
	border-radius: 14px;
	font-size: 1.12rem;
}

.rheum-tone-coral {
	background: #fff0ec;
	color: #d27e70;
}

.rheum-tone-amber {
	background: #fff4df;
	color: #b58b3b;
}

.rheum-tone-teal {
	background: #e5f4f1;
	color: #348a83;
}

.rheum-feature-label {
	display: block;
	margin-top: 18px;
	color: #9694a3;
	font-size: .58rem;
	font-weight: 750;
	letter-spacing: .1em;
}

.rheum-feature-card h3 {
	margin: 7px 0 8px;
	font-size: 1rem;
	font-weight: 720;
	letter-spacing: -.02em;
}

.rheum-feature-card p {
	margin: 0;
	color: var(--rheum-muted);
	font-size: .79rem;
	line-height: 1.75;
}

.rheum-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 14px;
	color: #5d6eab;
	font-size: .74rem;
	font-weight: 700;
}

.rheum-feature-card > a:hover {
	color: #454f87;
}

.rheum-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 14px;
}

.rheum-feature-tags span {
	padding: 5px 8px;
	border: 1px solid #e9e7ed;
	border-radius: 30px;
	background: #fbfafc;
	color: #817f91;
	font-size: .58rem;
	font-weight: 650;
}

.rheum-records-section {
	padding: 82px 0;
	background: #fff;
}

.rheum-records-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 26px 0;
}

.rheum-records-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 24px 24px 60px 24px;
	object-fit: cover;
	box-shadow: 0 22px 48px rgba(57, 53, 87, .14);
}

.rheum-records-note {
	position: absolute;
	top: 20px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px 14px;
	border: 1px solid #e7e5ed;
	border-radius: 13px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 10px 26px rgba(57, 53, 87, .12);
}

.rheum-records-note > i {
	color: var(--rheum-violet);
	font-size: 1.1rem;
}

.rheum-records-note strong,
.rheum-records-note small {
	display: block;
}

.rheum-records-note strong {
	color: #4c4d66;
	font-size: .67rem;
}

.rheum-records-note small {
	margin-top: 3px;
	color: #8a8998;
	font-size: .55rem;
}

.rheum-records-stamp {
	position: absolute;
	right: 0;
	bottom: 2px;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 13px;
	border: 1px solid #e7e5ed;
	border-radius: 30px;
	background: #fff;
	color: #5c6471;
	font-size: .63rem;
	font-weight: 700;
	box-shadow: 0 8px 22px rgba(57, 53, 87, .1);
}

.rheum-records-stamp i {
	color: var(--rheum-teal);
}

.rheum-records-section .rheum-section-title {
	margin-bottom: 13px;
}

.rheum-check-list {
	margin-top: 19px;
}

.rheum-check-list li {
	font-size: .79rem;
}

.rheum-check-list i {
	display: grid;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	place-items: center;
	border-radius: 50%;
	background: #e9f4ed;
	color: #478b6a;
	font-size: .75rem;
}

.rheum-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 20px 0 0;
	padding: 12px 13px;
	border: 1px solid #e7e5ed;
	border-radius: 10px;
	background: #faf9fc;
	color: #7b7b8d;
	font-size: .69rem;
	line-height: 1.65;
}

.rheum-disclaimer i {
	margin-top: 2px;
	color: var(--rheum-violet);
}

.rheum-journey-heading {
	max-width: 730px;
	margin: 0 auto;
}

.rheum-journey-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin-top: 33px;
}

.rheum-journey-step {
	position: relative;
	padding: 21px;
	border: 1px solid #e7e5ed;
	border-radius: 14px;
	background: #fff;
}

.rheum-step-number {
	position: absolute;
	top: 17px;
	right: 17px;
	color: #aaa8b5;
	font-size: .68rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.rheum-step-icon {
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	border: 1px solid #e5e2f0;
	border-radius: 14px;
	background: #f0edfa;
	color: var(--rheum-violet);
	font-size: 1.08rem;
}

.rheum-journey-step h3 {
	margin: 16px 0 7px;
	font-size: .95rem;
	font-weight: 720;
}

.rheum-journey-step p {
	margin: 0;
	color: var(--rheum-muted);
	font-size: .73rem;
	line-height: 1.7;
}

.rheum-faq-section {
	padding: 79px 0;
	background: #fff;
}

.rheum-faq-section .rheum-section-title {
	margin-bottom: 12px;
}

.rheum-faq-section .rheum-section-copy {
	margin-bottom: 16px;
	font-size: .86rem;
}

.rheum-faq-list {
	border-top: 1px solid #e8e6ed;
}

.rheum-faq-item {
	padding: 18px 0;
	border-bottom: 1px solid #e8e6ed;
}

.rheum-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--rheum-ink);
	font-size: .91rem;
	font-weight: 700;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.rheum-faq-item summary::-webkit-details-marker {
	display: none;
}

.rheum-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--rheum-violet);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.rheum-faq-item[open] summary::after {
	content: "\f2ea";
}

.rheum-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--rheum-muted);
	font-size: .82rem;
	line-height: 1.75;
}

.rheum-cta-section {
	padding: 66px 0 82px;
	background: #f6f5fa;
}

.rheum-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 46px 50px;
	border-radius: 21px;
	background: radial-gradient(circle at 90% 5%, rgba(145, 202, 190, .23), transparent 29%), linear-gradient(120deg, #393c68 0%, #645fa2 58%, #438d8d 100%);
	box-shadow: 0 19px 44px rgba(75, 70, 133, .22);
}

.rheum-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.85rem, 3vw, 2.5rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.rheum-cta-kicker {
	margin: 0 0 12px;
	color: #e3e0f5;
	font-size: .69rem;
	font-weight: 750;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.rheum-cta-panel p:not(.rheum-cta-kicker) {
	max-width: 600px;
	margin: 0;
	color: rgba(255, 255, 255, .82);
	font-size: .87rem;
	line-height: 1.75;
}

.rheum-button-light {
	background: #fff;
	color: #514f86;
	box-shadow: none;
}

.rheum-button-light:hover,
.rheum-button-light:focus {
	transform: translateY(-2px);
	background: #f4f3fc;
	color: #3c3b6c;
}

.rheum-cta-link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .88);
	font-size: .77rem;
	font-weight: 650;
}

.rheum-cta-link:hover,
.rheum-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.rheum-hero {
		padding-top: 70px;
	}

	.rheum-hero-visual {
		max-width: 700px;
		margin: 0 auto;
	}

	.rheum-section-header {
		display: block;
	}

	.rheum-section-header > .rheum-section-copy {
		max-width: 620px;
		margin-top: 13px;
	}

	.rheum-records-visual {
		max-width: 700px;
	}

	.rheum-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 767.98px) {
	.rheum-focus-row {
		grid-template-columns: 1fr;
		margin-top: 27px;
	}

	.rheum-journey-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {
	.rheum-hero {
		padding: 53px 0 57px;
	}

	.rheum-hero h1 {
		font-size: 2.4rem;
	}

	.rheum-hero-copy {
		font-size: .9rem;
	}

	.rheum-hero-points {
		gap: 9px;
	}

	.rheum-hero-points li {
		font-size: .75rem;
	}

	.rheum-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.rheum-button-primary {
		padding: 0 14px;
		font-size: .76rem;
	}

	.rheum-hero-visual {
		min-height: 365px;
	}

	.rheum-halo-one {
		width: 330px;
		height: 330px;
	}

	.rheum-halo-two {
		width: 275px;
		height: 275px;
	}

	.rheum-hero-photo {
		width: min(69%, 300px);
		height: 310px;
		border-width: 6px;
	}

	.rheum-photo-caption {
		right: 8px;
		bottom: 8px;
		left: 8px;
		gap: 6px;
		padding: 8px;
	}

	.rheum-photo-caption > i {
		width: 30px;
		height: 30px;
		flex-basis: 30px;
		font-size: .9rem;
	}

	.rheum-photo-caption strong {
		font-size: .57rem;
	}

	.rheum-photo-caption small {
		font-size: .48rem;
	}

	.rheum-record-card {
		right: -3px;
		bottom: 26px;
		width: 205px;
		padding: 10px;
	}

	.rheum-record-header {
		font-size: .61rem;
	}

	.rheum-record-line {
		gap: 6px;
		padding: 7px 0;
	}

	.rheum-record-line strong {
		font-size: .51rem;
	}

	.rheum-record-line small,
	.rheum-record-footer {
		font-size: .46rem;
	}

	.rheum-float-label {
		gap: 5px;
		padding: 8px 10px;
		font-size: .56rem;
	}

	.rheum-label-joint {
		top: 32px;
		left: -2px;
	}

	.rheum-label-follow {
		right: -2px;
		bottom: 6px;
	}

	.rheum-spark-one {
		top: 11px;
		right: 22px;
	}

	.rheum-spark-two {
		bottom: 32px;
		left: 14px;
	}

	.rheum-workflow-items {
		justify-content: flex-start;
		gap: 11px;
	}

	.rheum-workflow-items span {
		width: calc(50% - 6px);
		font-size: .68rem;
		text-align: left;
	}

	.rheum-overview-section,
	.rheum-features-section,
	.rheum-records-section,
	.rheum-journey-section,
	.rheum-faq-section {
		padding: 57px 0;
	}

	.rheum-section-title {
		font-size: 1.88rem;
	}

	.rheum-focus-row {
		gap: 9px;
	}

	.rheum-feature-grid {
		margin-top: 21px;
	}

	.rheum-feature-card {
		padding: 22px;
	}

	.rheum-records-visual {
		min-height: 300px;
		padding: 0 13px 22px 0;
	}

	.rheum-records-visual > img {
		height: 280px;
		border-radius: 17px 17px 45px 17px;
	}

	.rheum-records-note {
		top: 11px;
		left: -2px;
		gap: 7px;
		padding: 9px 10px;
	}

	.rheum-records-note strong {
		font-size: .59rem;
	}

	.rheum-records-note small {
		font-size: .49rem;
	}

	.rheum-records-stamp {
		right: 0;
		bottom: 2px;
		padding: 8px 10px;
		font-size: .56rem;
	}

	.rheum-journey-grid {
		gap: 10px;
		margin-top: 22px;
	}

	.rheum-journey-step {
		padding: 15px;
	}

	.rheum-journey-step p {
		font-size: .68rem;
	}

	.rheum-faq-item summary {
		padding-right: 32px;
		font-size: .85rem;
	}

	.rheum-faq-item p {
		margin-right: 4px;
	}

	.rheum-cta-section {
		padding: 42px 0 55px;
	}

	.rheum-cta-panel {
		padding: 28px 22px;
		border-radius: 16px;
	}

	.rheum-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.rheum-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.rheum-feature-card,
	.rheum-button-primary,
	.rheum-button-light {
		transition: none;
	}
}

/* Ophthalmology EMR landing page */
.ophth-page {
	--ophth-ink: #25344b;
	--ophth-muted: #6d7c90;
	--ophth-blue: #466fbe;
	--ophth-teal: #258b8a;
	--ophth-gold: #d7a65e;
	overflow: hidden;
	color: var(--ophth-muted);
}

.ophth-page h1,
.ophth-page h2,
.ophth-page h3 {
	color: var(--ophth-ink);
}

.ophth-hero {
	padding: 82px 0 87px;
	background:
		radial-gradient(ellipse at 87% 12%, rgba(116, 174, 198, .18), transparent 31%),
		linear-gradient(130deg, #f2f8fb 0%, #fff 57%, #f5f8fc 100%);
}

.ophth-eyebrow,
.ophth-kicker {
	margin: 0 0 14px;
	color: var(--ophth-blue);
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.ophth-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #dce7f0;
	border-radius: 40px;
	background: rgba(255, 255, 255, .85);
	letter-spacing: .06em;
}

.ophth-hero h1 {
	max-width: 650px;
	margin: 14px 0 19px;
	font-size: clamp(2.55rem, 4.65vw, 4.05rem);
	font-weight: 760;
	letter-spacing: -.055em;
	line-height: 1.07;
}

.ophth-hero h1 span {
	color: var(--ophth-blue);
}

.ophth-hero-copy,
.ophth-section-copy {
	color: var(--ophth-muted);
	font-size: .95rem;
	line-height: 1.82;
}

.ophth-hero-copy {
	max-width: 590px;
	margin: 0;
}

.ophth-hero-points,
.ophth-check-list {
	display: grid;
	gap: 10px;
	margin: 20px 0 0;
	padding: 0;
	list-style: none;
}

.ophth-hero-points li,
.ophth-check-list li {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	color: #485a70;
	font-size: .81rem;
}

.ophth-hero-points i {
	margin-top: 2px;
	color: #419679;
}

.ophth-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 26px;
}

.ophth-button-primary,
.ophth-button-light {
	display: inline-flex;
	min-height: 51px;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 0 20px;
	border: 0;
	border-radius: 10px;
	background: var(--ophth-blue);
	color: #fff;
	font-size: .84rem;
	font-weight: 700;
	box-shadow: 0 11px 25px rgba(70, 111, 190, .2);
	transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}

.ophth-button-primary:hover,
.ophth-button-primary:focus {
	transform: translateY(-2px);
	background: #355894;
	color: #fff;
	box-shadow: 0 15px 28px rgba(70, 111, 190, .27);
}

.ophth-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #347b87;
	font-size: .84rem;
	font-weight: 700;
}

.ophth-text-link:hover,
.ophth-text-link:focus {
	color: #235a65;
}

.ophth-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 23px;
	color: #7e8d98;
	font-size: .74rem;
}

.ophth-hero-note i {
	color: var(--ophth-teal);
}

.ophth-hero-visual {
	position: relative;
	display: grid;
	min-height: 480px;
	place-items: center;
	max-width: 620px;
	margin-left: auto;
}

.ophth-visual-orbit {
	position: absolute;
	border: 1px solid rgba(70, 111, 190, .14);
	border-radius: 50%;
}

.ophth-orbit-one {
	width: 430px;
	height: 430px;
	background: radial-gradient(circle, rgba(222, 237, 244, .8), rgba(222, 237, 244, .08) 68%, transparent 69%);
}

.ophth-orbit-two {
	width: 350px;
	height: 350px;
	border-style: dashed;
	border-color: rgba(37, 139, 138, .23);
}

.ophth-hero-photo {
	position: relative;
	width: min(69%, 365px);
	height: 395px;
	overflow: hidden;
	border: 8px solid #fff;
	border-radius: 48% 48% 25px 25px;
	background: #e7edf0;
	box-shadow: 0 27px 58px rgba(43, 69, 98, .18);
	transform: rotate(-1.5deg);
}

.ophth-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ophth-photo-overlay {
	position: absolute;
	inset: 46% 0 0;
	background: linear-gradient(180deg, transparent, rgba(27, 47, 67, .47));
}

.ophth-photo-caption {
	position: absolute;
	right: 12px;
	bottom: 12px;
	left: 12px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px;
	border: 1px solid rgba(255, 255, 255, .8);
	border-radius: 13px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 9px 23px rgba(39, 62, 83, .12);
}

.ophth-photo-caption > i {
	display: grid;
	width: 36px;
	height: 36px;
	flex: 0 0 36px;
	place-items: center;
	border-radius: 12px;
	background: #eaf1fb;
	color: var(--ophth-blue);
	font-size: 1.04rem;
}

.ophth-photo-caption strong,
.ophth-photo-caption small {
	display: block;
}

.ophth-photo-caption strong {
	color: #3d5065;
	font-size: .67rem;
}

.ophth-photo-caption small {
	margin-top: 3px;
	color: #85939d;
	font-size: .54rem;
}

.ophth-exam-card {
	position: absolute;
	right: -3px;
	bottom: 42px;
	z-index: 2;
	width: 243px;
	padding: 13px;
	border: 1px solid #e1e9ef;
	border-radius: 14px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 15px 35px rgba(40, 66, 91, .16);
}

.ophth-exam-card-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 8px;
	color: #40556b;
	font-size: .67rem;
	font-weight: 750;
}

.ophth-exam-card-head i {
	color: #96a3af;
}

.ophth-measure-row {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 0;
	border-top: 1px solid #edf1f4;
}

.ophth-eye-symbol,
.ophth-image-symbol {
	display: grid;
	width: 28px;
	height: 28px;
	flex: 0 0 28px;
	place-items: center;
	border-radius: 9px;
	background: #edf2fb;
	color: var(--ophth-blue);
	font-size: .78rem;
}

.ophth-image-symbol {
	background: #e8f4f1;
	color: var(--ophth-teal);
}

.ophth-measure-row span:nth-child(2) {
	flex: 1;
}

.ophth-measure-row strong,
.ophth-measure-row small {
	display: block;
}

.ophth-measure-row strong {
	color: #465b6e;
	font-size: .55rem;
}

.ophth-measure-row small {
	margin-top: 2px;
	color: #8a98a2;
	font-size: .48rem;
}

.ophth-measure-check {
	color: #4c9b79;
	font-size: .75rem;
}

.ophth-measure-arrow {
	color: #8b9aa3;
	font-size: .7rem;
}

.ophth-exam-footer {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 6px;
	padding-top: 8px;
	border-top: 1px solid #edf1f4;
	color: #7d8d96;
	font-size: .51rem;
}

.ophth-exam-footer span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #49a27c;
}

.ophth-floating-label {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 13px;
	border: 1px solid rgba(255, 255, 255, .9);
	border-radius: 40px;
	background: #fff;
	color: #506174;
	font-size: .64rem;
	font-weight: 700;
	box-shadow: 0 10px 24px rgba(40, 66, 91, .12);
}

.ophth-floating-label i {
	color: var(--ophth-teal);
}

.ophth-label-exam {
	top: 65px;
	left: 0;
}

.ophth-label-follow {
	right: 0;
	bottom: 12px;
}

.ophth-visual-spark {
	position: absolute;
	top: 35px;
	right: 61px;
	color: var(--ophth-gold);
	font-size: 1.4rem;
}

.ophth-spark-two {
	top: auto;
	right: auto;
	bottom: 77px;
	left: 31px;
	color: #76b9ad;
	font-size: 1rem;
}

.ophth-workflow-strip {
	padding: 23px 0 26px;
	border-top: 1px solid #e6ecef;
	border-bottom: 1px solid #e6ecef;
	background: #fff;
	text-align: center;
}

.ophth-workflow-strip > .container > p {
	margin: 0 0 16px;
	color: #87949d;
	font-size: .7rem;
	font-weight: 750;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.ophth-workflow-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px 34px;
}

.ophth-workflow-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #4b5d70;
	font-size: .78rem;
	font-weight: 650;
}

.ophth-workflow-items i {
	color: var(--ophth-teal);
	font-size: .97rem;
}

.ophth-overview-section {
	padding: 76px 0 79px;
	background: #fff;
}

.ophth-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3.1vw, 2.68rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.ophth-overview-section .ophth-section-title {
	max-width: 550px;
}

.ophth-section-copy {
	margin: 0;
	font-size: .89rem;
}

.ophth-overview-detail {
	margin-top: 11px;
}

.ophth-overview-section .ophth-text-link {
	margin-top: 16px;
}

.ophth-overview-cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 13px;
	margin-top: 38px;
}

.ophth-overview-card {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 17px;
	border: 1px solid #e4ebf0;
	border-radius: 12px;
	background: #fbfcfd;
}

.ophth-overview-icon {
	display: grid;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	place-items: center;
	border-radius: 12px;
	font-size: 1rem;
}

.ophth-overview-blue,
.ophth-tone-blue {
	background: #eaf0fb;
	color: #5275bc;
}

.ophth-overview-violet,
.ophth-tone-purple {
	background: #f0ecfa;
	color: #8066ac;
}

.ophth-overview-teal,
.ophth-tone-teal {
	background: #e4f4f1;
	color: #308a82;
}

.ophth-overview-card strong,
.ophth-overview-card small {
	display: block;
}

.ophth-overview-card strong {
	margin: 1px 0 5px;
	color: #43566a;
	font-size: .74rem;
}

.ophth-overview-card small {
	color: #7f8e98;
	font-size: .63rem;
	line-height: 1.55;
}

.ophth-features-section,
.ophth-journey-section {
	padding: 81px 0 88px;
	background: #f3f7fa;
}

.ophth-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 34px;
}

.ophth-section-heading > div {
	max-width: 640px;
}

.ophth-section-heading > .ophth-section-copy {
	max-width: 380px;
	margin-bottom: 4px;
	font-size: .85rem;
}

.ophth-feature-grid {
	margin-top: 32px;
}

.ophth-feature-card {
	height: 100%;
	padding: 25px;
	border: 1px solid #e1e9ef;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(39, 65, 90, .045);
	transition: transform .2s ease, box-shadow .2s ease;
}

.ophth-feature-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 32px rgba(39, 65, 90, .1);
}

.ophth-feature-icon {
	display: grid;
	width: 47px;
	height: 47px;
	place-items: center;
	border-radius: 14px;
	font-size: 1.12rem;
}

.ophth-tone-coral {
	background: #fff0eb;
	color: #d27e6d;
}

.ophth-tone-amber {
	background: #fff4df;
	color: #b4842f;
}

.ophth-tone-green {
	background: #e8f3eb;
	color: #47845e;
}

.ophth-feature-label {
	display: block;
	margin-top: 18px;
	color: #909da5;
	font-size: .58rem;
	font-weight: 750;
	letter-spacing: .1em;
}

.ophth-feature-card h3 {
	margin: 7px 0 8px;
	font-size: 1rem;
	font-weight: 720;
	letter-spacing: -.02em;
}

.ophth-feature-card p {
	margin: 0;
	color: var(--ophth-muted);
	font-size: .79rem;
	line-height: 1.75;
}

.ophth-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 14px;
	color: #3b768e;
	font-size: .74rem;
	font-weight: 700;
}

.ophth-feature-card > a:hover {
	color: #26596d;
}

.ophth-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 14px;
}

.ophth-feature-tags span {
	padding: 5px 8px;
	border: 1px solid #e5ebef;
	border-radius: 30px;
	background: #fafcfd;
	color: #778792;
	font-size: .58rem;
	font-weight: 650;
}

.ophth-imaging-section {
	padding: 82px 0;
	background: #fff;
}

.ophth-imaging-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 26px 0;
}

.ophth-imaging-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 24px 24px 60px 24px;
	object-fit: cover;
	box-shadow: 0 22px 48px rgba(38, 65, 91, .14);
}

.ophth-imaging-note {
	position: absolute;
	top: 20px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px 14px;
	border: 1px solid #e1e9ef;
	border-radius: 13px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 10px 26px rgba(38, 65, 91, .12);
}

.ophth-imaging-note > i {
	color: var(--ophth-blue);
	font-size: 1.1rem;
}

.ophth-imaging-note strong,
.ophth-imaging-note small {
	display: block;
}

.ophth-imaging-note strong {
	color: #40566b;
	font-size: .67rem;
}

.ophth-imaging-note small {
	margin-top: 3px;
	color: #84929c;
	font-size: .55rem;
}

.ophth-imaging-stamp {
	position: absolute;
	right: 0;
	bottom: 2px;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 13px;
	border: 1px solid #e2e9ef;
	border-radius: 30px;
	background: #fff;
	color: #546b79;
	font-size: .63rem;
	font-weight: 700;
	box-shadow: 0 8px 22px rgba(38, 65, 91, .1);
}

.ophth-imaging-stamp i {
	color: var(--ophth-teal);
}

.ophth-imaging-section .ophth-section-title {
	margin-bottom: 13px;
}

.ophth-check-list {
	margin-top: 19px;
}

.ophth-check-list li {
	font-size: .79rem;
}

.ophth-check-list i {
	display: grid;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	place-items: center;
	border-radius: 50%;
	background: #e7f3ef;
	color: #398b79;
	font-size: .75rem;
}

.ophth-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 20px 0 0;
	padding: 12px 13px;
	border: 1px solid #e2e9ef;
	border-radius: 10px;
	background: #f8fafb;
	color: #71808c;
	font-size: .69rem;
	line-height: 1.65;
}

.ophth-disclaimer i {
	margin-top: 2px;
	color: var(--ophth-blue);
}

.ophth-journey-heading {
	max-width: 740px;
	margin: 0 auto;
}

.ophth-journey-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin-top: 33px;
}

.ophth-journey-step {
	position: relative;
	padding: 21px;
	border: 1px solid #e1e9ef;
	border-radius: 14px;
	background: #fff;
}

.ophth-step-number {
	position: absolute;
	top: 17px;
	right: 17px;
	color: #a7b4bf;
	font-size: .68rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.ophth-step-icon {
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	border: 1px solid #dce8ef;
	border-radius: 14px;
	background: #ebf3f7;
	color: var(--ophth-blue);
	font-size: 1.08rem;
}

.ophth-journey-step h3 {
	margin: 16px 0 7px;
	font-size: .95rem;
	font-weight: 720;
}

.ophth-journey-step p {
	margin: 0;
	color: var(--ophth-muted);
	font-size: .73rem;
	line-height: 1.7;
}

.ophth-faq-section {
	padding: 79px 0;
	background: #fff;
}

.ophth-faq-section .ophth-section-title {
	margin-bottom: 12px;
}

.ophth-faq-section .ophth-section-copy {
	margin-bottom: 16px;
	font-size: .86rem;
}

.ophth-faq-list {
	border-top: 1px solid #e1e9ef;
}

.ophth-faq-item {
	padding: 18px 0;
	border-bottom: 1px solid #e1e9ef;
}

.ophth-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--ophth-ink);
	font-size: .91rem;
	font-weight: 700;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.ophth-faq-item summary::-webkit-details-marker {
	display: none;
}

.ophth-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--ophth-blue);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.ophth-faq-item[open] summary::after {
	content: "\f2ea";
}

.ophth-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--ophth-muted);
	font-size: .82rem;
	line-height: 1.75;
}

.ophth-cta-section {
	padding: 66px 0 82px;
	background: #f3f7fa;
}

.ophth-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 46px 50px;
	border-radius: 21px;
	background:
		radial-gradient(circle at 90% 5%, rgba(129, 195, 193, .25), transparent 29%),
		linear-gradient(120deg, #294c77 0%, #466fbe 57%, #318b91 100%);
	box-shadow: 0 19px 44px rgba(56, 94, 151, .22);
}

.ophth-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.85rem, 3vw, 2.5rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.ophth-cta-kicker {
	margin: 0 0 12px;
	color: #d8e8f5;
	font-size: .69rem;
	font-weight: 750;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ophth-cta-panel p:not(.ophth-cta-kicker) {
	max-width: 600px;
	margin: 0;
	color: rgba(255, 255, 255, .82);
	font-size: .87rem;
	line-height: 1.75;
}

.ophth-button-light {
	background: #fff;
	color: #3d659f;
	box-shadow: none;
}

.ophth-button-light:hover,
.ophth-button-light:focus {
	transform: translateY(-2px);
	background: #f1f7fa;
	color: #294e7e;
}

.ophth-cta-link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .88);
	font-size: .77rem;
	font-weight: 650;
}

.ophth-cta-link:hover,
.ophth-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.ophth-hero {
		padding-top: 70px;
	}

	.ophth-hero-visual {
		max-width: 700px;
		margin: 0 auto;
	}

	.ophth-section-heading {
		display: block;
	}

	.ophth-section-heading > .ophth-section-copy {
		max-width: 620px;
		margin-top: 13px;
	}

	.ophth-imaging-visual {
		max-width: 700px;
	}

	.ophth-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 767.98px) {
	.ophth-overview-cards {
		grid-template-columns: 1fr;
		margin-top: 27px;
	}

	.ophth-journey-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {
	.ophth-hero {
		padding: 53px 0 57px;
	}

	.ophth-hero h1 {
		font-size: 2.35rem;
	}

	.ophth-hero-copy {
		font-size: .9rem;
	}

	.ophth-hero-points {
		gap: 9px;
	}

	.ophth-hero-points li {
		font-size: .74rem;
	}

	.ophth-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.ophth-button-primary {
		padding: 0 13px;
		font-size: .73rem;
	}

	.ophth-hero-visual {
		min-height: 365px;
	}

	.ophth-orbit-one {
		width: 330px;
		height: 330px;
	}

	.ophth-orbit-two {
		width: 275px;
		height: 275px;
	}

	.ophth-hero-photo {
		width: min(69%, 300px);
		height: 310px;
		border-width: 6px;
	}

	.ophth-photo-caption {
		right: 8px;
		bottom: 8px;
		left: 8px;
		gap: 6px;
		padding: 8px;
	}

	.ophth-photo-caption > i {
		width: 30px;
		height: 30px;
		flex-basis: 30px;
		font-size: .9rem;
	}

	.ophth-photo-caption strong {
		font-size: .56rem;
	}

	.ophth-photo-caption small {
		font-size: .47rem;
	}

	.ophth-exam-card {
		right: -3px;
		bottom: 25px;
		width: 205px;
		padding: 10px;
	}

	.ophth-exam-card-head {
		font-size: .6rem;
	}

	.ophth-measure-row {
		gap: 6px;
		padding: 7px 0;
	}

	.ophth-eye-symbol,
	.ophth-image-symbol {
		width: 24px;
		height: 24px;
		flex-basis: 24px;
		font-size: .68rem;
	}

	.ophth-measure-row strong {
		font-size: .5rem;
	}

	.ophth-measure-row small,
	.ophth-exam-footer {
		font-size: .45rem;
	}

	.ophth-floating-label {
		gap: 5px;
		padding: 8px 10px;
		font-size: .55rem;
	}

	.ophth-label-exam {
		top: 32px;
		left: -2px;
	}

	.ophth-label-follow {
		right: -2px;
		bottom: 6px;
	}

	.ophth-spark-one {
		top: 11px;
		right: 22px;
	}

	.ophth-spark-two {
		bottom: 32px;
		left: 14px;
	}

	.ophth-workflow-items {
		justify-content: flex-start;
		gap: 11px;
	}

	.ophth-workflow-items span {
		width: calc(50% - 6px);
		font-size: .68rem;
		text-align: left;
	}

	.ophth-overview-section,
	.ophth-features-section,
	.ophth-imaging-section,
	.ophth-journey-section,
	.ophth-faq-section {
		padding: 57px 0;
	}

	.ophth-section-title {
		font-size: 1.86rem;
	}

	.ophth-feature-grid {
		margin-top: 21px;
	}

	.ophth-feature-card {
		padding: 22px;
	}

	.ophth-imaging-visual {
		min-height: 300px;
		padding: 0 13px 22px 0;
	}

	.ophth-imaging-visual > img {
		height: 280px;
		border-radius: 17px 17px 45px 17px;
	}

	.ophth-imaging-note {
		top: 11px;
		left: -2px;
		gap: 7px;
		padding: 9px 10px;
	}

	.ophth-imaging-note strong {
		font-size: .58rem;
	}

	.ophth-imaging-note small {
		font-size: .48rem;
	}

	.ophth-imaging-stamp {
		right: 0;
		bottom: 2px;
		padding: 8px 10px;
		font-size: .55rem;
	}

	.ophth-journey-grid {
		gap: 10px;
		margin-top: 22px;
	}

	.ophth-journey-step {
		padding: 15px;
	}

	.ophth-journey-step p {
		font-size: .67rem;
	}

	.ophth-faq-item summary {
		padding-right: 32px;
		font-size: .84rem;
	}

	.ophth-faq-item p {
		margin-right: 4px;
	}

	.ophth-cta-section {
		padding: 42px 0 55px;
	}

	.ophth-cta-panel {
		padding: 28px 22px;
		border-radius: 16px;
	}

	.ophth-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.ophth-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ophth-feature-card,
	.ophth-button-primary,
	.ophth-button-light {
		transition: none;
	}
}

/* Endocrinology EMR landing page */
.endo-page {
	--endo-ink: #29344a;
	--endo-muted: #6f7d91;
	--endo-green: #398365;
	--endo-teal: #278c91;
	--endo-violet: #6d68b4;
	overflow: hidden;
	color: var(--endo-muted);
}

.endo-page h1,
.endo-page h2,
.endo-page h3 {
	color: var(--endo-ink);
}

.endo-hero {
	padding: 82px 0 87px;
	background:
		radial-gradient(ellipse at 86% 12%, rgba(118, 183, 157, .17), transparent 31%),
		linear-gradient(130deg, #f2f8f4 0%, #fff 56%, #f3f6fc 100%);
}

.endo-eyebrow,
.endo-kicker {
	margin: 0 0 14px;
	color: var(--endo-green);
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.endo-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid #dcebe0;
	border-radius: 40px;
	background: rgba(255, 255, 255, .85);
	letter-spacing: .06em;
}

.endo-hero h1 {
	max-width: 660px;
	margin: 14px 0 19px;
	font-size: clamp(2.5rem, 4.55vw, 4rem);
	font-weight: 760;
	letter-spacing: -.055em;
	line-height: 1.07;
}

.endo-hero h1 span {
	color: var(--endo-green);
}

.endo-hero-copy,
.endo-section-copy {
	color: var(--endo-muted);
	font-size: .95rem;
	line-height: 1.82;
}

.endo-hero-copy {
	max-width: 590px;
	margin: 0;
}

.endo-hero-points,
.endo-check-list {
	display: grid;
	gap: 10px;
	margin: 20px 0 0;
	padding: 0;
	list-style: none;
}

.endo-hero-points li,
.endo-check-list li {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	color: #4b5c6d;
	font-size: .81rem;
}

.endo-hero-points i {
	margin-top: 2px;
	color: #459276;
}

.endo-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 26px;
}

.endo-button-primary,
.endo-button-light {
	display: inline-flex;
	min-height: 51px;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 0 20px;
	border: 0;
	border-radius: 10px;
	background: var(--endo-green);
	color: #fff;
	font-size: .84rem;
	font-weight: 700;
	box-shadow: 0 11px 25px rgba(57, 131, 101, .2);
	transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}

.endo-button-primary:hover,
.endo-button-primary:focus {
	transform: translateY(-2px);
	background: #2c6b51;
	color: #fff;
	box-shadow: 0 15px 28px rgba(57, 131, 101, .27);
}

.endo-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #387c83;
	font-size: .84rem;
	font-weight: 700;
}

.endo-text-link:hover,
.endo-text-link:focus {
	color: #245b61;
}

.endo-hero-note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 23px;
	color: #7c8b8a;
	font-size: .74rem;
}

.endo-hero-note i {
	color: var(--endo-teal);
}

.endo-hero-visual {
	position: relative;
	display: grid;
	min-height: 480px;
	place-items: center;
	max-width: 620px;
	margin-left: auto;
}

.endo-hero-glow {
	position: absolute;
	border: 1px solid rgba(57, 131, 101, .14);
	border-radius: 50%;
}

.endo-glow-one {
	width: 430px;
	height: 430px;
	background: radial-gradient(circle, rgba(221, 239, 227, .78), rgba(221, 239, 227, .08) 68%, transparent 69%);
}

.endo-glow-two {
	width: 350px;
	height: 350px;
	border-style: dashed;
	border-color: rgba(109, 104, 180, .22);
}

.endo-hero-photo {
	position: relative;
	width: min(69%, 365px);
	height: 395px;
	overflow: hidden;
	border: 8px solid #fff;
	border-radius: 47% 47% 25px 25px;
	background: #e7efea;
	box-shadow: 0 27px 58px rgba(45, 75, 63, .18);
	transform: rotate(-1.5deg);
}

.endo-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.endo-photo-overlay {
	position: absolute;
	inset: 46% 0 0;
	background: linear-gradient(180deg, transparent, rgba(30, 52, 57, .46));
}

.endo-photo-caption {
	position: absolute;
	right: 12px;
	bottom: 12px;
	left: 12px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px;
	border: 1px solid rgba(255, 255, 255, .8);
	border-radius: 13px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 9px 23px rgba(38, 64, 61, .12);
}

.endo-photo-caption > i {
	display: grid;
	width: 36px;
	height: 36px;
	flex: 0 0 36px;
	place-items: center;
	border-radius: 12px;
	background: #e9f4ec;
	color: var(--endo-green);
	font-size: 1.04rem;
}

.endo-photo-caption strong,
.endo-photo-caption small {
	display: block;
}

.endo-photo-caption strong {
	color: #40554b;
	font-size: .66rem;
}

.endo-photo-caption small {
	margin-top: 3px;
	color: #83918a;
	font-size: .53rem;
}

.endo-record-card {
	position: absolute;
	right: -3px;
	bottom: 42px;
	z-index: 2;
	width: 241px;
	padding: 13px;
	border: 1px solid #e1e9e4;
	border-radius: 14px;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 15px 35px rgba(43, 69, 57, .15);
}

.endo-record-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 8px;
	color: #40574b;
	font-size: .67rem;
	font-weight: 750;
}

.endo-record-header i {
	color: #95a49b;
}

.endo-record-row {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 0;
	border-top: 1px solid #edf1ed;
}

.endo-record-row > i:first-child {
	color: var(--endo-green);
	font-size: .9rem;
}

.endo-record-row span {
	flex: 1;
}

.endo-record-row strong,
.endo-record-row small {
	display: block;
}

.endo-record-row strong {
	color: #485c4f;
	font-size: .55rem;
}

.endo-record-row small {
	margin-top: 2px;
	color: #88968e;
	font-size: .48rem;
}

.endo-record-check {
	color: #4b9a78;
	font-size: .75rem;
}

.endo-record-arrow {
	color: #89999a;
	font-size: .7rem;
}

.endo-record-footer {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 6px;
	padding-top: 8px;
	border-top: 1px solid #edf1ed;
	color: #7e8e85;
	font-size: .5rem;
}

.endo-record-footer span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #4ba17c;
}

.endo-floating-tag {
	position: absolute;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 13px;
	border: 1px solid rgba(255, 255, 255, .9);
	border-radius: 40px;
	background: #fff;
	color: #53665a;
	font-size: .64rem;
	font-weight: 700;
	box-shadow: 0 10px 24px rgba(43, 69, 57, .12);
}

.endo-floating-tag i {
	color: var(--endo-teal);
}

.endo-tag-history {
	top: 65px;
	left: 0;
}

.endo-tag-follow {
	right: 0;
	bottom: 12px;
}

.endo-hero-spark {
	position: absolute;
	top: 35px;
	right: 61px;
	color: #d9ae63;
	font-size: 1.4rem;
}

.endo-spark-two {
	top: auto;
	right: auto;
	bottom: 77px;
	left: 31px;
	color: #73b6a7;
	font-size: 1rem;
}

.endo-workflow-strip {
	padding: 23px 0 26px;
	border-top: 1px solid #e6ece7;
	border-bottom: 1px solid #e6ece7;
	background: #fff;
	text-align: center;
}

.endo-workflow-strip > .container > p {
	margin: 0 0 16px;
	color: #89968f;
	font-size: .7rem;
	font-weight: 750;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.endo-workflow-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px 34px;
}

.endo-workflow-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #4c6055;
	font-size: .78rem;
	font-weight: 650;
}

.endo-workflow-items i {
	color: var(--endo-teal);
	font-size: .97rem;
}

.endo-overview-section {
	padding: 76px 0 79px;
	background: #fff;
}

.endo-section-title {
	margin: 0 0 13px;
	font-size: clamp(1.9rem, 3.1vw, 2.68rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.endo-overview-section .endo-section-title {
	max-width: 550px;
}

.endo-section-copy {
	margin: 0;
	font-size: .89rem;
}

.endo-overview-detail {
	margin-top: 11px;
}

.endo-overview-section .endo-text-link {
	margin-top: 16px;
}

.endo-practice-highlights {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 13px;
	margin-top: 38px;
}

.endo-highlight {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 17px;
	border: 1px solid #e4ebe5;
	border-radius: 12px;
	background: #fbfcfa;
}

.endo-highlight-icon {
	display: grid;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	place-items: center;
	border-radius: 12px;
	font-size: 1rem;
}

.endo-highlight-lilac,
.endo-tone-violet {
	background: #efecfa;
	color: #7668ae;
}

.endo-highlight-blue,
.endo-tone-blue {
	background: #eaf0fb;
	color: #5577ba;
}

.endo-highlight-green,
.endo-tone-green {
	background: #e7f3eb;
	color: #478967;
}

.endo-highlight strong,
.endo-highlight small {
	display: block;
}

.endo-highlight strong {
	margin: 1px 0 5px;
	color: #43594c;
	font-size: .73rem;
}

.endo-highlight small {
	color: #809087;
	font-size: .63rem;
	line-height: 1.55;
}

.endo-features-section,
.endo-journey-section {
	padding: 81px 0 88px;
	background: #f3f7f3;
}

.endo-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 35px;
}

.endo-section-heading > div {
	max-width: 640px;
}

.endo-section-heading > .endo-section-copy {
	max-width: 380px;
	margin-bottom: 4px;
	font-size: .85rem;
}

.endo-feature-grid {
	margin-top: 32px;
}

.endo-feature-card {
	height: 100%;
	padding: 25px;
	border: 1px solid #e2ebe3;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(43, 72, 53, .045);
	transition: transform .2s ease, box-shadow .2s ease;
}

.endo-feature-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 32px rgba(43, 72, 53, .1);
}

.endo-feature-icon {
	display: grid;
	width: 47px;
	height: 47px;
	place-items: center;
	border-radius: 14px;
	font-size: 1.12rem;
}

.endo-tone-coral {
	background: #fff0eb;
	color: #d17c6a;
}

.endo-tone-amber {
	background: #fff4df;
	color: #b28532;
}

.endo-tone-teal {
	background: #e4f4f1;
	color: #328982;
}

.endo-feature-label {
	display: block;
	margin-top: 18px;
	color: #919e94;
	font-size: .58rem;
	font-weight: 750;
	letter-spacing: .1em;
}

.endo-feature-card h3 {
	margin: 7px 0 8px;
	font-size: 1rem;
	font-weight: 720;
	letter-spacing: -.02em;
}

.endo-feature-card p {
	margin: 0;
	color: var(--endo-muted);
	font-size: .79rem;
	line-height: 1.75;
}

.endo-feature-card > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 14px;
	color: #397b78;
	font-size: .74rem;
	font-weight: 700;
}

.endo-feature-card > a:hover {
	color: #245d5a;
}

.endo-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 14px;
}

.endo-feature-tags span {
	padding: 5px 8px;
	border: 1px solid #e5ece5;
	border-radius: 30px;
	background: #fafcfa;
	color: #788980;
	font-size: .58rem;
	font-weight: 650;
}

.endo-lab-section {
	padding: 82px 0;
	background: #fff;
}

.endo-lab-visual {
	position: relative;
	max-width: 550px;
	min-height: 390px;
	padding: 0 26px 26px 0;
}

.endo-lab-visual > img {
	width: 100%;
	height: 365px;
	border-radius: 24px 24px 60px 24px;
	object-fit: cover;
	box-shadow: 0 22px 48px rgba(41, 73, 54, .14);
}

.endo-lab-note {
	position: absolute;
	top: 20px;
	left: -12px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px 14px;
	border: 1px solid #e2eae2;
	border-radius: 13px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 10px 26px rgba(41, 73, 54, .12);
}

.endo-lab-note > i {
	color: var(--endo-teal);
	font-size: 1.1rem;
}

.endo-lab-note strong,
.endo-lab-note small {
	display: block;
}

.endo-lab-note strong {
	color: #42594a;
	font-size: .67rem;
}

.endo-lab-note small {
	margin-top: 3px;
	color: #859289;
	font-size: .54rem;
}

.endo-lab-stamp {
	position: absolute;
	right: 0;
	bottom: 2px;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 13px;
	border: 1px solid #e3ebe3;
	border-radius: 30px;
	background: #fff;
	color: #546a5b;
	font-size: .63rem;
	font-weight: 700;
	box-shadow: 0 8px 22px rgba(41, 73, 54, .1);
}

.endo-lab-stamp i {
	color: var(--endo-green);
}

.endo-lab-section .endo-section-title {
	margin-bottom: 13px;
}

.endo-check-list {
	margin-top: 19px;
}

.endo-check-list li {
	font-size: .79rem;
}

.endo-check-list i {
	display: grid;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	place-items: center;
	border-radius: 50%;
	background: #e7f3eb;
	color: #478967;
	font-size: .75rem;
}

.endo-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 20px 0 0;
	padding: 12px 13px;
	border: 1px solid #e4ebe4;
	border-radius: 10px;
	background: #f8faf8;
	color: #748279;
	font-size: .69rem;
	line-height: 1.65;
}

.endo-disclaimer i {
	margin-top: 2px;
	color: var(--endo-green);
}

.endo-journey-heading {
	max-width: 730px;
	margin: 0 auto;
}

.endo-journey-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin-top: 33px;
}

.endo-journey-step {
	position: relative;
	padding: 21px;
	border: 1px solid #e2eae2;
	border-radius: 14px;
	background: #fff;
}

.endo-step-number {
	position: absolute;
	top: 17px;
	right: 17px;
	color: #a9b8aa;
	font-size: .68rem;
	font-weight: 750;
	letter-spacing: .08em;
}

.endo-step-icon {
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	border: 1px solid #dceade;
	border-radius: 14px;
	background: #eaf4ec;
	color: var(--endo-green);
	font-size: 1.08rem;
}

.endo-journey-step h3 {
	margin: 16px 0 7px;
	font-size: .95rem;
	font-weight: 720;
}

.endo-journey-step p {
	margin: 0;
	color: var(--endo-muted);
	font-size: .73rem;
	line-height: 1.7;
}

.endo-faq-section {
	padding: 79px 0;
	background: #fff;
}

.endo-faq-section .endo-section-title {
	margin-bottom: 12px;
}

.endo-faq-section .endo-section-copy {
	margin-bottom: 16px;
	font-size: .86rem;
}

.endo-faq-list {
	border-top: 1px solid #e3ebe3;
}

.endo-faq-item {
	padding: 18px 0;
	border-bottom: 1px solid #e3ebe3;
}

.endo-faq-item summary {
	position: relative;
	padding-right: 38px;
	color: var(--endo-ink);
	font-size: .91rem;
	font-weight: 700;
	line-height: 1.5;
	cursor: pointer;
	list-style: none;
}

.endo-faq-item summary::-webkit-details-marker {
	display: none;
}

.endo-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--endo-green);
	font-family: "bootstrap-icons";
	font-size: 1rem;
	font-weight: 400;
	content: "\f4fe";
}

.endo-faq-item[open] summary::after {
	content: "\f2ea";
}

.endo-faq-item p {
	margin: 11px 35px 0 0;
	color: var(--endo-muted);
	font-size: .82rem;
	line-height: 1.75;
}

.endo-cta-section {
	padding: 66px 0 82px;
	background: #f3f7f3;
}

.endo-cta-panel {
	position: relative;
	overflow: hidden;
	padding: 46px 50px;
	border-radius: 21px;
	background:
		radial-gradient(circle at 90% 5%, rgba(143, 199, 174, .25), transparent 29%),
		linear-gradient(120deg, #315b50 0%, #398365 57%, #398d8a 100%);
	box-shadow: 0 19px 44px rgba(52, 116, 91, .22);
}

.endo-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.85rem, 3vw, 2.5rem);
	font-weight: 740;
	letter-spacing: -.045em;
	line-height: 1.2;
}

.endo-cta-kicker {
	margin: 0 0 12px;
	color: #d9eee1;
	font-size: .69rem;
	font-weight: 750;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.endo-cta-panel p:not(.endo-cta-kicker) {
	max-width: 600px;
	margin: 0;
	color: rgba(255, 255, 255, .82);
	font-size: .87rem;
	line-height: 1.75;
}

.endo-button-light {
	background: #fff;
	color: #346b57;
	box-shadow: none;
}

.endo-button-light:hover,
.endo-button-light:focus {
	transform: translateY(-2px);
	background: #f0f8f2;
	color: #285440;
}

.endo-cta-link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin-top: 13px;
	color: rgba(255, 255, 255, .88);
	font-size: .77rem;
	font-weight: 650;
}

.endo-cta-link:hover,
.endo-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.endo-hero {
		padding-top: 70px;
	}

	.endo-hero-visual {
		max-width: 700px;
		margin: 0 auto;
	}

	.endo-section-heading {
		display: block;
	}

	.endo-section-heading > .endo-section-copy {
		max-width: 620px;
		margin-top: 13px;
	}

	.endo-lab-visual {
		max-width: 700px;
	}

	.endo-cta-panel {
		padding: 40px;
	}
}

@media (max-width: 767.98px) {
	.endo-practice-highlights {
		grid-template-columns: 1fr;
		margin-top: 27px;
	}

	.endo-journey-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {
	.endo-hero {
		padding: 53px 0 57px;
	}

	.endo-hero h1 {
		font-size: 2.32rem;
	}

	.endo-hero-copy {
		font-size: .9rem;
	}

	.endo-hero-points {
		gap: 9px;
	}

	.endo-hero-points li {
		font-size: .74rem;
	}

	.endo-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.endo-button-primary {
		padding: 0 13px;
		font-size: .73rem;
	}

	.endo-hero-visual {
		min-height: 365px;
	}

	.endo-glow-one {
		width: 330px;
		height: 330px;
	}

	.endo-glow-two {
		width: 275px;
		height: 275px;
	}

	.endo-hero-photo {
		width: min(69%, 300px);
		height: 310px;
		border-width: 6px;
	}

	.endo-photo-caption {
		right: 8px;
		bottom: 8px;
		left: 8px;
		gap: 6px;
		padding: 8px;
	}

	.endo-photo-caption > i {
		width: 30px;
		height: 30px;
		flex-basis: 30px;
		font-size: .9rem;
	}

	.endo-photo-caption strong {
		font-size: .55rem;
	}

	.endo-photo-caption small {
		font-size: .46rem;
	}

	.endo-record-card {
		right: -3px;
		bottom: 25px;
		width: 205px;
		padding: 10px;
	}

	.endo-record-header {
		font-size: .6rem;
	}

	.endo-record-row {
		gap: 6px;
		padding: 7px 0;
	}

	.endo-record-row strong {
		font-size: .5rem;
	}

	.endo-record-row small,
	.endo-record-footer {
		font-size: .45rem;
	}

	.endo-floating-tag {
		gap: 5px;
		padding: 8px 10px;
		font-size: .55rem;
	}

	.endo-tag-history {
		top: 32px;
		left: -2px;
	}

	.endo-tag-follow {
		right: -2px;
		bottom: 6px;
	}

	.endo-spark-one {
		top: 11px;
		right: 22px;
	}

	.endo-spark-two {
		bottom: 32px;
		left: 14px;
	}

	.endo-workflow-items {
		justify-content: flex-start;
		gap: 11px;
	}

	.endo-workflow-items span {
		width: calc(50% - 6px);
		font-size: .68rem;
		text-align: left;
	}

	.endo-overview-section,
	.endo-features-section,
	.endo-lab-section,
	.endo-journey-section,
	.endo-faq-section {
		padding: 57px 0;
	}

	.endo-section-title {
		font-size: 1.86rem;
	}

	.endo-practice-highlights {
		gap: 9px;
	}

	.endo-feature-grid {
		margin-top: 21px;
	}

	.endo-feature-card {
		padding: 22px;
	}

	.endo-lab-visual {
		min-height: 300px;
		padding: 0 13px 22px 0;
	}

	.endo-lab-visual > img {
		height: 280px;
		border-radius: 17px 17px 45px 17px;
	}

	.endo-lab-note {
		top: 11px;
		left: -2px;
		gap: 7px;
		padding: 9px 10px;
	}

	.endo-lab-note strong {
		font-size: .58rem;
	}

	.endo-lab-note small {
		font-size: .48rem;
	}

	.endo-lab-stamp {
		right: 0;
		bottom: 2px;
		padding: 8px 10px;
		font-size: .55rem;
	}

	.endo-journey-grid {
		gap: 10px;
		margin-top: 22px;
	}

	.endo-journey-step {
		padding: 15px;
	}

	.endo-journey-step p {
		font-size: .67rem;
	}

	.endo-faq-item summary {
		padding-right: 32px;
		font-size: .84rem;
	}

	.endo-faq-item p {
		margin-right: 4px;
	}

	.endo-cta-section {
		padding: 42px 0 55px;
	}

	.endo-cta-panel {
		padding: 28px 22px;
		border-radius: 16px;
	}

	.endo-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.endo-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.endo-feature-card,
	.endo-button-primary,
	.endo-button-light {
		transition: none;
	}
}

.osteo-page {
	--osteo-ink: #243e3a;
	--osteo-muted: #687c77;
	--osteo-green: #317a6e;
	--osteo-sage: #a9c4a2;
	--osteo-coral: #d98d72;
	--osteo-cream: #f5f7f1;
	overflow: hidden;
	color: var(--osteo-muted);
	background: #fff;
}

.osteo-page h1,
.osteo-page h2,
.osteo-page h3 {
	color: var(--osteo-ink);
}

.osteo-hero {
	position: relative;
	padding: 82px 0 88px;
	background: linear-gradient(115deg, #f4f7ef 0%, #f7faf7 54%, #eaf3ef 100%);
}

.osteo-hero::before {
	position: absolute;
	top: -170px;
	right: -130px;
	width: 480px;
	height: 480px;
	border: 1px solid rgba(49, 122, 110, .1);
	border-radius: 50%;
	content: "";
}

.osteo-eyebrow,
.osteo-kicker {
	margin: 0 0 15px;
	color: var(--osteo-green);
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.osteo-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid rgba(49, 122, 110, .16);
	border-radius: 99px;
	background: rgba(255, 255, 255, .72);
	letter-spacing: .07em;
}

.osteo-hero h1 {
	max-width: 650px;
	margin: 13px 0 20px;
	font-size: clamp(2.7rem, 5vw, 4.55rem);
	font-weight: 800;
	letter-spacing: -.055em;
	line-height: 1.04;
}

.osteo-hero h1 span {
	color: var(--osteo-green);
}

.osteo-hero-copy,
.osteo-section-copy {
	color: var(--osteo-muted);
	font-size: 1.04rem;
	line-height: 1.8;
}

.osteo-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.osteo-hero-points,
.osteo-check-list {
	padding: 0;
	list-style: none;
}

.osteo-hero-points {
	display: grid;
	gap: 10px;
	margin: 0 0 26px;
}

.osteo-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: var(--osteo-ink);
	font-size: .94rem;
	font-weight: 600;
}

.osteo-hero-points i {
	margin-top: 3px;
	color: var(--osteo-green);
}

.osteo-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}

.osteo-button-primary,
.osteo-button-light {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 13px 20px;
	border: 0;
	border-radius: 9px;
	background: var(--osteo-green);
	color: #fff;
	font-weight: 700;
	transition: transform .2s ease, box-shadow .2s ease;
}

.osteo-button-primary:hover,
.osteo-button-primary:focus {
	transform: translateY(-2px);
	background: #28665c;
	color: #fff;
	box-shadow: 0 12px 25px rgba(38, 100, 89, .2);
}

.osteo-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--osteo-green);
	font-weight: 700;
	text-decoration: none;
}

.osteo-text-link:hover,
.osteo-text-link:focus {
	color: #20584f;
}

.osteo-hero-note {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-top: 23px;
	color: #63786e;
	font-size: .86rem;
	font-weight: 600;
}

.osteo-hero-note i {
	color: var(--osteo-coral);
	font-size: 1.1rem;
}

.osteo-hero-visual {
	position: relative;
	min-height: 510px;
}

.osteo-hero-orbit {
	position: absolute;
	border: 1px solid rgba(49, 122, 110, .18);
	border-radius: 50%;
}

.osteo-orbit-one {
	top: 7px;
	right: 9px;
	width: 430px;
	height: 430px;
}

.osteo-orbit-two {
	top: 42px;
	right: 44px;
	width: 360px;
	height: 360px;
	border-style: dashed;
}

.osteo-hero-photo {
	position: absolute;
	top: 30px;
	right: 43px;
	width: min(78%, 390px);
	height: 410px;
	overflow: hidden;
	border: 10px solid rgba(255, 255, 255, .83);
	border-radius: 48% 48% 25px 25px;
	box-shadow: 0 28px 65px rgba(40, 76, 65, .17);
}

.osteo-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.osteo-photo-overlay {
	position: absolute;
	inset: 40% 0 0;
	background: linear-gradient(transparent, rgba(23, 51, 45, .62));
}

.osteo-photo-caption {
	position: absolute;
	right: 20px;
	bottom: 20px;
	left: 20px;
	display: flex;
	align-items: center;
	gap: 12px;
	color: #fff;
}

.osteo-photo-caption > i {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: 13px;
	background: rgba(255, 255, 255, .2);
	font-size: 1.25rem;
}

.osteo-photo-caption strong,
.osteo-photo-caption small {
	display: block;
}

.osteo-photo-caption strong {
	font-size: .98rem;
}

.osteo-photo-caption small {
	margin-top: 3px;
	color: rgba(255, 255, 255, .78);
	font-size: .75rem;
}

.osteo-session-card {
	position: absolute;
	right: 0;
	bottom: 20px;
	z-index: 2;
	width: min(76%, 340px);
	padding: 18px;
	border: 1px solid rgba(41, 91, 79, .1);
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 20px 55px rgba(35, 66, 56, .16);
}

.osteo-session-header,
.osteo-session-row,
.osteo-session-footer {
	display: flex;
	align-items: center;
}

.osteo-session-header {
	justify-content: space-between;
	padding-bottom: 12px;
	color: var(--osteo-ink);
	font-size: .84rem;
	font-weight: 800;
}

.osteo-session-header i {
	color: #90a29b;
}

.osteo-session-row {
	gap: 10px;
	padding: 12px 0;
	border-top: 1px solid #edf1ed;
}

.osteo-session-row > i:first-child {
	display: grid;
	width: 37px;
	height: 37px;
	flex: 0 0 37px;
	place-items: center;
	border-radius: 11px;
	background: #eaf4ef;
	color: var(--osteo-green);
}

.osteo-session-row > span {
	min-width: 0;
	flex: 1;
}

.osteo-session-row strong,
.osteo-session-row small {
	display: block;
}

.osteo-session-row strong {
	color: var(--osteo-ink);
	font-size: .76rem;
}

.osteo-session-row small {
	margin-top: 3px;
	color: #82918b;
	font-size: .69rem;
}

.osteo-session-check {
	color: var(--osteo-green);
}

.osteo-session-arrow {
	color: var(--osteo-coral);
}

.osteo-session-footer {
	gap: 8px;
	padding-top: 11px;
	border-top: 1px solid #edf1ed;
	color: #73837c;
	font-size: .68rem;
}

.osteo-session-footer span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--osteo-sage);
}

.osteo-floating-tag {
	position: absolute;
	z-index: 3;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(33, 76, 65, .08);
	border-radius: 11px;
	background: #fff;
	color: var(--osteo-ink);
	font-size: .78rem;
	font-weight: 700;
	box-shadow: 0 12px 30px rgba(32, 70, 59, .11);
}

.osteo-floating-tag i {
	color: var(--osteo-green);
}

.osteo-tag-mobility {
	top: 112px;
	left: -3px;
}

.osteo-tag-exercise {
	top: 245px;
	right: -12px;
}

.osteo-spark {
	position: absolute;
	color: var(--osteo-coral);
	font-size: 1.65rem;
}

.osteo-spark-one {
	top: 16px;
	left: 45px;
}

.osteo-workflow-strip {
	padding: 24px 0;
	background: #fff;
	border-bottom: 1px solid #edf1ed;
}

.osteo-workflow-strip .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
}

.osteo-workflow-strip p {
	margin: 0;
	color: var(--osteo-ink);
	font-size: .9rem;
	font-weight: 800;
}

.osteo-workflow-items {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 14px 26px;
}

.osteo-workflow-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #687b73;
	font-size: .82rem;
	font-weight: 600;
}

.osteo-workflow-items i {
	color: var(--osteo-green);
	font-size: 1rem;
}

.osteo-overview-section,
.osteo-features-section,
.osteo-records-section,
.osteo-journey-section,
.osteo-faq-section {
	padding: 86px 0;
}

.osteo-section-title {
	margin: 0;
	font-size: clamp(1.9rem, 3.3vw, 2.8rem);
	font-weight: 800;
	letter-spacing: -.04em;
	line-height: 1.18;
}

.osteo-section-copy {
	margin: 0 0 16px;
	font-size: .96rem;
}

.osteo-overview-detail {
	font-size: .88rem;
}

.osteo-focus-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	margin-top: 42px;
}

.osteo-focus-card {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 20px;
	border: 1px solid #edf1eb;
	border-radius: 15px;
	background: #fbfcfa;
}

.osteo-focus-icon,
.osteo-feature-icon {
	display: grid;
	flex: 0 0 auto;
	place-items: center;
}

.osteo-focus-icon {
	width: 48px;
	height: 48px;
	border-radius: 14px;
	font-size: 1.25rem;
}

.osteo-focus-sage,
.osteo-tone-sage {
	background: #eaf2e7;
	color: #56805b;
}

.osteo-focus-blue,
.osteo-tone-blue {
	background: #e9f2f3;
	color: #50838a;
}

.osteo-focus-coral,
.osteo-tone-coral {
	background: #fbede7;
	color: #c67d62;
}

.osteo-focus-card strong,
.osteo-focus-card small {
	display: block;
}

.osteo-focus-card strong {
	color: var(--osteo-ink);
	font-size: .88rem;
}

.osteo-focus-card small {
	margin-top: 5px;
	color: var(--osteo-muted);
	font-size: .77rem;
	line-height: 1.5;
}

.osteo-features-section {
	background: var(--osteo-cream);
}

.osteo-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 35px;
	margin-bottom: 33px;
}

.osteo-section-heading > div {
	max-width: 620px;
}

.osteo-section-heading > .osteo-section-copy {
	max-width: 370px;
	margin-bottom: 4px;
	font-size: .9rem;
}

.osteo-feature-card {
	height: 100%;
	padding: 26px;
	border: 1px solid rgba(50, 87, 71, .1);
	border-radius: 16px;
	background: #fff;
	transition: transform .2s ease, box-shadow .2s ease;
}

.osteo-feature-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 17px 38px rgba(47, 82, 68, .09);
}

.osteo-feature-icon {
	width: 48px;
	height: 48px;
	margin-bottom: 20px;
	border-radius: 14px;
	font-size: 1.25rem;
}

.osteo-tone-amber {
	background: #f8f1df;
	color: #ad8a43;
}

.osteo-tone-violet {
	background: #f0ecf7;
	color: #8170a2;
}

.osteo-tone-teal {
	background: #e7f3ef;
	color: #398271;
}

.osteo-feature-label {
	display: block;
	margin-bottom: 9px;
	color: #81928a;
	font-size: .67rem;
	font-weight: 800;
	letter-spacing: .12em;
}

.osteo-feature-card h3 {
	margin: 0 0 10px;
	font-size: 1.13rem;
	font-weight: 800;
}

.osteo-feature-card p {
	min-height: 75px;
	margin: 0 0 18px;
	color: var(--osteo-muted);
	font-size: .87rem;
	line-height: 1.7;
}

.osteo-feature-card > a {
	color: var(--osteo-green);
	font-size: .82rem;
	font-weight: 700;
	text-decoration: none;
}

.osteo-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 16px;
}

.osteo-feature-tags span {
	padding: 6px 9px;
	border-radius: 99px;
	background: #f3f6f1;
	color: #6f8277;
	font-size: .68rem;
	font-weight: 600;
}

.osteo-records-visual {
	position: relative;
	min-height: 420px;
	padding: 0 48px 38px 0;
}

.osteo-records-visual > img {
	width: 100%;
	height: 390px;
	border-radius: 24px 110px 24px 24px;
	object-fit: cover;
}

.osteo-records-note,
.osteo-records-stamp {
	position: absolute;
	display: flex;
	align-items: center;
	gap: 11px;
	border: 1px solid #edf1eb;
	background: #fff;
	box-shadow: 0 14px 35px rgba(33, 69, 56, .12);
}

.osteo-records-note {
	right: 0;
	bottom: 0;
	padding: 15px 18px;
	border-radius: 14px;
}

.osteo-records-note > i {
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	border-radius: 12px;
	background: #eaf3ed;
	color: var(--osteo-green);
	font-size: 1.2rem;
}

.osteo-records-note strong,
.osteo-records-note small {
	display: block;
}

.osteo-records-note strong {
	color: var(--osteo-ink);
	font-size: .84rem;
}

.osteo-records-note small {
	margin-top: 4px;
	color: #7b8a83;
	font-size: .72rem;
}

.osteo-records-stamp {
	top: 28px;
	left: -18px;
	padding: 10px 13px;
	border-radius: 10px;
	color: var(--osteo-ink);
	font-size: .76rem;
	font-weight: 700;
}

.osteo-records-stamp i {
	color: var(--osteo-green);
}

.osteo-check-list {
	display: grid;
	gap: 12px;
	margin: 22px 0;
}

.osteo-check-list li {
	display: flex;
	gap: 10px;
	color: #425d53;
	font-size: .9rem;
}

.osteo-check-list i {
	color: var(--osteo-green);
	font-size: 1.1rem;
}

.osteo-disclaimer {
	padding: 13px 15px;
	border-left: 3px solid var(--osteo-sage);
	border-radius: 0 9px 9px 0;
	background: #f4f7f1;
	color: #738278;
	font-size: .78rem;
	line-height: 1.6;
}

.osteo-disclaimer i {
	margin-right: 5px;
	color: var(--osteo-green);
}

.osteo-journey-section {
	background: #f6f8f4;
}

.osteo-journey-heading {
	max-width: 700px;
	margin: 0 auto 40px;
}

.osteo-journey-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 17px;
}

.osteo-journey-step {
	position: relative;
	min-height: 225px;
	padding: 25px 22px;
	border: 1px solid #e8eee7;
	border-radius: 16px;
	background: #fff;
}

.osteo-step-number {
	position: absolute;
	top: 18px;
	right: 20px;
	color: #c2d2c3;
	font-size: 1.35rem;
	font-weight: 800;
}

.osteo-step-icon {
	display: grid;
	width: 45px;
	height: 45px;
	margin-bottom: 23px;
	place-items: center;
	border-radius: 13px;
	background: #edf4ed;
	color: var(--osteo-green);
	font-size: 1.15rem;
}

.osteo-journey-step h3 {
	margin: 0 0 8px;
	font-size: 1rem;
	font-weight: 800;
}

.osteo-journey-step p {
	margin: 0;
	color: var(--osteo-muted);
	font-size: .83rem;
	line-height: 1.65;
}

.osteo-faq-section {
	background: #fff;
}

.osteo-faq-list {
	border-top: 1px solid #e7ece7;
}

.osteo-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #e7ece7;
}

.osteo-faq-item summary {
	position: relative;
	padding-right: 34px;
	color: var(--osteo-ink);
	font-size: .94rem;
	font-weight: 750;
	cursor: pointer;
	list-style: none;
}

.osteo-faq-item summary::-webkit-details-marker {
	display: none;
}

.osteo-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--osteo-green);
	content: "+";
	font-size: 1.3rem;
	line-height: 1;
}

.osteo-faq-item[open] summary::after {
	content: "−";
}

.osteo-faq-item p {
	margin: 12px 30px 0 0;
	color: var(--osteo-muted);
	font-size: .86rem;
	line-height: 1.7;
}

.osteo-cta-section {
	padding: 10px 0 85px;
}

.osteo-cta-panel {
	padding: 44px 48px;
	border-radius: 22px;
	background: linear-gradient(120deg, #286d61, #3b8977);
	box-shadow: 0 22px 50px rgba(38, 105, 91, .18);
}

.osteo-cta-kicker {
	margin: 0 0 10px;
	color: #c9e3d2;
	font-size: .74rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.osteo-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3.2vw, 2.7rem);
	font-weight: 800;
	letter-spacing: -.04em;
}

.osteo-cta-panel p:not(.osteo-cta-kicker) {
	max-width: 640px;
	margin: 0;
	color: rgba(255, 255, 255, .79);
	font-size: .94rem;
	line-height: 1.7;
}

.osteo-button-light {
	background: #fff;
	color: var(--osteo-green);
}

.osteo-button-light:hover,
.osteo-button-light:focus {
	transform: translateY(-2px);
	background: #eff6ef;
	color: #20584f;
}

.osteo-cta-link {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 7px;
	margin-top: 15px;
	color: #e2f0e7;
	font-size: .82rem;
	font-weight: 700;
	text-decoration: none;
}

.osteo-cta-link:hover,
.osteo-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.osteo-hero {
		padding: 65px 0 72px;
	}

	.osteo-hero-visual {
		width: min(100%, 560px);
		margin: 0 auto;
	}

	.osteo-workflow-strip .container {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.osteo-workflow-items {
		justify-content: flex-start;
	}

	.osteo-overview-section,
	.osteo-features-section,
	.osteo-records-section,
	.osteo-journey-section,
	.osteo-faq-section {
		padding: 68px 0;
	}

	.osteo-focus-row {
		gap: 12px;
	}

	.osteo-focus-card {
		align-items: flex-start;
		flex-direction: column;
		padding: 17px;
	}

	.osteo-journey-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767.98px) {
	.osteo-hero {
		padding: 54px 0 58px;
	}

	.osteo-hero h1 {
		font-size: clamp(2.5rem, 10vw, 3.7rem);
	}

	.osteo-hero-visual {
		min-height: 470px;
	}

	.osteo-hero-photo {
		right: 8%;
		width: min(78%, 360px);
		height: 365px;
	}

	.osteo-orbit-one {
		right: 2%;
		width: 370px;
		height: 370px;
	}

	.osteo-orbit-two {
		right: 7%;
		width: 315px;
		height: 315px;
	}

	.osteo-session-card {
		right: 1%;
		bottom: 5px;
	}

	.osteo-tag-mobility {
		left: 0;
	}

	.osteo-tag-exercise {
		right: 0;
	}

	.osteo-focus-row {
		grid-template-columns: 1fr;
		margin-top: 30px;
	}

	.osteo-focus-card {
		align-items: center;
		flex-direction: row;
	}

	.osteo-section-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.osteo-feature-card p {
		min-height: 0;
	}

	.osteo-records-visual {
		min-height: 360px;
		padding-right: 25px;
	}

	.osteo-records-visual > img {
		height: 330px;
		border-top-right-radius: 80px;
	}

	.osteo-records-stamp {
		left: 0;
	}

	.osteo-cta-panel {
		padding: 34px 28px;
	}
}

@media (max-width: 575.98px) {
	.osteo-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.osteo-button-primary {
		width: 100%;
		padding: 13px 12px;
		font-size: .86rem;
	}

	.osteo-hero-visual {
		min-height: 410px;
		margin-left: -8px;
		margin-right: -8px;
	}

	.osteo-hero-photo {
		top: 26px;
		right: 8%;
		width: 76%;
		height: 320px;
		border-width: 7px;
	}

	.osteo-orbit-one {
		top: 3px;
		right: 0;
		width: min(84vw, 340px);
		height: min(84vw, 340px);
	}

	.osteo-orbit-two {
		top: 28px;
		right: 5%;
		width: min(72vw, 290px);
		height: min(72vw, 290px);
	}

	.osteo-session-card {
		right: 0;
		bottom: 0;
		width: min(86%, 320px);
		padding: 13px;
	}

	.osteo-floating-tag {
		padding: 9px 10px;
		font-size: .68rem;
	}

	.osteo-tag-mobility {
		top: 78px;
	}

	.osteo-tag-exercise {
		top: 200px;
	}

	.osteo-spark-one {
		left: 24px;
	}

	.osteo-workflow-items {
		gap: 12px 17px;
	}

	.osteo-workflow-items span {
		font-size: .75rem;
	}

	.osteo-overview-section,
	.osteo-features-section,
	.osteo-records-section,
	.osteo-journey-section,
	.osteo-faq-section {
		padding: 55px 0;
	}

	.osteo-journey-grid {
		gap: 12px;
	}

	.osteo-journey-step {
		min-height: 205px;
		padding: 20px 16px;
	}

	.osteo-cta-section {
		padding: 0 0 55px;
	}

	.osteo-cta-panel {
		padding: 28px 22px;
		border-radius: 16px;
	}

	.osteo-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.osteo-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.osteo-feature-card,
	.osteo-button-primary,
	.osteo-button-light {
		transition: none;
	}
}

.gastro-page {
	--gastro-ink: #29384b;
	--gastro-muted: #718092;
	--gastro-blue: #3c7893;
	--gastro-teal: #4f9b91;
	--gastro-coral: #df927e;
	--gastro-pale: #f2f7f8;
	overflow: hidden;
	color: var(--gastro-muted);
	background: #fff;
}

.gastro-page h1,
.gastro-page h2,
.gastro-page h3 {
	color: var(--gastro-ink);
}

.gastro-hero {
	position: relative;
	padding: 82px 0 88px;
	background: linear-gradient(120deg, #f1f6f8 0%, #f7f9fb 52%, #eaf4f3 100%);
}

.gastro-hero::before {
	position: absolute;
	top: -190px;
	right: -125px;
	width: 500px;
	height: 500px;
	border: 1px solid rgba(60, 120, 147, .12);
	border-radius: 50%;
	content: "";
}

.gastro-eyebrow,
.gastro-kicker {
	margin: 0 0 15px;
	color: var(--gastro-blue);
	font-size: .77rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.gastro-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid rgba(60, 120, 147, .16);
	border-radius: 99px;
	background: rgba(255, 255, 255, .75);
	letter-spacing: .07em;
}

.gastro-hero h1 {
	max-width: 660px;
	margin: 13px 0 20px;
	font-size: clamp(2.65rem, 4.8vw, 4.35rem);
	font-weight: 800;
	letter-spacing: -.055em;
	line-height: 1.05;
}

.gastro-hero h1 span {
	color: var(--gastro-blue);
}

.gastro-hero-copy,
.gastro-section-copy {
	color: var(--gastro-muted);
	font-size: 1.02rem;
	line-height: 1.8;
}

.gastro-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.gastro-hero-points,
.gastro-check-list {
	padding: 0;
	list-style: none;
}

.gastro-hero-points {
	display: grid;
	gap: 10px;
	margin: 0 0 26px;
}

.gastro-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: var(--gastro-ink);
	font-size: .93rem;
	font-weight: 600;
}

.gastro-hero-points i {
	margin-top: 3px;
	color: var(--gastro-teal);
}

.gastro-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}

.gastro-button-primary,
.gastro-button-light {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 13px 20px;
	border: 0;
	border-radius: 9px;
	background: var(--gastro-blue);
	color: #fff;
	font-weight: 700;
	transition: transform .2s ease, box-shadow .2s ease;
}

.gastro-button-primary:hover,
.gastro-button-primary:focus {
	transform: translateY(-2px);
	background: #32677f;
	color: #fff;
	box-shadow: 0 12px 25px rgba(51, 103, 127, .2);
}

.gastro-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--gastro-blue);
	font-weight: 700;
	text-decoration: none;
}

.gastro-text-link:hover,
.gastro-text-link:focus {
	color: #285e75;
}

.gastro-hero-note {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-top: 23px;
	color: #6d7e8b;
	font-size: .85rem;
	font-weight: 600;
}

.gastro-hero-note i {
	color: var(--gastro-teal);
	font-size: 1.1rem;
}

.gastro-hero-visual {
	position: relative;
	min-height: 510px;
}

.gastro-hero-orbit {
	position: absolute;
	border: 1px solid rgba(60, 120, 147, .18);
	border-radius: 50%;
}

.gastro-orbit-one {
	top: 8px;
	right: 8px;
	width: 430px;
	height: 430px;
}

.gastro-orbit-two {
	top: 43px;
	right: 43px;
	width: 360px;
	height: 360px;
	border-style: dashed;
}

.gastro-hero-photo {
	position: absolute;
	top: 30px;
	right: 43px;
	width: min(78%, 390px);
	height: 410px;
	overflow: hidden;
	border: 10px solid rgba(255, 255, 255, .85);
	border-radius: 48% 48% 25px 25px;
	box-shadow: 0 28px 65px rgba(43, 73, 91, .17);
}

.gastro-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.gastro-photo-overlay {
	position: absolute;
	inset: 40% 0 0;
	background: linear-gradient(transparent, rgba(25, 47, 64, .66));
}

.gastro-photo-caption {
	position: absolute;
	right: 20px;
	bottom: 20px;
	left: 20px;
	display: flex;
	align-items: center;
	gap: 12px;
	color: #fff;
}

.gastro-photo-caption > i {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: 13px;
	background: rgba(255, 255, 255, .2);
	font-size: 1.25rem;
}

.gastro-photo-caption strong,
.gastro-photo-caption small {
	display: block;
}

.gastro-photo-caption strong {
	font-size: .98rem;
}

.gastro-photo-caption small {
	margin-top: 3px;
	color: rgba(255, 255, 255, .78);
	font-size: .75rem;
}

.gastro-record-card {
	position: absolute;
	right: 0;
	bottom: 20px;
	z-index: 2;
	width: min(77%, 345px);
	padding: 18px;
	border: 1px solid rgba(50, 88, 111, .1);
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 20px 55px rgba(40, 68, 86, .16);
}

.gastro-record-header,
.gastro-record-row,
.gastro-record-footer {
	display: flex;
	align-items: center;
}

.gastro-record-header {
	justify-content: space-between;
	padding-bottom: 12px;
	color: var(--gastro-ink);
	font-size: .84rem;
	font-weight: 800;
}

.gastro-record-header i {
	color: #91a1ad;
}

.gastro-record-row {
	gap: 10px;
	padding: 12px 0;
	border-top: 1px solid #edf1f3;
}

.gastro-record-row > i:first-child {
	display: grid;
	width: 37px;
	height: 37px;
	flex: 0 0 37px;
	place-items: center;
	border-radius: 11px;
	background: #eaf3f6;
	color: var(--gastro-blue);
}

.gastro-record-row > span {
	min-width: 0;
	flex: 1;
}

.gastro-record-row strong,
.gastro-record-row small {
	display: block;
}

.gastro-record-row strong {
	color: var(--gastro-ink);
	font-size: .76rem;
}

.gastro-record-row small {
	margin-top: 3px;
	color: #82919c;
	font-size: .69rem;
}

.gastro-record-check {
	color: var(--gastro-teal);
}

.gastro-record-arrow {
	color: var(--gastro-coral);
}

.gastro-record-footer {
	gap: 8px;
	padding-top: 11px;
	border-top: 1px solid #edf1f3;
	color: #74838d;
	font-size: .68rem;
}

.gastro-record-footer span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--gastro-teal);
}

.gastro-floating-tag {
	position: absolute;
	z-index: 3;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(45, 80, 99, .08);
	border-radius: 11px;
	background: #fff;
	color: var(--gastro-ink);
	font-size: .78rem;
	font-weight: 700;
	box-shadow: 0 12px 30px rgba(39, 71, 88, .11);
}

.gastro-floating-tag i {
	color: var(--gastro-blue);
}

.gastro-tag-reports {
	top: 112px;
	left: -3px;
}

.gastro-tag-followup {
	top: 245px;
	right: -12px;
}

.gastro-spark {
	position: absolute;
	color: var(--gastro-coral);
	font-size: 1.65rem;
}

.gastro-spark-one {
	top: 16px;
	left: 45px;
}

.gastro-workflow-strip {
	padding: 24px 0;
	border-bottom: 1px solid #edf1f3;
	background: #fff;
}

.gastro-workflow-strip .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
}

.gastro-workflow-strip p {
	margin: 0;
	color: var(--gastro-ink);
	font-size: .9rem;
	font-weight: 800;
}

.gastro-workflow-items {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 14px 26px;
}

.gastro-workflow-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #6d7f8c;
	font-size: .82rem;
	font-weight: 600;
}

.gastro-workflow-items i {
	color: var(--gastro-blue);
	font-size: 1rem;
}

.gastro-overview-section,
.gastro-features-section,
.gastro-records-section,
.gastro-journey-section,
.gastro-faq-section {
	padding: 86px 0;
}

.gastro-section-title {
	margin: 0;
	font-size: clamp(1.9rem, 3.3vw, 2.8rem);
	font-weight: 800;
	letter-spacing: -.04em;
	line-height: 1.18;
}

.gastro-section-copy {
	margin: 0 0 16px;
	font-size: .96rem;
}

.gastro-overview-detail {
	font-size: .88rem;
}

.gastro-focus-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	margin-top: 42px;
}

.gastro-focus-card {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 20px;
	border: 1px solid #eaf0f2;
	border-radius: 15px;
	background: #fbfcfd;
}

.gastro-focus-icon,
.gastro-feature-icon {
	display: grid;
	flex: 0 0 auto;
	place-items: center;
}

.gastro-focus-icon {
	width: 48px;
	height: 48px;
	border-radius: 14px;
	font-size: 1.25rem;
}

.gastro-focus-blue,
.gastro-tone-blue {
	background: #e8f1f5;
	color: #4c7f97;
}

.gastro-focus-coral,
.gastro-tone-coral {
	background: #fbede8;
	color: #c77d67;
}

.gastro-focus-green,
.gastro-tone-green {
	background: #e8f3ee;
	color: #4c8e78;
}

.gastro-focus-card strong,
.gastro-focus-card small {
	display: block;
}

.gastro-focus-card strong {
	color: var(--gastro-ink);
	font-size: .88rem;
}

.gastro-focus-card small {
	margin-top: 5px;
	color: var(--gastro-muted);
	font-size: .77rem;
	line-height: 1.5;
}

.gastro-features-section {
	background: var(--gastro-pale);
}

.gastro-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 35px;
	margin-bottom: 33px;
}

.gastro-section-heading > div {
	max-width: 620px;
}

.gastro-section-heading > .gastro-section-copy {
	max-width: 370px;
	margin-bottom: 4px;
	font-size: .9rem;
}

.gastro-feature-card {
	height: 100%;
	padding: 26px;
	border: 1px solid rgba(52, 85, 105, .1);
	border-radius: 16px;
	background: #fff;
	transition: transform .2s ease, box-shadow .2s ease;
}

.gastro-feature-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 17px 38px rgba(47, 77, 96, .09);
}

.gastro-feature-icon {
	width: 48px;
	height: 48px;
	margin-bottom: 20px;
	border-radius: 14px;
	font-size: 1.25rem;
}

.gastro-tone-purple {
	background: #f0ecf7;
	color: #8170a2;
}

.gastro-tone-amber {
	background: #f8f1df;
	color: #ad8a43;
}

.gastro-tone-teal {
	background: #e7f3f2;
	color: #43877f;
}

.gastro-feature-label {
	display: block;
	margin-bottom: 9px;
	color: #83929d;
	font-size: .67rem;
	font-weight: 800;
	letter-spacing: .12em;
}

.gastro-feature-card h3 {
	margin: 0 0 10px;
	font-size: 1.13rem;
	font-weight: 800;
}

.gastro-feature-card p {
	min-height: 75px;
	margin: 0 0 18px;
	color: var(--gastro-muted);
	font-size: .87rem;
	line-height: 1.7;
}

.gastro-feature-card > a {
	color: var(--gastro-blue);
	font-size: .82rem;
	font-weight: 700;
	text-decoration: none;
}

.gastro-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 16px;
}

.gastro-feature-tags span {
	padding: 6px 9px;
	border-radius: 99px;
	background: #f1f5f7;
	color: #71818c;
	font-size: .68rem;
	font-weight: 600;
}

.gastro-records-visual {
	position: relative;
	min-height: 420px;
	padding: 0 48px 38px 0;
}

.gastro-records-visual > img {
	width: 100%;
	height: 390px;
	border-radius: 24px 110px 24px 24px;
	object-fit: cover;
}

.gastro-records-note,
.gastro-records-stamp {
	position: absolute;
	display: flex;
	align-items: center;
	gap: 11px;
	border: 1px solid #edf1f3;
	background: #fff;
	box-shadow: 0 14px 35px rgba(42, 71, 88, .12);
}

.gastro-records-note {
	right: 0;
	bottom: 0;
	padding: 15px 18px;
	border-radius: 14px;
}

.gastro-records-note > i {
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	border-radius: 12px;
	background: #eaf3f6;
	color: var(--gastro-blue);
	font-size: 1.2rem;
}

.gastro-records-note strong,
.gastro-records-note small {
	display: block;
}

.gastro-records-note strong {
	color: var(--gastro-ink);
	font-size: .84rem;
}

.gastro-records-note small {
	margin-top: 4px;
	color: #7b8a95;
	font-size: .72rem;
}

.gastro-records-stamp {
	top: 28px;
	left: -18px;
	padding: 10px 13px;
	border-radius: 10px;
	color: var(--gastro-ink);
	font-size: .76rem;
	font-weight: 700;
}

.gastro-records-stamp i {
	color: var(--gastro-teal);
}

.gastro-check-list {
	display: grid;
	gap: 12px;
	margin: 22px 0;
}

.gastro-check-list li {
	display: flex;
	gap: 10px;
	color: #4a5e6e;
	font-size: .9rem;
}

.gastro-check-list i {
	color: var(--gastro-teal);
	font-size: 1.1rem;
}

.gastro-disclaimer {
	padding: 13px 15px;
	border-left: 3px solid #87b8ae;
	border-radius: 0 9px 9px 0;
	background: #f1f7f5;
	color: #71827e;
	font-size: .78rem;
	line-height: 1.6;
}

.gastro-disclaimer i {
	margin-right: 5px;
	color: var(--gastro-teal);
}

.gastro-journey-section {
	background: #f5f8f9;
}

.gastro-journey-heading {
	max-width: 700px;
	margin: 0 auto 40px;
}

.gastro-journey-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 17px;
}

.gastro-journey-step {
	position: relative;
	min-height: 225px;
	padding: 25px 22px;
	border: 1px solid #e7edef;
	border-radius: 16px;
	background: #fff;
}

.gastro-step-number {
	position: absolute;
	top: 18px;
	right: 20px;
	color: #c2d3da;
	font-size: 1.35rem;
	font-weight: 800;
}

.gastro-step-icon {
	display: grid;
	width: 45px;
	height: 45px;
	margin-bottom: 23px;
	place-items: center;
	border-radius: 13px;
	background: #eaf2f5;
	color: var(--gastro-blue);
	font-size: 1.15rem;
}

.gastro-journey-step h3 {
	margin: 0 0 8px;
	font-size: 1rem;
	font-weight: 800;
}

.gastro-journey-step p {
	margin: 0;
	color: var(--gastro-muted);
	font-size: .83rem;
	line-height: 1.65;
}

.gastro-faq-section {
	background: #fff;
}

.gastro-faq-list {
	border-top: 1px solid #e7edef;
}

.gastro-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #e7edef;
}

.gastro-faq-item summary {
	position: relative;
	padding-right: 34px;
	color: var(--gastro-ink);
	font-size: .94rem;
	font-weight: 750;
	cursor: pointer;
	list-style: none;
}

.gastro-faq-item summary::-webkit-details-marker {
	display: none;
}

.gastro-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--gastro-blue);
	content: "+";
	font-size: 1.3rem;
	line-height: 1;
}

.gastro-faq-item[open] summary::after {
	content: "−";
}

.gastro-faq-item p {
	margin: 12px 30px 0 0;
	color: var(--gastro-muted);
	font-size: .86rem;
	line-height: 1.7;
}

.gastro-cta-section {
	padding: 10px 0 85px;
}

.gastro-cta-panel {
	padding: 44px 48px;
	border-radius: 22px;
	background: linear-gradient(120deg, #316f89, #438f94);
	box-shadow: 0 22px 50px rgba(46, 109, 132, .18);
}

.gastro-cta-kicker {
	margin: 0 0 10px;
	color: #c9e5e4;
	font-size: .74rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.gastro-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3.2vw, 2.7rem);
	font-weight: 800;
	letter-spacing: -.04em;
}

.gastro-cta-panel p:not(.gastro-cta-kicker) {
	max-width: 640px;
	margin: 0;
	color: rgba(255, 255, 255, .8);
	font-size: .94rem;
	line-height: 1.7;
}

.gastro-button-light {
	background: #fff;
	color: var(--gastro-blue);
}

.gastro-button-light:hover,
.gastro-button-light:focus {
	transform: translateY(-2px);
	background: #edf5f7;
	color: #285e75;
}

.gastro-cta-link {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 7px;
	margin-top: 15px;
	color: #e1f0ef;
	font-size: .82rem;
	font-weight: 700;
	text-decoration: none;
}

.gastro-cta-link:hover,
.gastro-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.gastro-hero {
		padding: 65px 0 72px;
	}

	.gastro-hero-visual {
		width: min(100%, 560px);
		margin: 0 auto;
	}

	.gastro-workflow-strip .container {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.gastro-workflow-items {
		justify-content: flex-start;
	}

	.gastro-overview-section,
	.gastro-features-section,
	.gastro-records-section,
	.gastro-journey-section,
	.gastro-faq-section {
		padding: 68px 0;
	}

	.gastro-focus-row {
		gap: 12px;
	}

	.gastro-focus-card {
		align-items: flex-start;
		flex-direction: column;
		padding: 17px;
	}

	.gastro-journey-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767.98px) {
	.gastro-hero {
		padding: 54px 0 58px;
	}

	.gastro-hero h1 {
		font-size: clamp(2.4rem, 9.5vw, 3.6rem);
	}

	.gastro-hero-visual {
		min-height: 470px;
	}

	.gastro-hero-photo {
		right: 8%;
		width: min(78%, 360px);
		height: 365px;
	}

	.gastro-orbit-one {
		right: 2%;
		width: 370px;
		height: 370px;
	}

	.gastro-orbit-two {
		right: 7%;
		width: 315px;
		height: 315px;
	}

	.gastro-record-card {
		right: 1%;
		bottom: 5px;
	}

	.gastro-tag-reports {
		left: 0;
	}

	.gastro-tag-followup {
		right: 0;
	}

	.gastro-overview-section,
	.gastro-features-section,
	.gastro-records-section,
	.gastro-journey-section,
	.gastro-faq-section {
		padding: 68px 0;
	}

	.gastro-focus-row {
		grid-template-columns: 1fr;
		margin-top: 30px;
	}

	.gastro-focus-card {
		align-items: center;
		flex-direction: row;
	}

	.gastro-section-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.gastro-feature-card p {
		min-height: 0;
	}

	.gastro-records-visual {
		min-height: 360px;
		padding-right: 25px;
	}

	.gastro-records-visual > img {
		height: 330px;
		border-top-right-radius: 80px;
	}

	.gastro-records-stamp {
		left: 0;
	}

	.gastro-cta-panel {
		padding: 34px 28px;
	}
}

@media (max-width: 575.98px) {
	.gastro-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.gastro-button-primary {
		width: 100%;
		padding: 13px 12px;
		font-size: .86rem;
	}

	.gastro-hero-visual {
		min-height: 410px;
		margin-left: -8px;
		margin-right: -8px;
	}

	.gastro-hero-photo {
		top: 26px;
		right: 8%;
		width: 76%;
		height: 320px;
		border-width: 7px;
	}

	.gastro-orbit-one {
		top: 3px;
		right: 0;
		width: min(84vw, 340px);
		height: min(84vw, 340px);
	}

	.gastro-orbit-two {
		top: 28px;
		right: 5%;
		width: min(72vw, 290px);
		height: min(72vw, 290px);
	}

	.gastro-record-card {
		right: 0;
		bottom: 0;
		width: min(88%, 325px);
		padding: 13px;
	}

	.gastro-floating-tag {
		padding: 9px 10px;
		font-size: .68rem;
	}

	.gastro-tag-reports {
		top: 78px;
	}

	.gastro-tag-followup {
		top: 200px;
	}

	.gastro-spark-one {
		left: 24px;
	}

	.gastro-workflow-items {
		gap: 12px 17px;
	}

	.gastro-workflow-items span {
		font-size: .75rem;
	}

	.gastro-overview-section,
	.gastro-features-section,
	.gastro-records-section,
	.gastro-journey-section,
	.gastro-faq-section {
		padding: 55px 0;
	}

	.gastro-journey-grid {
		gap: 12px;
	}

	.gastro-journey-step {
		min-height: 205px;
		padding: 20px 16px;
	}

	.gastro-cta-section {
		padding: 0 0 55px;
	}

	.gastro-cta-panel {
		padding: 28px 22px;
		border-radius: 16px;
	}

	.gastro-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.gastro-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.gastro-feature-card,
	.gastro-button-primary,
	.gastro-button-light {
		transition: none;
	}
}

.diab-page {
	--diab-ink: #2d3b4a;
	--diab-muted: #748190;
	--diab-green: #3b8177;
	--diab-blue: #4c8195;
	--diab-coral: #d98c78;
	--diab-pale: #f3f7f5;
	overflow: hidden;
	color: var(--diab-muted);
	background: #fff;
}

.diab-page h1,
.diab-page h2,
.diab-page h3 {
	color: var(--diab-ink);
}

.diab-hero {
	position: relative;
	padding: 82px 0 88px;
	background: linear-gradient(120deg, #f2f7f3 0%, #f8faf8 54%, #eaf4f1 100%);
}

.diab-hero::before {
	position: absolute;
	top: -180px;
	right: -135px;
	width: 490px;
	height: 490px;
	border: 1px solid rgba(59, 129, 119, .12);
	border-radius: 50%;
	content: "";
}

.diab-eyebrow,
.diab-kicker {
	margin: 0 0 15px;
	color: var(--diab-green);
	font-size: .77rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.diab-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid rgba(59, 129, 119, .16);
	border-radius: 99px;
	background: rgba(255, 255, 255, .75);
	letter-spacing: .07em;
}

.diab-hero h1 {
	max-width: 650px;
	margin: 13px 0 20px;
	font-size: clamp(2.65rem, 4.8vw, 4.4rem);
	font-weight: 800;
	letter-spacing: -.055em;
	line-height: 1.05;
}

.diab-hero h1 span {
	color: var(--diab-green);
}

.diab-hero-copy,
.diab-section-copy {
	color: var(--diab-muted);
	font-size: 1.02rem;
	line-height: 1.8;
}

.diab-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.diab-hero-points,
.diab-check-list {
	padding: 0;
	list-style: none;
}

.diab-hero-points {
	display: grid;
	gap: 10px;
	margin: 0 0 26px;
}

.diab-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: var(--diab-ink);
	font-size: .93rem;
	font-weight: 600;
}

.diab-hero-points i {
	margin-top: 3px;
	color: var(--diab-green);
}

.diab-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}

.diab-button-primary,
.diab-button-light {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 13px 20px;
	border: 0;
	border-radius: 9px;
	background: var(--diab-green);
	color: #fff;
	font-weight: 700;
	transition: transform .2s ease, box-shadow .2s ease;
}

.diab-button-primary:hover,
.diab-button-primary:focus {
	transform: translateY(-2px);
	background: #306e65;
	color: #fff;
	box-shadow: 0 12px 25px rgba(48, 110, 101, .2);
}

.diab-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--diab-green);
	font-weight: 700;
	text-decoration: none;
}

.diab-text-link:hover,
.diab-text-link:focus {
	color: #285e56;
}

.diab-hero-note {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-top: 23px;
	color: #708078;
	font-size: .85rem;
	font-weight: 600;
}

.diab-hero-note i {
	color: var(--diab-blue);
	font-size: 1.1rem;
}

.diab-hero-visual {
	position: relative;
	min-height: 510px;
}

.diab-hero-orbit {
	position: absolute;
	border: 1px solid rgba(59, 129, 119, .18);
	border-radius: 50%;
}

.diab-orbit-one {
	top: 8px;
	right: 8px;
	width: 430px;
	height: 430px;
}

.diab-orbit-two {
	top: 43px;
	right: 43px;
	width: 360px;
	height: 360px;
	border-style: dashed;
}

.diab-hero-photo {
	position: absolute;
	top: 30px;
	right: 43px;
	width: min(78%, 390px);
	height: 410px;
	overflow: hidden;
	border: 10px solid rgba(255, 255, 255, .85);
	border-radius: 48% 48% 25px 25px;
	box-shadow: 0 28px 65px rgba(39, 75, 67, .17);
}

.diab-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.diab-photo-overlay {
	position: absolute;
	inset: 40% 0 0;
	background: linear-gradient(transparent, rgba(27, 52, 48, .65));
}

.diab-photo-caption {
	position: absolute;
	right: 20px;
	bottom: 20px;
	left: 20px;
	display: flex;
	align-items: center;
	gap: 12px;
	color: #fff;
}

.diab-photo-caption > i {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: 13px;
	background: rgba(255, 255, 255, .2);
	font-size: 1.25rem;
}

.diab-photo-caption strong,
.diab-photo-caption small {
	display: block;
}

.diab-photo-caption strong {
	font-size: .98rem;
}

.diab-photo-caption small {
	margin-top: 3px;
	color: rgba(255, 255, 255, .78);
	font-size: .75rem;
}

.diab-record-card {
	position: absolute;
	right: 0;
	bottom: 20px;
	z-index: 2;
	width: min(77%, 345px);
	padding: 18px;
	border: 1px solid rgba(49, 91, 80, .1);
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 20px 55px rgba(38, 70, 61, .16);
}

.diab-record-header,
.diab-record-row,
.diab-record-footer {
	display: flex;
	align-items: center;
}

.diab-record-header {
	justify-content: space-between;
	padding-bottom: 12px;
	color: var(--diab-ink);
	font-size: .84rem;
	font-weight: 800;
}

.diab-record-header i {
	color: #90a19a;
}

.diab-record-row {
	gap: 10px;
	padding: 12px 0;
	border-top: 1px solid #edf1ee;
}

.diab-record-row > i:first-child {
	display: grid;
	width: 37px;
	height: 37px;
	flex: 0 0 37px;
	place-items: center;
	border-radius: 11px;
	background: #eaf3ef;
	color: var(--diab-green);
}

.diab-record-row > span {
	min-width: 0;
	flex: 1;
}

.diab-record-row strong,
.diab-record-row small {
	display: block;
}

.diab-record-row strong {
	color: var(--diab-ink);
	font-size: .76rem;
}

.diab-record-row small {
	margin-top: 3px;
	color: #82918b;
	font-size: .69rem;
}

.diab-record-check {
	color: var(--diab-green);
}

.diab-record-arrow {
	color: var(--diab-coral);
}

.diab-record-footer {
	gap: 8px;
	padding-top: 11px;
	border-top: 1px solid #edf1ee;
	color: #74837c;
	font-size: .68rem;
}

.diab-record-footer span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #75ae9a;
}

.diab-floating-tag {
	position: absolute;
	z-index: 3;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(45, 80, 69, .08);
	border-radius: 11px;
	background: #fff;
	color: var(--diab-ink);
	font-size: .78rem;
	font-weight: 700;
	box-shadow: 0 12px 30px rgba(39, 72, 62, .11);
}

.diab-floating-tag i {
	color: var(--diab-green);
}

.diab-tag-glucose {
	top: 112px;
	left: -3px;
}

.diab-tag-followup {
	top: 245px;
	right: -12px;
}

.diab-spark {
	position: absolute;
	color: var(--diab-coral);
	font-size: 1.65rem;
}

.diab-spark-one {
	top: 16px;
	left: 45px;
}

.diab-workflow-strip {
	padding: 24px 0;
	border-bottom: 1px solid #edf1ee;
	background: #fff;
}

.diab-workflow-strip .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
}

.diab-workflow-strip p {
	margin: 0;
	color: var(--diab-ink);
	font-size: .9rem;
	font-weight: 800;
}

.diab-workflow-items {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 14px 26px;
}

.diab-workflow-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #6e8078;
	font-size: .82rem;
	font-weight: 600;
}

.diab-workflow-items i {
	color: var(--diab-green);
	font-size: 1rem;
}

.diab-overview-section,
.diab-features-section,
.diab-records-section,
.diab-journey-section,
.diab-faq-section {
	padding: 86px 0;
}

.diab-section-title {
	margin: 0;
	font-size: clamp(1.9rem, 3.3vw, 2.8rem);
	font-weight: 800;
	letter-spacing: -.04em;
	line-height: 1.18;
}

.diab-section-copy {
	margin: 0 0 16px;
	font-size: .96rem;
}

.diab-overview-detail {
	font-size: .88rem;
}

.diab-focus-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	margin-top: 42px;
}

.diab-focus-card {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 20px;
	border: 1px solid #eaf0ec;
	border-radius: 15px;
	background: #fbfcfb;
}

.diab-focus-icon,
.diab-feature-icon {
	display: grid;
	flex: 0 0 auto;
	place-items: center;
}

.diab-focus-icon {
	width: 48px;
	height: 48px;
	border-radius: 14px;
	font-size: 1.25rem;
}

.diab-focus-blue,
.diab-tone-blue {
	background: #e9f1f5;
	color: #527f94;
}

.diab-focus-coral,
.diab-tone-coral {
	background: #faede8;
	color: #c67e68;
}

.diab-focus-green,
.diab-tone-green {
	background: #e8f3ed;
	color: #4d8d75;
}

.diab-focus-card strong,
.diab-focus-card small {
	display: block;
}

.diab-focus-card strong {
	color: var(--diab-ink);
	font-size: .88rem;
}

.diab-focus-card small {
	margin-top: 5px;
	color: var(--diab-muted);
	font-size: .77rem;
	line-height: 1.5;
}

.diab-features-section {
	background: var(--diab-pale);
}

.diab-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 35px;
	margin-bottom: 33px;
}

.diab-section-heading > div {
	max-width: 620px;
}

.diab-section-heading > .diab-section-copy {
	max-width: 370px;
	margin-bottom: 4px;
	font-size: .9rem;
}

.diab-feature-card {
	height: 100%;
	padding: 26px;
	border: 1px solid rgba(52, 85, 72, .1);
	border-radius: 16px;
	background: #fff;
	transition: transform .2s ease, box-shadow .2s ease;
}

.diab-feature-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 17px 38px rgba(46, 79, 65, .09);
}

.diab-feature-icon {
	width: 48px;
	height: 48px;
	margin-bottom: 20px;
	border-radius: 14px;
	font-size: 1.25rem;
}

.diab-tone-purple {
	background: #f0ecf7;
	color: #8170a2;
}

.diab-tone-amber {
	background: #f8f1df;
	color: #ad8a43;
}

.diab-tone-teal {
	background: #e7f3f1;
	color: #43877f;
}

.diab-feature-label {
	display: block;
	margin-bottom: 9px;
	color: #83928a;
	font-size: .67rem;
	font-weight: 800;
	letter-spacing: .12em;
}

.diab-feature-card h3 {
	margin: 0 0 10px;
	font-size: 1.13rem;
	font-weight: 800;
}

.diab-feature-card p {
	min-height: 75px;
	margin: 0 0 18px;
	color: var(--diab-muted);
	font-size: .87rem;
	line-height: 1.7;
}

.diab-feature-card > a {
	color: var(--diab-green);
	font-size: .82rem;
	font-weight: 700;
	text-decoration: none;
}

.diab-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 16px;
}

.diab-feature-tags span {
	padding: 6px 9px;
	border-radius: 99px;
	background: #f1f5f2;
	color: #718179;
	font-size: .68rem;
	font-weight: 600;
}

.diab-records-visual {
	position: relative;
	min-height: 420px;
	padding: 0 48px 38px 0;
}

.diab-records-visual > img {
	width: 100%;
	height: 390px;
	border-radius: 24px 110px 24px 24px;
	object-fit: cover;
}

.diab-records-note,
.diab-records-stamp {
	position: absolute;
	display: flex;
	align-items: center;
	gap: 11px;
	border: 1px solid #edf1ed;
	background: #fff;
	box-shadow: 0 14px 35px rgba(38, 70, 59, .12);
}

.diab-records-note {
	right: 0;
	bottom: 0;
	padding: 15px 18px;
	border-radius: 14px;
}

.diab-records-note > i {
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	border-radius: 12px;
	background: #eaf3ed;
	color: var(--diab-green);
	font-size: 1.2rem;
}

.diab-records-note strong,
.diab-records-note small {
	display: block;
}

.diab-records-note strong {
	color: var(--diab-ink);
	font-size: .84rem;
}

.diab-records-note small {
	margin-top: 4px;
	color: #7b8a82;
	font-size: .72rem;
}

.diab-records-stamp {
	top: 28px;
	left: -18px;
	padding: 10px 13px;
	border-radius: 10px;
	color: var(--diab-ink);
	font-size: .76rem;
	font-weight: 700;
}

.diab-records-stamp i {
	color: var(--diab-green);
}

.diab-check-list {
	display: grid;
	gap: 12px;
	margin: 22px 0;
}

.diab-check-list li {
	display: flex;
	gap: 10px;
	color: #495e54;
	font-size: .9rem;
}

.diab-check-list i {
	color: var(--diab-green);
	font-size: 1.1rem;
}

.diab-disclaimer {
	padding: 13px 15px;
	border-left: 3px solid #8cb9a4;
	border-radius: 0 9px 9px 0;
	background: #f1f7f3;
	color: #718179;
	font-size: .78rem;
	line-height: 1.6;
}

.diab-disclaimer i {
	margin-right: 5px;
	color: var(--diab-green);
}

.diab-journey-section {
	background: #f5f8f5;
}

.diab-journey-heading {
	max-width: 700px;
	margin: 0 auto 40px;
}

.diab-journey-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 17px;
}

.diab-journey-step {
	position: relative;
	min-height: 225px;
	padding: 25px 22px;
	border: 1px solid #e7eee8;
	border-radius: 16px;
	background: #fff;
}

.diab-step-number {
	position: absolute;
	top: 18px;
	right: 20px;
	color: #c1d4c6;
	font-size: 1.35rem;
	font-weight: 800;
}

.diab-step-icon {
	display: grid;
	width: 45px;
	height: 45px;
	margin-bottom: 23px;
	place-items: center;
	border-radius: 13px;
	background: #eaf3ed;
	color: var(--diab-green);
	font-size: 1.15rem;
}

.diab-journey-step h3 {
	margin: 0 0 8px;
	font-size: 1rem;
	font-weight: 800;
}

.diab-journey-step p {
	margin: 0;
	color: var(--diab-muted);
	font-size: .83rem;
	line-height: 1.65;
}

.diab-faq-section {
	background: #fff;
}

.diab-faq-list {
	border-top: 1px solid #e7eeea;
}

.diab-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #e7eeea;
}

.diab-faq-item summary {
	position: relative;
	padding-right: 34px;
	color: var(--diab-ink);
	font-size: .94rem;
	font-weight: 750;
	cursor: pointer;
	list-style: none;
}

.diab-faq-item summary::-webkit-details-marker {
	display: none;
}

.diab-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--diab-green);
	content: "+";
	font-size: 1.3rem;
	line-height: 1;
}

.diab-faq-item[open] summary::after {
	content: "−";
}

.diab-faq-item p {
	margin: 12px 30px 0 0;
	color: var(--diab-muted);
	font-size: .86rem;
	line-height: 1.7;
}

.diab-cta-section {
	padding: 10px 0 85px;
}

.diab-cta-panel {
	padding: 44px 48px;
	border-radius: 22px;
	background: linear-gradient(120deg, #317469, #478f7b);
	box-shadow: 0 22px 50px rgba(47, 112, 96, .18);
}

.diab-cta-kicker {
	margin: 0 0 10px;
	color: #cce6d8;
	font-size: .74rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.diab-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3.2vw, 2.7rem);
	font-weight: 800;
	letter-spacing: -.04em;
}

.diab-cta-panel p:not(.diab-cta-kicker) {
	max-width: 640px;
	margin: 0;
	color: rgba(255, 255, 255, .8);
	font-size: .94rem;
	line-height: 1.7;
}

.diab-button-light {
	background: #fff;
	color: var(--diab-green);
}

.diab-button-light:hover,
.diab-button-light:focus {
	transform: translateY(-2px);
	background: #edf6f0;
	color: #285e56;
}

.diab-cta-link {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 7px;
	margin-top: 15px;
	color: #e2f1e9;
	font-size: .82rem;
	font-weight: 700;
	text-decoration: none;
}

.diab-cta-link:hover,
.diab-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.diab-hero {
		padding: 65px 0 72px;
	}

	.diab-hero-visual {
		width: min(100%, 560px);
		margin: 0 auto;
	}

	.diab-workflow-strip .container {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.diab-workflow-items {
		justify-content: flex-start;
	}

	.diab-overview-section,
	.diab-features-section,
	.diab-records-section,
	.diab-journey-section,
	.diab-faq-section {
		padding: 68px 0;
	}

	.diab-focus-row {
		gap: 12px;
	}

	.diab-focus-card {
		align-items: flex-start;
		flex-direction: column;
		padding: 17px;
	}

	.diab-journey-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767.98px) {
	.diab-hero {
		padding: 54px 0 58px;
	}

	.diab-hero h1 {
		font-size: clamp(2.4rem, 9.5vw, 3.6rem);
	}

	.diab-hero-visual {
		min-height: 470px;
	}

	.diab-hero-photo {
		right: 8%;
		width: min(78%, 360px);
		height: 365px;
	}

	.diab-orbit-one {
		right: 2%;
		width: 370px;
		height: 370px;
	}

	.diab-orbit-two {
		right: 7%;
		width: 315px;
		height: 315px;
	}

	.diab-record-card {
		right: 1%;
		bottom: 5px;
	}

	.diab-tag-glucose {
		left: 0;
	}

	.diab-tag-followup {
		right: 0;
	}

	.diab-overview-section,
	.diab-features-section,
	.diab-records-section,
	.diab-journey-section,
	.diab-faq-section {
		padding: 68px 0;
	}

	.diab-focus-row {
		grid-template-columns: 1fr;
		margin-top: 30px;
	}

	.diab-focus-card {
		align-items: center;
		flex-direction: row;
	}

	.diab-section-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.diab-feature-card p {
		min-height: 0;
	}

	.diab-records-visual {
		min-height: 360px;
		padding-right: 25px;
	}

	.diab-records-visual > img {
		height: 330px;
		border-top-right-radius: 80px;
	}

	.diab-records-stamp {
		left: 0;
	}

	.diab-cta-panel {
		padding: 34px 28px;
	}
}

@media (max-width: 575.98px) {
	.diab-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.diab-button-primary {
		width: 100%;
		padding: 13px 12px;
		font-size: .86rem;
	}

	.diab-hero-visual {
		min-height: 410px;
		margin-left: -8px;
		margin-right: -8px;
	}

	.diab-hero-photo {
		top: 26px;
		right: 8%;
		width: 76%;
		height: 320px;
		border-width: 7px;
	}

	.diab-orbit-one {
		top: 3px;
		right: 0;
		width: min(84vw, 340px);
		height: min(84vw, 340px);
	}

	.diab-orbit-two {
		top: 28px;
		right: 5%;
		width: min(72vw, 290px);
		height: min(72vw, 290px);
	}

	.diab-record-card {
		right: 0;
		bottom: 0;
		width: min(88%, 325px);
		padding: 13px;
	}

	.diab-floating-tag {
		padding: 9px 10px;
		font-size: .68rem;
	}

	.diab-tag-glucose {
		top: 78px;
	}

	.diab-tag-followup {
		top: 200px;
	}

	.diab-spark-one {
		left: 24px;
	}

	.diab-workflow-items {
		gap: 12px 17px;
	}

	.diab-workflow-items span {
		font-size: .75rem;
	}

	.diab-overview-section,
	.diab-features-section,
	.diab-records-section,
	.diab-journey-section,
	.diab-faq-section {
		padding: 55px 0;
	}

	.diab-journey-grid {
		gap: 12px;
	}

	.diab-journey-step {
		min-height: 205px;
		padding: 20px 16px;
	}

	.diab-cta-section {
		padding: 0 0 55px;
	}

	.diab-cta-panel {
		padding: 28px 22px;
		border-radius: 16px;
	}

	.diab-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.diab-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.diab-feature-card,
	.diab-button-primary,
	.diab-button-light {
		transition: none;
	}
}

.hema-page {
	--hema-ink: #29394a;
	--hema-muted: #728191;
	--hema-plum: #795b7d;
	--hema-rose: #c77d82;
	--hema-teal: #4b8d87;
	--hema-pale: #f6f3f7;
	overflow: hidden;
	color: var(--hema-muted);
	background: #fff;
}

.hema-page h1,
.hema-page h2,
.hema-page h3 {
	color: var(--hema-ink);
}

.hema-hero {
	position: relative;
	padding: 82px 0 88px;
	background: linear-gradient(120deg, #f7f3f7 0%, #faf9fb 54%, #f3edef 100%);
}

.hema-hero::before {
	position: absolute;
	top: -180px;
	right: -135px;
	width: 490px;
	height: 490px;
	border: 1px solid rgba(121, 91, 125, .13);
	border-radius: 50%;
	content: "";
}

.hema-eyebrow,
.hema-kicker {
	margin: 0 0 15px;
	color: var(--hema-plum);
	font-size: .77rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.hema-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid rgba(121, 91, 125, .17);
	border-radius: 99px;
	background: rgba(255, 255, 255, .76);
	letter-spacing: .07em;
}

.hema-hero h1 {
	max-width: 650px;
	margin: 13px 0 20px;
	font-size: clamp(2.65rem, 4.8vw, 4.4rem);
	font-weight: 800;
	letter-spacing: -.055em;
	line-height: 1.05;
}

.hema-hero h1 span {
	color: var(--hema-plum);
}

.hema-hero-copy,
.hema-section-copy {
	color: var(--hema-muted);
	font-size: 1.02rem;
	line-height: 1.8;
}

.hema-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.hema-hero-points,
.hema-check-list {
	padding: 0;
	list-style: none;
}

.hema-hero-points {
	display: grid;
	gap: 10px;
	margin: 0 0 26px;
}

.hema-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: var(--hema-ink);
	font-size: .93rem;
	font-weight: 600;
}

.hema-hero-points i {
	margin-top: 3px;
	color: var(--hema-teal);
}

.hema-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}

.hema-button-primary,
.hema-button-light {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 13px 20px;
	border: 0;
	border-radius: 9px;
	background: var(--hema-plum);
	color: #fff;
	font-weight: 700;
	transition: transform .2s ease, box-shadow .2s ease;
}

.hema-button-primary:hover,
.hema-button-primary:focus {
	transform: translateY(-2px);
	background: #664a6b;
	color: #fff;
	box-shadow: 0 12px 25px rgba(102, 74, 107, .2);
}

.hema-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--hema-plum);
	font-weight: 700;
	text-decoration: none;
}

.hema-text-link:hover,
.hema-text-link:focus {
	color: #583f5e;
}

.hema-hero-note {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-top: 23px;
	color: #78818c;
	font-size: .85rem;
	font-weight: 600;
}

.hema-hero-note i {
	color: var(--hema-rose);
	font-size: 1.1rem;
}

.hema-hero-visual {
	position: relative;
	min-height: 510px;
}

.hema-hero-orbit {
	position: absolute;
	border: 1px solid rgba(121, 91, 125, .2);
	border-radius: 50%;
}

.hema-orbit-one {
	top: 8px;
	right: 8px;
	width: 430px;
	height: 430px;
}

.hema-orbit-two {
	top: 43px;
	right: 43px;
	width: 360px;
	height: 360px;
	border-style: dashed;
}

.hema-hero-photo {
	position: absolute;
	top: 30px;
	right: 43px;
	width: min(78%, 390px);
	height: 410px;
	overflow: hidden;
	border: 10px solid rgba(255, 255, 255, .85);
	border-radius: 48% 48% 25px 25px;
	box-shadow: 0 28px 65px rgba(68, 53, 75, .16);
}

.hema-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hema-photo-overlay {
	position: absolute;
	inset: 40% 0 0;
	background: linear-gradient(transparent, rgba(46, 37, 53, .65));
}

.hema-photo-caption {
	position: absolute;
	right: 20px;
	bottom: 20px;
	left: 20px;
	display: flex;
	align-items: center;
	gap: 12px;
	color: #fff;
}

.hema-photo-caption > i {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: 13px;
	background: rgba(255, 255, 255, .2);
	font-size: 1.25rem;
}

.hema-photo-caption strong,
.hema-photo-caption small {
	display: block;
}

.hema-photo-caption strong {
	font-size: .98rem;
}

.hema-photo-caption small {
	margin-top: 3px;
	color: rgba(255, 255, 255, .78);
	font-size: .75rem;
}

.hema-record-card {
	position: absolute;
	right: 0;
	bottom: 20px;
	z-index: 2;
	width: min(77%, 345px);
	padding: 18px;
	border: 1px solid rgba(85, 63, 87, .1);
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 20px 55px rgba(59, 47, 66, .15);
}

.hema-record-header,
.hema-record-row,
.hema-record-footer {
	display: flex;
	align-items: center;
}

.hema-record-header {
	justify-content: space-between;
	padding-bottom: 12px;
	color: var(--hema-ink);
	font-size: .84rem;
	font-weight: 800;
}

.hema-record-header i {
	color: #9b91a0;
}

.hema-record-row {
	gap: 10px;
	padding: 12px 0;
	border-top: 1px solid #f0edf1;
}

.hema-record-row > i:first-child {
	display: grid;
	width: 37px;
	height: 37px;
	flex: 0 0 37px;
	place-items: center;
	border-radius: 11px;
	background: #f2edf4;
	color: var(--hema-plum);
}

.hema-record-row > span {
	min-width: 0;
	flex: 1;
}

.hema-record-row strong,
.hema-record-row small {
	display: block;
}

.hema-record-row strong {
	color: var(--hema-ink);
	font-size: .76rem;
}

.hema-record-row small {
	margin-top: 3px;
	color: #8a8490;
	font-size: .69rem;
}

.hema-record-check {
	color: var(--hema-teal);
}

.hema-record-arrow {
	color: var(--hema-rose);
}

.hema-record-footer {
	gap: 8px;
	padding-top: 11px;
	border-top: 1px solid #f0edf1;
	color: #7f7884;
	font-size: .68rem;
}

.hema-record-footer span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--hema-teal);
}

.hema-floating-tag {
	position: absolute;
	z-index: 3;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(75, 59, 80, .08);
	border-radius: 11px;
	background: #fff;
	color: var(--hema-ink);
	font-size: .78rem;
	font-weight: 700;
	box-shadow: 0 12px 30px rgba(62, 48, 69, .11);
}

.hema-floating-tag i {
	color: var(--hema-plum);
}

.hema-tag-labs {
	top: 112px;
	left: -3px;
}

.hema-tag-followup {
	top: 245px;
	right: -12px;
}

.hema-spark {
	position: absolute;
	color: var(--hema-rose);
	font-size: 1.65rem;
}

.hema-spark-one {
	top: 16px;
	left: 45px;
}

.hema-workflow-strip {
	padding: 24px 0;
	border-bottom: 1px solid #efedf0;
	background: #fff;
}

.hema-workflow-strip .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
}

.hema-workflow-strip p {
	margin: 0;
	color: var(--hema-ink);
	font-size: .9rem;
	font-weight: 800;
}

.hema-workflow-items {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 14px 26px;
}

.hema-workflow-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #74818c;
	font-size: .82rem;
	font-weight: 600;
}

.hema-workflow-items i {
	color: var(--hema-plum);
	font-size: 1rem;
}

.hema-overview-section,
.hema-features-section,
.hema-records-section,
.hema-journey-section,
.hema-faq-section {
	padding: 86px 0;
}

.hema-section-title {
	margin: 0;
	font-size: clamp(1.9rem, 3.3vw, 2.8rem);
	font-weight: 800;
	letter-spacing: -.04em;
	line-height: 1.18;
}

.hema-section-copy {
	margin: 0 0 16px;
	font-size: .96rem;
}

.hema-overview-detail {
	font-size: .88rem;
}

.hema-focus-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	margin-top: 42px;
}

.hema-focus-card {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 20px;
	border: 1px solid #efebf0;
	border-radius: 15px;
	background: #fcfbfc;
}

.hema-focus-icon,
.hema-feature-icon {
	display: grid;
	flex: 0 0 auto;
	place-items: center;
}

.hema-focus-icon {
	width: 48px;
	height: 48px;
	border-radius: 14px;
	font-size: 1.25rem;
}

.hema-focus-blue,
.hema-tone-blue {
	background: #edf0f6;
	color: #687e9c;
}

.hema-focus-coral,
.hema-tone-coral {
	background: #f8ecee;
	color: #bd737b;
}

.hema-focus-green,
.hema-tone-green {
	background: #eaf3ef;
	color: #4c8b76;
}

.hema-focus-card strong,
.hema-focus-card small {
	display: block;
}

.hema-focus-card strong {
	color: var(--hema-ink);
	font-size: .88rem;
}

.hema-focus-card small {
	margin-top: 5px;
	color: var(--hema-muted);
	font-size: .77rem;
	line-height: 1.5;
}

.hema-features-section {
	background: var(--hema-pale);
}

.hema-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 35px;
	margin-bottom: 33px;
}

.hema-section-heading > div {
	max-width: 620px;
}

.hema-section-heading > .hema-section-copy {
	max-width: 370px;
	margin-bottom: 4px;
	font-size: .9rem;
}

.hema-feature-card {
	height: 100%;
	padding: 26px;
	border: 1px solid rgba(82, 63, 86, .1);
	border-radius: 16px;
	background: #fff;
	transition: transform .2s ease, box-shadow .2s ease;
}

.hema-feature-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 17px 38px rgba(63, 49, 68, .09);
}

.hema-feature-icon {
	width: 48px;
	height: 48px;
	margin-bottom: 20px;
	border-radius: 14px;
	font-size: 1.25rem;
}

.hema-tone-purple {
	background: #f0ebf4;
	color: #806a92;
}

.hema-tone-amber {
	background: #f7f1e3;
	color: #aa8a4e;
}

.hema-tone-teal {
	background: #e8f2f1;
	color: #43837d;
}

.hema-feature-label {
	display: block;
	margin-bottom: 9px;
	color: #89838e;
	font-size: .67rem;
	font-weight: 800;
	letter-spacing: .12em;
}

.hema-feature-card h3 {
	margin: 0 0 10px;
	font-size: 1.13rem;
	font-weight: 800;
}

.hema-feature-card p {
	min-height: 75px;
	margin: 0 0 18px;
	color: var(--hema-muted);
	font-size: .87rem;
	line-height: 1.7;
}

.hema-feature-card > a {
	color: var(--hema-plum);
	font-size: .82rem;
	font-weight: 700;
	text-decoration: none;
}

.hema-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 16px;
}

.hema-feature-tags span {
	padding: 6px 9px;
	border-radius: 99px;
	background: #f4f1f5;
	color: #797481;
	font-size: .68rem;
	font-weight: 600;
}

.hema-records-visual {
	position: relative;
	min-height: 420px;
	padding: 0 48px 38px 0;
}

.hema-records-visual > img {
	width: 100%;
	height: 390px;
	border-radius: 24px 110px 24px 24px;
	object-fit: cover;
}

.hema-records-note,
.hema-records-stamp {
	position: absolute;
	display: flex;
	align-items: center;
	gap: 11px;
	border: 1px solid #efedf0;
	background: #fff;
	box-shadow: 0 14px 35px rgba(59, 47, 65, .12);
}

.hema-records-note {
	right: 0;
	bottom: 0;
	padding: 15px 18px;
	border-radius: 14px;
}

.hema-records-note > i {
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	border-radius: 12px;
	background: #f1edf3;
	color: var(--hema-plum);
	font-size: 1.2rem;
}

.hema-records-note strong,
.hema-records-note small {
	display: block;
}

.hema-records-note strong {
	color: var(--hema-ink);
	font-size: .84rem;
}

.hema-records-note small {
	margin-top: 4px;
	color: #817c86;
	font-size: .72rem;
}

.hema-records-stamp {
	top: 28px;
	left: -18px;
	padding: 10px 13px;
	border-radius: 10px;
	color: var(--hema-ink);
	font-size: .76rem;
	font-weight: 700;
}

.hema-records-stamp i {
	color: var(--hema-teal);
}

.hema-check-list {
	display: grid;
	gap: 12px;
	margin: 22px 0;
}

.hema-check-list li {
	display: flex;
	gap: 10px;
	color: #4e5d6c;
	font-size: .9rem;
}

.hema-check-list i {
	color: var(--hema-teal);
	font-size: 1.1rem;
}

.hema-disclaimer {
	padding: 13px 15px;
	border-left: 3px solid #ad91ad;
	border-radius: 0 9px 9px 0;
	background: #f7f3f7;
	color: #77747e;
	font-size: .78rem;
	line-height: 1.6;
}

.hema-disclaimer i {
	margin-right: 5px;
	color: var(--hema-plum);
}

.hema-journey-section {
	background: #f7f5f7;
}

.hema-journey-heading {
	max-width: 700px;
	margin: 0 auto 40px;
}

.hema-journey-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 17px;
}

.hema-journey-step {
	position: relative;
	min-height: 225px;
	padding: 25px 22px;
	border: 1px solid #ece8ed;
	border-radius: 16px;
	background: #fff;
}

.hema-step-number {
	position: absolute;
	top: 18px;
	right: 20px;
	color: #d3c7d5;
	font-size: 1.35rem;
	font-weight: 800;
}

.hema-step-icon {
	display: grid;
	width: 45px;
	height: 45px;
	margin-bottom: 23px;
	place-items: center;
	border-radius: 13px;
	background: #f1edf3;
	color: var(--hema-plum);
	font-size: 1.15rem;
}

.hema-journey-step h3 {
	margin: 0 0 8px;
	font-size: 1rem;
	font-weight: 800;
}

.hema-journey-step p {
	margin: 0;
	color: var(--hema-muted);
	font-size: .83rem;
	line-height: 1.65;
}

.hema-faq-section {
	background: #fff;
}

.hema-faq-list {
	border-top: 1px solid #ece8ed;
}

.hema-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #ece8ed;
}

.hema-faq-item summary {
	position: relative;
	padding-right: 34px;
	color: var(--hema-ink);
	font-size: .94rem;
	font-weight: 750;
	cursor: pointer;
	list-style: none;
}

.hema-faq-item summary::-webkit-details-marker {
	display: none;
}

.hema-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--hema-plum);
	content: "+";
	font-size: 1.3rem;
	line-height: 1;
}

.hema-faq-item[open] summary::after {
	content: "−";
}

.hema-faq-item p {
	margin: 12px 30px 0 0;
	color: var(--hema-muted);
	font-size: .86rem;
	line-height: 1.7;
}

.hema-cta-section {
	padding: 10px 0 85px;
}

.hema-cta-panel {
	padding: 44px 48px;
	border-radius: 22px;
	background: linear-gradient(120deg, #6e5073, #8b657f);
	box-shadow: 0 22px 50px rgba(105, 75, 107, .18);
}

.hema-cta-kicker {
	margin: 0 0 10px;
	color: #ead9e8;
	font-size: .74rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.hema-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3.2vw, 2.7rem);
	font-weight: 800;
	letter-spacing: -.04em;
}

.hema-cta-panel p:not(.hema-cta-kicker) {
	max-width: 640px;
	margin: 0;
	color: rgba(255, 255, 255, .8);
	font-size: .94rem;
	line-height: 1.7;
}

.hema-button-light {
	background: #fff;
	color: var(--hema-plum);
}

.hema-button-light:hover,
.hema-button-light:focus {
	transform: translateY(-2px);
	background: #f4edf4;
	color: #583f5e;
}

.hema-cta-link {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 7px;
	margin-top: 15px;
	color: #f0e4ef;
	font-size: .82rem;
	font-weight: 700;
	text-decoration: none;
}

.hema-cta-link:hover,
.hema-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.hema-hero {
		padding: 65px 0 72px;
	}

	.hema-hero-visual {
		width: min(100%, 560px);
		margin: 0 auto;
	}

	.hema-workflow-strip .container {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.hema-workflow-items {
		justify-content: flex-start;
	}

	.hema-overview-section,
	.hema-features-section,
	.hema-records-section,
	.hema-journey-section,
	.hema-faq-section {
		padding: 68px 0;
	}

	.hema-focus-row {
		gap: 12px;
	}

	.hema-focus-card {
		align-items: flex-start;
		flex-direction: column;
		padding: 17px;
	}

	.hema-journey-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767.98px) {
	.hema-hero {
		padding: 54px 0 58px;
	}

	.hema-hero h1 {
		font-size: clamp(2.4rem, 9.5vw, 3.6rem);
	}

	.hema-hero-visual {
		min-height: 470px;
	}

	.hema-hero-photo {
		right: 8%;
		width: min(78%, 360px);
		height: 365px;
	}

	.hema-orbit-one {
		right: 2%;
		width: 370px;
		height: 370px;
	}

	.hema-orbit-two {
		right: 7%;
		width: 315px;
		height: 315px;
	}

	.hema-record-card {
		right: 1%;
		bottom: 5px;
	}

	.hema-tag-labs {
		left: 0;
	}

	.hema-tag-followup {
		right: 0;
	}

	.hema-overview-section,
	.hema-features-section,
	.hema-records-section,
	.hema-journey-section,
	.hema-faq-section {
		padding: 68px 0;
	}

	.hema-focus-row {
		grid-template-columns: 1fr;
		margin-top: 30px;
	}

	.hema-focus-card {
		align-items: center;
		flex-direction: row;
	}

	.hema-section-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.hema-feature-card p {
		min-height: 0;
	}

	.hema-records-visual {
		min-height: 360px;
		padding-right: 25px;
	}

	.hema-records-visual > img {
		height: 330px;
		border-top-right-radius: 80px;
	}

	.hema-records-stamp {
		left: 0;
	}

	.hema-cta-panel {
		padding: 34px 28px;
	}
}

@media (max-width: 575.98px) {
	.hema-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.hema-button-primary {
		width: 100%;
		padding: 13px 12px;
		font-size: .86rem;
	}

	.hema-hero-visual {
		min-height: 410px;
		margin-left: -8px;
		margin-right: -8px;
	}

	.hema-hero-photo {
		top: 26px;
		right: 8%;
		width: 76%;
		height: 320px;
		border-width: 7px;
	}

	.hema-orbit-one {
		top: 3px;
		right: 0;
		width: min(84vw, 340px);
		height: min(84vw, 340px);
	}

	.hema-orbit-two {
		top: 28px;
		right: 5%;
		width: min(72vw, 290px);
		height: min(72vw, 290px);
	}

	.hema-record-card {
		right: 0;
		bottom: 0;
		width: min(88%, 325px);
		padding: 13px;
	}

	.hema-floating-tag {
		padding: 9px 10px;
		font-size: .68rem;
	}

	.hema-tag-labs {
		top: 78px;
	}

	.hema-tag-followup {
		top: 200px;
	}

	.hema-spark-one {
		left: 24px;
	}

	.hema-workflow-items {
		gap: 12px 17px;
	}

	.hema-workflow-items span {
		font-size: .75rem;
	}

	.hema-overview-section,
	.hema-features-section,
	.hema-records-section,
	.hema-journey-section,
	.hema-faq-section {
		padding: 55px 0;
	}

	.hema-journey-grid {
		gap: 12px;
	}

	.hema-journey-step {
		min-height: 205px;
		padding: 20px 16px;
	}

	.hema-cta-section {
		padding: 0 0 55px;
	}

	.hema-cta-panel {
		padding: 28px 22px;
		border-radius: 16px;
	}

	.hema-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.hema-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.hema-feature-card,
	.hema-button-primary,
	.hema-button-light {
		transition: none;
	}
}

.neuropsych-page {
	--neuropsych-ink: #30344d;
	--neuropsych-muted: #76788f;
	--neuropsych-indigo: #6966a8;
	--neuropsych-teal: #4b9691;
	--neuropsych-coral: #d88d88;
	--neuropsych-pale: #f4f4f9;
	overflow: hidden;
	color: var(--neuropsych-muted);
	background: #fff;
}

.neuropsych-page h1,
.neuropsych-page h2,
.neuropsych-page h3 {
	color: var(--neuropsych-ink);
}

.neuropsych-hero {
	position: relative;
	padding: 82px 0 88px;
	background: linear-gradient(120deg, #f4f3f9 0%, #faf9fb 54%, #eef4f4 100%);
}

.neuropsych-hero::before {
	position: absolute;
	top: -180px;
	right: -135px;
	width: 490px;
	height: 490px;
	border: 1px solid rgba(105, 102, 168, .12);
	border-radius: 50%;
	content: "";
}

.neuropsych-eyebrow,
.neuropsych-kicker {
	margin: 0 0 15px;
	color: var(--neuropsych-indigo);
	font-size: .77rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.neuropsych-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid rgba(105, 102, 168, .16);
	border-radius: 99px;
	background: rgba(255, 255, 255, .76);
	letter-spacing: .07em;
}

.neuropsych-hero h1 {
	max-width: 650px;
	margin: 13px 0 20px;
	font-size: clamp(2.65rem, 4.8vw, 4.35rem);
	font-weight: 800;
	letter-spacing: -.055em;
	line-height: 1.05;
}

.neuropsych-hero h1 span {
	color: var(--neuropsych-indigo);
}

.neuropsych-hero-copy,
.neuropsych-section-copy {
	color: var(--neuropsych-muted);
	font-size: 1.02rem;
	line-height: 1.8;
}

.neuropsych-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.neuropsych-hero-points,
.neuropsych-check-list {
	padding: 0;
	list-style: none;
}

.neuropsych-hero-points {
	display: grid;
	gap: 10px;
	margin: 0 0 26px;
}

.neuropsych-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: var(--neuropsych-ink);
	font-size: .93rem;
	font-weight: 600;
}

.neuropsych-hero-points i {
	margin-top: 3px;
	color: var(--neuropsych-teal);
}

.neuropsych-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}

.neuropsych-button-primary,
.neuropsych-button-light {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 13px 20px;
	border: 0;
	border-radius: 9px;
	background: var(--neuropsych-indigo);
	color: #fff;
	font-weight: 700;
	transition: transform .2s ease, box-shadow .2s ease;
}

.neuropsych-button-primary:hover,
.neuropsych-button-primary:focus {
	transform: translateY(-2px);
	background: #57548f;
	color: #fff;
	box-shadow: 0 12px 25px rgba(87, 84, 143, .2);
}

.neuropsych-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--neuropsych-indigo);
	font-weight: 700;
	text-decoration: none;
}

.neuropsych-text-link:hover,
.neuropsych-text-link:focus {
	color: #484677;
}

.neuropsych-hero-note {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-top: 23px;
	color: #777b8a;
	font-size: .85rem;
	font-weight: 600;
}

.neuropsych-hero-note i {
	color: var(--neuropsych-teal);
	font-size: 1.1rem;
}

.neuropsych-hero-visual {
	position: relative;
	min-height: 510px;
}

.neuropsych-hero-orbit {
	position: absolute;
	border: 1px solid rgba(105, 102, 168, .18);
	border-radius: 50%;
}

.neuropsych-orbit-one {
	top: 8px;
	right: 8px;
	width: 430px;
	height: 430px;
}

.neuropsych-orbit-two {
	top: 43px;
	right: 43px;
	width: 360px;
	height: 360px;
	border-style: dashed;
}

.neuropsych-hero-photo {
	position: absolute;
	top: 30px;
	right: 43px;
	width: min(78%, 390px);
	height: 410px;
	overflow: hidden;
	border: 10px solid rgba(255, 255, 255, .85);
	border-radius: 48% 48% 25px 25px;
	box-shadow: 0 28px 65px rgba(52, 51, 85, .16);
}

.neuropsych-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.neuropsych-photo-overlay {
	position: absolute;
	inset: 40% 0 0;
	background: linear-gradient(transparent, rgba(38, 38, 64, .65));
}

.neuropsych-photo-caption {
	position: absolute;
	right: 20px;
	bottom: 20px;
	left: 20px;
	display: flex;
	align-items: center;
	gap: 12px;
	color: #fff;
}

.neuropsych-photo-caption > i {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: 13px;
	background: rgba(255, 255, 255, .2);
	font-size: 1.25rem;
}

.neuropsych-photo-caption strong,
.neuropsych-photo-caption small {
	display: block;
}

.neuropsych-photo-caption strong {
	font-size: .98rem;
}

.neuropsych-photo-caption small {
	margin-top: 3px;
	color: rgba(255, 255, 255, .78);
	font-size: .75rem;
}

.neuropsych-record-card {
	position: absolute;
	right: 0;
	bottom: 20px;
	z-index: 2;
	width: min(77%, 345px);
	padding: 18px;
	border: 1px solid rgba(63, 61, 100, .1);
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 20px 55px rgba(50, 49, 78, .15);
}

.neuropsych-record-header,
.neuropsych-record-row,
.neuropsych-record-footer {
	display: flex;
	align-items: center;
}

.neuropsych-record-header {
	justify-content: space-between;
	padding-bottom: 12px;
	color: var(--neuropsych-ink);
	font-size: .84rem;
	font-weight: 800;
}

.neuropsych-record-header i {
	color: #9292a5;
}

.neuropsych-record-row {
	gap: 10px;
	padding: 12px 0;
	border-top: 1px solid #eeeff3;
}

.neuropsych-record-row > i:first-child {
	display: grid;
	width: 37px;
	height: 37px;
	flex: 0 0 37px;
	place-items: center;
	border-radius: 11px;
	background: #efeff8;
	color: var(--neuropsych-indigo);
}

.neuropsych-record-row > span {
	min-width: 0;
	flex: 1;
}

.neuropsych-record-row strong,
.neuropsych-record-row small {
	display: block;
}

.neuropsych-record-row strong {
	color: var(--neuropsych-ink);
	font-size: .76rem;
}

.neuropsych-record-row small {
	margin-top: 3px;
	color: #858698;
	font-size: .69rem;
}

.neuropsych-record-check {
	color: var(--neuropsych-teal);
}

.neuropsych-record-arrow {
	color: var(--neuropsych-coral);
}

.neuropsych-record-footer {
	gap: 8px;
	padding-top: 11px;
	border-top: 1px solid #eeeff3;
	color: #77798b;
	font-size: .68rem;
}

.neuropsych-record-footer span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--neuropsych-teal);
}

.neuropsych-floating-tag {
	position: absolute;
	z-index: 3;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(55, 55, 88, .08);
	border-radius: 11px;
	background: #fff;
	color: var(--neuropsych-ink);
	font-size: .78rem;
	font-weight: 700;
	box-shadow: 0 12px 30px rgba(49, 48, 79, .11);
}

.neuropsych-floating-tag i {
	color: var(--neuropsych-indigo);
}

.neuropsych-tag-history {
	top: 112px;
	left: -3px;
}

.neuropsych-tag-followup {
	top: 245px;
	right: -12px;
}

.neuropsych-spark {
	position: absolute;
	color: var(--neuropsych-coral);
	font-size: 1.65rem;
}

.neuropsych-spark-one {
	top: 16px;
	left: 45px;
}

.neuropsych-workflow-strip {
	padding: 24px 0;
	border-bottom: 1px solid #eceef2;
	background: #fff;
}

.neuropsych-workflow-strip .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
}

.neuropsych-workflow-strip p {
	margin: 0;
	color: var(--neuropsych-ink);
	font-size: .9rem;
	font-weight: 800;
}

.neuropsych-workflow-items {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 14px 26px;
}

.neuropsych-workflow-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #72798b;
	font-size: .82rem;
	font-weight: 600;
}

.neuropsych-workflow-items i {
	color: var(--neuropsych-indigo);
	font-size: 1rem;
}

.neuropsych-overview-section,
.neuropsych-features-section,
.neuropsych-records-section,
.neuropsych-journey-section,
.neuropsych-faq-section {
	padding: 86px 0;
}

.neuropsych-section-title {
	margin: 0;
	font-size: clamp(1.9rem, 3.3vw, 2.8rem);
	font-weight: 800;
	letter-spacing: -.04em;
	line-height: 1.18;
}

.neuropsych-section-copy {
	margin: 0 0 16px;
	font-size: .96rem;
}

.neuropsych-overview-detail {
	font-size: .88rem;
}

.neuropsych-focus-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	margin-top: 42px;
}

.neuropsych-focus-card {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 20px;
	border: 1px solid #ececf2;
	border-radius: 15px;
	background: #fcfcfd;
}

.neuropsych-focus-icon,
.neuropsych-feature-icon {
	display: grid;
	flex: 0 0 auto;
	place-items: center;
}

.neuropsych-focus-icon {
	width: 48px;
	height: 48px;
	border-radius: 14px;
	font-size: 1.25rem;
}

.neuropsych-focus-blue,
.neuropsych-tone-blue {
	background: #eceff7;
	color: #687fa0;
}

.neuropsych-focus-violet,
.neuropsych-tone-violet {
	background: #f0edf7;
	color: #8170a2;
}

.neuropsych-focus-teal,
.neuropsych-tone-teal {
	background: #e8f3f1;
	color: #43877f;
}

.neuropsych-focus-card strong,
.neuropsych-focus-card small {
	display: block;
}

.neuropsych-focus-card strong {
	color: var(--neuropsych-ink);
	font-size: .88rem;
}

.neuropsych-focus-card small {
	margin-top: 5px;
	color: var(--neuropsych-muted);
	font-size: .77rem;
	line-height: 1.5;
}

.neuropsych-features-section {
	background: var(--neuropsych-pale);
}

.neuropsych-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 35px;
	margin-bottom: 33px;
}

.neuropsych-section-heading > div {
	max-width: 620px;
}

.neuropsych-section-heading > .neuropsych-section-copy {
	max-width: 370px;
	margin-bottom: 4px;
	font-size: .9rem;
}

.neuropsych-feature-card {
	height: 100%;
	padding: 26px;
	border: 1px solid rgba(70, 67, 107, .1);
	border-radius: 16px;
	background: #fff;
	transition: transform .2s ease, box-shadow .2s ease;
}

.neuropsych-feature-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 17px 38px rgba(54, 52, 87, .09);
}

.neuropsych-feature-icon {
	width: 48px;
	height: 48px;
	margin-bottom: 20px;
	border-radius: 14px;
	font-size: 1.25rem;
}

.neuropsych-tone-coral {
	background: #f8eceb;
	color: #bf7775;
}

.neuropsych-tone-green {
	background: #e9f3ed;
	color: #4e8b72;
}

.neuropsych-tone-amber {
	background: #f7f1e2;
	color: #a88a4c;
}

.neuropsych-feature-label {
	display: block;
	margin-bottom: 9px;
	color: #85869a;
	font-size: .67rem;
	font-weight: 800;
	letter-spacing: .12em;
}

.neuropsych-feature-card h3 {
	margin: 0 0 10px;
	font-size: 1.13rem;
	font-weight: 800;
}

.neuropsych-feature-card p {
	min-height: 75px;
	margin: 0 0 18px;
	color: var(--neuropsych-muted);
	font-size: .87rem;
	line-height: 1.7;
}

.neuropsych-feature-card > a {
	color: var(--neuropsych-indigo);
	font-size: .82rem;
	font-weight: 700;
	text-decoration: none;
}

.neuropsych-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 16px;
}

.neuropsych-feature-tags span {
	padding: 6px 9px;
	border-radius: 99px;
	background: #f2f1f7;
	color: #74758a;
	font-size: .68rem;
	font-weight: 600;
}

.neuropsych-records-visual {
	position: relative;
	min-height: 420px;
	padding: 0 48px 38px 0;
}

.neuropsych-records-visual > img {
	width: 100%;
	height: 390px;
	border-radius: 24px 110px 24px 24px;
	object-fit: cover;
}

.neuropsych-records-note,
.neuropsych-records-stamp {
	position: absolute;
	display: flex;
	align-items: center;
	gap: 11px;
	border: 1px solid #edecf1;
	background: #fff;
	box-shadow: 0 14px 35px rgba(51, 49, 78, .12);
}

.neuropsych-records-note {
	right: 0;
	bottom: 0;
	padding: 15px 18px;
	border-radius: 14px;
}

.neuropsych-records-note > i {
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	border-radius: 12px;
	background: #efeff7;
	color: var(--neuropsych-indigo);
	font-size: 1.2rem;
}

.neuropsych-records-note strong,
.neuropsych-records-note small {
	display: block;
}

.neuropsych-records-note strong {
	color: var(--neuropsych-ink);
	font-size: .84rem;
}

.neuropsych-records-note small {
	margin-top: 4px;
	color: #7d7f90;
	font-size: .72rem;
}

.neuropsych-records-stamp {
	top: 28px;
	left: -18px;
	padding: 10px 13px;
	border-radius: 10px;
	color: var(--neuropsych-ink);
	font-size: .76rem;
	font-weight: 700;
}

.neuropsych-records-stamp i {
	color: var(--neuropsych-teal);
}

.neuropsych-check-list {
	display: grid;
	gap: 12px;
	margin: 22px 0;
}

.neuropsych-check-list li {
	display: flex;
	gap: 10px;
	color: #4e5269;
	font-size: .9rem;
}

.neuropsych-check-list i {
	color: var(--neuropsych-teal);
	font-size: 1.1rem;
}

.neuropsych-disclaimer {
	padding: 13px 15px;
	border-left: 3px solid #918bb8;
	border-radius: 0 9px 9px 0;
	background: #f4f3f9;
	color: #747587;
	font-size: .78rem;
	line-height: 1.6;
}

.neuropsych-disclaimer i {
	margin-right: 5px;
	color: var(--neuropsych-indigo);
}

.neuropsych-journey-section {
	background: #f6f5f9;
}

.neuropsych-journey-heading {
	max-width: 700px;
	margin: 0 auto 40px;
}

.neuropsych-journey-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 17px;
}

.neuropsych-journey-step {
	position: relative;
	min-height: 225px;
	padding: 25px 22px;
	border: 1px solid #e9e8ef;
	border-radius: 16px;
	background: #fff;
}

.neuropsych-step-number {
	position: absolute;
	top: 18px;
	right: 20px;
	color: #cbc9dc;
	font-size: 1.35rem;
	font-weight: 800;
}

.neuropsych-step-icon {
	display: grid;
	width: 45px;
	height: 45px;
	margin-bottom: 23px;
	place-items: center;
	border-radius: 13px;
	background: #efeff7;
	color: var(--neuropsych-indigo);
	font-size: 1.15rem;
}

.neuropsych-journey-step h3 {
	margin: 0 0 8px;
	font-size: 1rem;
	font-weight: 800;
}

.neuropsych-journey-step p {
	margin: 0;
	color: var(--neuropsych-muted);
	font-size: .83rem;
	line-height: 1.65;
}

.neuropsych-faq-section {
	background: #fff;
}

.neuropsych-faq-list {
	border-top: 1px solid #e9e8ef;
}

.neuropsych-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #e9e8ef;
}

.neuropsych-faq-item summary {
	position: relative;
	padding-right: 34px;
	color: var(--neuropsych-ink);
	font-size: .94rem;
	font-weight: 750;
	cursor: pointer;
	list-style: none;
}

.neuropsych-faq-item summary::-webkit-details-marker {
	display: none;
}

.neuropsych-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--neuropsych-indigo);
	content: "+";
	font-size: 1.3rem;
	line-height: 1;
}

.neuropsych-faq-item[open] summary::after {
	content: "−";
}

.neuropsych-faq-item p {
	margin: 12px 30px 0 0;
	color: var(--neuropsych-muted);
	font-size: .86rem;
	line-height: 1.7;
}

.neuropsych-cta-section {
	padding: 10px 0 85px;
}

.neuropsych-cta-panel {
	padding: 44px 48px;
	border-radius: 22px;
	background: linear-gradient(120deg, #5e5b99, #7774ad);
	box-shadow: 0 22px 50px rgba(83, 79, 145, .18);
}

.neuropsych-cta-kicker {
	margin: 0 0 10px;
	color: #dcdef2;
	font-size: .74rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.neuropsych-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3.2vw, 2.7rem);
	font-weight: 800;
	letter-spacing: -.04em;
}

.neuropsych-cta-panel p:not(.neuropsych-cta-kicker) {
	max-width: 640px;
	margin: 0;
	color: rgba(255, 255, 255, .8);
	font-size: .94rem;
	line-height: 1.7;
}

.neuropsych-button-light {
	background: #fff;
	color: var(--neuropsych-indigo);
}

.neuropsych-button-light:hover,
.neuropsych-button-light:focus {
	transform: translateY(-2px);
	background: #f0eff8;
	color: #484677;
}

.neuropsych-cta-link {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 7px;
	margin-top: 15px;
	color: #e5e5f4;
	font-size: .82rem;
	font-weight: 700;
	text-decoration: none;
}

.neuropsych-cta-link:hover,
.neuropsych-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.neuropsych-hero {
		padding: 65px 0 72px;
	}

	.neuropsych-hero-visual {
		width: min(100%, 560px);
		margin: 0 auto;
	}

	.neuropsych-workflow-strip .container {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.neuropsych-workflow-items {
		justify-content: flex-start;
	}

	.neuropsych-overview-section,
	.neuropsych-features-section,
	.neuropsych-records-section,
	.neuropsych-journey-section,
	.neuropsych-faq-section {
		padding: 68px 0;
	}

	.neuropsych-focus-row {
		gap: 12px;
	}

	.neuropsych-focus-card {
		align-items: flex-start;
		flex-direction: column;
		padding: 17px;
	}

	.neuropsych-journey-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767.98px) {
	.neuropsych-hero {
		padding: 54px 0 58px;
	}

	.neuropsych-hero h1 {
		font-size: clamp(2.4rem, 9.5vw, 3.6rem);
	}

	.neuropsych-hero-visual {
		min-height: 470px;
	}

	.neuropsych-hero-photo {
		right: 8%;
		width: min(78%, 360px);
		height: 365px;
	}

	.neuropsych-orbit-one {
		right: 2%;
		width: 370px;
		height: 370px;
	}

	.neuropsych-orbit-two {
		right: 7%;
		width: 315px;
		height: 315px;
	}

	.neuropsych-record-card {
		right: 1%;
		bottom: 5px;
	}

	.neuropsych-tag-history {
		left: 0;
	}

	.neuropsych-tag-followup {
		right: 0;
	}

	.neuropsych-overview-section,
	.neuropsych-features-section,
	.neuropsych-records-section,
	.neuropsych-journey-section,
	.neuropsych-faq-section {
		padding: 68px 0;
	}

	.neuropsych-focus-row {
		grid-template-columns: 1fr;
		margin-top: 30px;
	}

	.neuropsych-focus-card {
		align-items: center;
		flex-direction: row;
	}

	.neuropsych-section-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.neuropsych-feature-card p {
		min-height: 0;
	}

	.neuropsych-records-visual {
		min-height: 360px;
		padding-right: 25px;
	}

	.neuropsych-records-visual > img {
		height: 330px;
		border-top-right-radius: 80px;
	}

	.neuropsych-records-stamp {
		left: 0;
	}

	.neuropsych-cta-panel {
		padding: 34px 28px;
	}
}

@media (max-width: 575.98px) {
	.neuropsych-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.neuropsych-button-primary {
		width: 100%;
		padding: 13px 12px;
		font-size: .86rem;
	}

	.neuropsych-hero-visual {
		min-height: 410px;
		margin-left: -8px;
		margin-right: -8px;
	}

	.neuropsych-hero-photo {
		top: 26px;
		right: 8%;
		width: 76%;
		height: 320px;
		border-width: 7px;
	}

	.neuropsych-orbit-one {
		top: 3px;
		right: 0;
		width: min(84vw, 340px);
		height: min(84vw, 340px);
	}

	.neuropsych-orbit-two {
		top: 28px;
		right: 5%;
		width: min(72vw, 290px);
		height: min(72vw, 290px);
	}

	.neuropsych-record-card {
		right: 0;
		bottom: 0;
		width: min(88%, 325px);
		padding: 13px;
	}

	.neuropsych-floating-tag {
		padding: 9px 10px;
		font-size: .68rem;
	}

	.neuropsych-tag-history {
		top: 78px;
	}

	.neuropsych-tag-followup {
		top: 200px;
	}

	.neuropsych-spark-one {
		left: 24px;
	}

	.neuropsych-workflow-items {
		gap: 12px 17px;
	}

	.neuropsych-workflow-items span {
		font-size: .75rem;
	}

	.neuropsych-overview-section,
	.neuropsych-features-section,
	.neuropsych-records-section,
	.neuropsych-journey-section,
	.neuropsych-faq-section {
		padding: 55px 0;
	}

	.neuropsych-journey-grid {
		gap: 12px;
	}

	.neuropsych-journey-step {
		min-height: 205px;
		padding: 20px 16px;
	}

	.neuropsych-cta-section {
		padding: 0 0 55px;
	}

	.neuropsych-cta-panel {
		padding: 28px 22px;
		border-radius: 16px;
	}

	.neuropsych-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.neuropsych-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.neuropsych-feature-card,
	.neuropsych-button-primary,
	.neuropsych-button-light {
		transition: none;
	}
}

.neurology-page {
	--neurology-ink: #2c3d50;
	--neurology-muted: #718294;
	--neurology-blue: #507da3;
	--neurology-teal: #4d918a;
	--neurology-coral: #d58b7c;
	--neurology-pale: #f2f6f9;
	overflow: hidden;
	color: var(--neurology-muted);
	background: #fff;
}

.neurology-page h1,
.neurology-page h2,
.neurology-page h3 {
	color: var(--neurology-ink);
}

.neurology-hero {
	position: relative;
	padding: 82px 0 88px;
	background: linear-gradient(120deg, #f1f5f8 0%, #f9fafb 54%, #ebf3f4 100%);
}

.neurology-hero::before {
	position: absolute;
	top: -180px;
	right: -135px;
	width: 490px;
	height: 490px;
	border: 1px solid rgba(80, 125, 163, .13);
	border-radius: 50%;
	content: "";
}

.neurology-eyebrow,
.neurology-kicker {
	margin: 0 0 15px;
	color: var(--neurology-blue);
	font-size: .77rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.neurology-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid rgba(80, 125, 163, .17);
	border-radius: 99px;
	background: rgba(255, 255, 255, .76);
	letter-spacing: .07em;
}

.neurology-hero h1 {
	max-width: 650px;
	margin: 13px 0 20px;
	font-size: clamp(2.65rem, 4.8vw, 4.4rem);
	font-weight: 800;
	letter-spacing: -.055em;
	line-height: 1.05;
}

.neurology-hero h1 span {
	color: var(--neurology-blue);
}

.neurology-hero-copy,
.neurology-section-copy {
	color: var(--neurology-muted);
	font-size: 1.02rem;
	line-height: 1.8;
}

.neurology-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.neurology-hero-points,
.neurology-check-list {
	padding: 0;
	list-style: none;
}

.neurology-hero-points {
	display: grid;
	gap: 10px;
	margin: 0 0 26px;
}

.neurology-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: var(--neurology-ink);
	font-size: .93rem;
	font-weight: 600;
}

.neurology-hero-points i {
	margin-top: 3px;
	color: var(--neurology-teal);
}

.neurology-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}

.neurology-button-primary,
.neurology-button-light {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 13px 20px;
	border: 0;
	border-radius: 9px;
	background: var(--neurology-blue);
	color: #fff;
	font-weight: 700;
	transition: transform .2s ease, box-shadow .2s ease;
}

.neurology-button-primary:hover,
.neurology-button-primary:focus {
	transform: translateY(-2px);
	background: #426d91;
	color: #fff;
	box-shadow: 0 12px 25px rgba(66, 109, 145, .2);
}

.neurology-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--neurology-blue);
	font-weight: 700;
	text-decoration: none;
}

.neurology-text-link:hover,
.neurology-text-link:focus {
	color: #355d7c;
}

.neurology-hero-note {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-top: 23px;
	color: #70808e;
	font-size: .85rem;
	font-weight: 600;
}

.neurology-hero-note i {
	color: var(--neurology-teal);
	font-size: 1.1rem;
}

.neurology-hero-visual {
	position: relative;
	min-height: 510px;
}

.neurology-hero-orbit {
	position: absolute;
	border: 1px solid rgba(80, 125, 163, .18);
	border-radius: 50%;
}

.neurology-orbit-one {
	top: 8px;
	right: 8px;
	width: 430px;
	height: 430px;
}

.neurology-orbit-two {
	top: 43px;
	right: 43px;
	width: 360px;
	height: 360px;
	border-style: dashed;
}

.neurology-hero-photo {
	position: absolute;
	top: 30px;
	right: 43px;
	width: min(78%, 390px);
	height: 410px;
	overflow: hidden;
	border: 10px solid rgba(255, 255, 255, .85);
	border-radius: 48% 48% 25px 25px;
	box-shadow: 0 28px 65px rgba(42, 66, 87, .17);
}

.neurology-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.neurology-photo-overlay {
	position: absolute;
	inset: 40% 0 0;
	background: linear-gradient(transparent, rgba(29, 49, 68, .66));
}

.neurology-photo-caption {
	position: absolute;
	right: 20px;
	bottom: 20px;
	left: 20px;
	display: flex;
	align-items: center;
	gap: 12px;
	color: #fff;
}

.neurology-photo-caption > i {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: 13px;
	background: rgba(255, 255, 255, .2);
	font-size: 1.25rem;
}

.neurology-photo-caption strong,
.neurology-photo-caption small {
	display: block;
}

.neurology-photo-caption strong {
	font-size: .98rem;
}

.neurology-photo-caption small {
	margin-top: 3px;
	color: rgba(255, 255, 255, .78);
	font-size: .75rem;
}

.neurology-record-card {
	position: absolute;
	right: 0;
	bottom: 20px;
	z-index: 2;
	width: min(77%, 345px);
	padding: 18px;
	border: 1px solid rgba(50, 82, 106, .1);
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 20px 55px rgba(39, 65, 84, .16);
}

.neurology-record-header,
.neurology-record-row,
.neurology-record-footer {
	display: flex;
	align-items: center;
}

.neurology-record-header {
	justify-content: space-between;
	padding-bottom: 12px;
	color: var(--neurology-ink);
	font-size: .84rem;
	font-weight: 800;
}

.neurology-record-header i {
	color: #91a1ad;
}

.neurology-record-row {
	gap: 10px;
	padding: 12px 0;
	border-top: 1px solid #edf1f3;
}

.neurology-record-row > i:first-child {
	display: grid;
	width: 37px;
	height: 37px;
	flex: 0 0 37px;
	place-items: center;
	border-radius: 11px;
	background: #eaf1f6;
	color: var(--neurology-blue);
}

.neurology-record-row > span {
	min-width: 0;
	flex: 1;
}

.neurology-record-row strong,
.neurology-record-row small {
	display: block;
}

.neurology-record-row strong {
	color: var(--neurology-ink);
	font-size: .76rem;
}

.neurology-record-row small {
	margin-top: 3px;
	color: #81909c;
	font-size: .69rem;
}

.neurology-record-check {
	color: var(--neurology-teal);
}

.neurology-record-arrow {
	color: var(--neurology-coral);
}

.neurology-record-footer {
	gap: 8px;
	padding-top: 11px;
	border-top: 1px solid #edf1f3;
	color: #74838e;
	font-size: .68rem;
}

.neurology-record-footer span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--neurology-teal);
}

.neurology-floating-tag {
	position: absolute;
	z-index: 3;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(42, 73, 94, .08);
	border-radius: 11px;
	background: #fff;
	color: var(--neurology-ink);
	font-size: .78rem;
	font-weight: 700;
	box-shadow: 0 12px 30px rgba(39, 67, 86, .11);
}

.neurology-floating-tag i {
	color: var(--neurology-blue);
}

.neurology-tag-reports {
	top: 112px;
	left: -3px;
}

.neurology-tag-followup {
	top: 245px;
	right: -12px;
}

.neurology-spark {
	position: absolute;
	color: var(--neurology-coral);
	font-size: 1.65rem;
}

.neurology-spark-one {
	top: 16px;
	left: 45px;
}

.neurology-workflow-strip {
	padding: 24px 0;
	border-bottom: 1px solid #edf1f3;
	background: #fff;
}

.neurology-workflow-strip .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
}

.neurology-workflow-strip p {
	margin: 0;
	color: var(--neurology-ink);
	font-size: .9rem;
	font-weight: 800;
}

.neurology-workflow-items {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 14px 26px;
}

.neurology-workflow-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #6f7f8b;
	font-size: .82rem;
	font-weight: 600;
}

.neurology-workflow-items i {
	color: var(--neurology-blue);
	font-size: 1rem;
}

.neurology-overview-section,
.neurology-features-section,
.neurology-records-section,
.neurology-journey-section,
.neurology-faq-section {
	padding: 86px 0;
}

.neurology-section-title {
	margin: 0;
	font-size: clamp(1.9rem, 3.3vw, 2.8rem);
	font-weight: 800;
	letter-spacing: -.04em;
	line-height: 1.18;
}

.neurology-section-copy {
	margin: 0 0 16px;
	font-size: .96rem;
}

.neurology-overview-detail {
	font-size: .88rem;
}

.neurology-focus-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	margin-top: 42px;
}

.neurology-focus-card {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 20px;
	border: 1px solid #eaf0f3;
	border-radius: 15px;
	background: #fbfcfd;
}

.neurology-focus-icon,
.neurology-feature-icon {
	display: grid;
	flex: 0 0 auto;
	place-items: center;
}

.neurology-focus-icon {
	width: 48px;
	height: 48px;
	border-radius: 14px;
	font-size: 1.25rem;
}

.neurology-focus-blue,
.neurology-tone-blue {
	background: #e9f0f6;
	color: #527c9e;
}

.neurology-focus-violet,
.neurology-tone-violet {
	background: #f0edf6;
	color: #806f9f;
}

.neurology-focus-teal,
.neurology-tone-teal {
	background: #e8f3f0;
	color: #46877e;
}

.neurology-focus-card strong,
.neurology-focus-card small {
	display: block;
}

.neurology-focus-card strong {
	color: var(--neurology-ink);
	font-size: .88rem;
}

.neurology-focus-card small {
	margin-top: 5px;
	color: var(--neurology-muted);
	font-size: .77rem;
	line-height: 1.5;
}

.neurology-features-section {
	background: var(--neurology-pale);
}

.neurology-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 35px;
	margin-bottom: 33px;
}

.neurology-section-heading > div {
	max-width: 620px;
}

.neurology-section-heading > .neurology-section-copy {
	max-width: 370px;
	margin-bottom: 4px;
	font-size: .9rem;
}

.neurology-feature-card {
	height: 100%;
	padding: 26px;
	border: 1px solid rgba(49, 80, 102, .1);
	border-radius: 16px;
	background: #fff;
	transition: transform .2s ease, box-shadow .2s ease;
}

.neurology-feature-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 17px 38px rgba(42, 72, 91, .09);
}

.neurology-feature-icon {
	width: 48px;
	height: 48px;
	margin-bottom: 20px;
	border-radius: 14px;
	font-size: 1.25rem;
}

.neurology-tone-coral {
	background: #faede8;
	color: #c47b67;
}

.neurology-tone-green {
	background: #e8f3ed;
	color: #4d8c74;
}

.neurology-tone-amber {
	background: #f8f1e1;
	color: #a98a4b;
}

.neurology-feature-label {
	display: block;
	margin-bottom: 9px;
	color: #82909a;
	font-size: .67rem;
	font-weight: 800;
	letter-spacing: .12em;
}

.neurology-feature-card h3 {
	margin: 0 0 10px;
	font-size: 1.13rem;
	font-weight: 800;
}

.neurology-feature-card p {
	min-height: 75px;
	margin: 0 0 18px;
	color: var(--neurology-muted);
	font-size: .87rem;
	line-height: 1.7;
}

.neurology-feature-card > a {
	color: var(--neurology-blue);
	font-size: .82rem;
	font-weight: 700;
	text-decoration: none;
}

.neurology-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 16px;
}

.neurology-feature-tags span {
	padding: 6px 9px;
	border-radius: 99px;
	background: #f0f4f6;
	color: #71808b;
	font-size: .68rem;
	font-weight: 600;
}

.neurology-records-visual {
	position: relative;
	min-height: 420px;
	padding: 0 48px 38px 0;
}

.neurology-records-visual > img {
	width: 100%;
	height: 390px;
	border-radius: 24px 110px 24px 24px;
	object-fit: cover;
}

.neurology-records-note,
.neurology-records-stamp {
	position: absolute;
	display: flex;
	align-items: center;
	gap: 11px;
	border: 1px solid #edf1f3;
	background: #fff;
	box-shadow: 0 14px 35px rgba(39, 66, 84, .12);
}

.neurology-records-note {
	right: 0;
	bottom: 0;
	padding: 15px 18px;
	border-radius: 14px;
}

.neurology-records-note > i {
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	border-radius: 12px;
	background: #eaf1f6;
	color: var(--neurology-blue);
	font-size: 1.2rem;
}

.neurology-records-note strong,
.neurology-records-note small {
	display: block;
}

.neurology-records-note strong {
	color: var(--neurology-ink);
	font-size: .84rem;
}

.neurology-records-note small {
	margin-top: 4px;
	color: #7b8994;
	font-size: .72rem;
}

.neurology-records-stamp {
	top: 28px;
	left: -18px;
	padding: 10px 13px;
	border-radius: 10px;
	color: var(--neurology-ink);
	font-size: .76rem;
	font-weight: 700;
}

.neurology-records-stamp i {
	color: var(--neurology-teal);
}

.neurology-check-list {
	display: grid;
	gap: 12px;
	margin: 22px 0;
}

.neurology-check-list li {
	display: flex;
	gap: 10px;
	color: #4b5e6e;
	font-size: .9rem;
}

.neurology-check-list i {
	color: var(--neurology-teal);
	font-size: 1.1rem;
}

.neurology-disclaimer {
	padding: 13px 15px;
	border-left: 3px solid #83b3a9;
	border-radius: 0 9px 9px 0;
	background: #f0f6f4;
	color: #70817d;
	font-size: .78rem;
	line-height: 1.6;
}

.neurology-disclaimer i {
	margin-right: 5px;
	color: var(--neurology-teal);
}

.neurology-journey-section {
	background: #f5f8fa;
}

.neurology-journey-heading {
	max-width: 700px;
	margin: 0 auto 40px;
}

.neurology-journey-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 17px;
}

.neurology-journey-step {
	position: relative;
	min-height: 225px;
	padding: 25px 22px;
	border: 1px solid #e7edf1;
	border-radius: 16px;
	background: #fff;
}

.neurology-step-number {
	position: absolute;
	top: 18px;
	right: 20px;
	color: #c3d2dc;
	font-size: 1.35rem;
	font-weight: 800;
}

.neurology-step-icon {
	display: grid;
	width: 45px;
	height: 45px;
	margin-bottom: 23px;
	place-items: center;
	border-radius: 13px;
	background: #eaf1f6;
	color: var(--neurology-blue);
	font-size: 1.15rem;
}

.neurology-journey-step h3 {
	margin: 0 0 8px;
	font-size: 1rem;
	font-weight: 800;
}

.neurology-journey-step p {
	margin: 0;
	color: var(--neurology-muted);
	font-size: .83rem;
	line-height: 1.65;
}

.neurology-faq-section {
	background: #fff;
}

.neurology-faq-list {
	border-top: 1px solid #e7edf1;
}

.neurology-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #e7edf1;
}

.neurology-faq-item summary {
	position: relative;
	padding-right: 34px;
	color: var(--neurology-ink);
	font-size: .94rem;
	font-weight: 750;
	cursor: pointer;
	list-style: none;
}

.neurology-faq-item summary::-webkit-details-marker {
	display: none;
}

.neurology-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--neurology-blue);
	content: "+";
	font-size: 1.3rem;
	line-height: 1;
}

.neurology-faq-item[open] summary::after {
	content: "−";
}

.neurology-faq-item p {
	margin: 12px 30px 0 0;
	color: var(--neurology-muted);
	font-size: .86rem;
	line-height: 1.7;
}

.neurology-cta-section {
	padding: 10px 0 85px;
}

.neurology-cta-panel {
	padding: 44px 48px;
	border-radius: 22px;
	background: linear-gradient(120deg, #426e91, #4c8e91);
	box-shadow: 0 22px 50px rgba(60, 112, 132, .18);
}

.neurology-cta-kicker {
	margin: 0 0 10px;
	color: #d1e5e9;
	font-size: .74rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.neurology-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3.2vw, 2.7rem);
	font-weight: 800;
	letter-spacing: -.04em;
}

.neurology-cta-panel p:not(.neurology-cta-kicker) {
	max-width: 640px;
	margin: 0;
	color: rgba(255, 255, 255, .8);
	font-size: .94rem;
	line-height: 1.7;
}

.neurology-button-light {
	background: #fff;
	color: var(--neurology-blue);
}

.neurology-button-light:hover,
.neurology-button-light:focus {
	transform: translateY(-2px);
	background: #edf5f7;
	color: #355d7c;
}

.neurology-cta-link {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 7px;
	margin-top: 15px;
	color: #e1eff0;
	font-size: .82rem;
	font-weight: 700;
	text-decoration: none;
}

.neurology-cta-link:hover,
.neurology-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.neurology-hero {
		padding: 65px 0 72px;
	}

	.neurology-hero-visual {
		width: min(100%, 560px);
		margin: 0 auto;
	}

	.neurology-workflow-strip .container {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.neurology-workflow-items {
		justify-content: flex-start;
	}

	.neurology-overview-section,
	.neurology-features-section,
	.neurology-records-section,
	.neurology-journey-section,
	.neurology-faq-section {
		padding: 68px 0;
	}

	.neurology-focus-row {
		gap: 12px;
	}

	.neurology-focus-card {
		align-items: flex-start;
		flex-direction: column;
		padding: 17px;
	}

	.neurology-journey-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767.98px) {
	.neurology-hero {
		padding: 54px 0 58px;
	}

	.neurology-hero h1 {
		font-size: clamp(2.4rem, 9.5vw, 3.6rem);
	}

	.neurology-hero-visual {
		min-height: 470px;
	}

	.neurology-hero-photo {
		right: 8%;
		width: min(78%, 360px);
		height: 365px;
	}

	.neurology-orbit-one {
		right: 2%;
		width: 370px;
		height: 370px;
	}

	.neurology-orbit-two {
		right: 7%;
		width: 315px;
		height: 315px;
	}

	.neurology-record-card {
		right: 1%;
		bottom: 5px;
	}

	.neurology-tag-reports {
		left: 0;
	}

	.neurology-tag-followup {
		right: 0;
	}

	.neurology-overview-section,
	.neurology-features-section,
	.neurology-records-section,
	.neurology-journey-section,
	.neurology-faq-section {
		padding: 68px 0;
	}

	.neurology-focus-row {
		grid-template-columns: 1fr;
		margin-top: 30px;
	}

	.neurology-focus-card {
		align-items: center;
		flex-direction: row;
	}

	.neurology-section-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.neurology-feature-card p {
		min-height: 0;
	}

	.neurology-records-visual {
		min-height: 360px;
		padding-right: 25px;
	}

	.neurology-records-visual > img {
		height: 330px;
		border-top-right-radius: 80px;
	}

	.neurology-records-stamp {
		left: 0;
	}

	.neurology-cta-panel {
		padding: 34px 28px;
	}
}

@media (max-width: 575.98px) {
	.neurology-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.neurology-button-primary {
		width: 100%;
		padding: 13px 12px;
		font-size: .86rem;
	}

	.neurology-hero-visual {
		min-height: 410px;
		margin-left: -8px;
		margin-right: -8px;
	}

	.neurology-hero-photo {
		top: 26px;
		right: 8%;
		width: 76%;
		height: 320px;
		border-width: 7px;
	}

	.neurology-orbit-one {
		top: 3px;
		right: 0;
		width: min(84vw, 340px);
		height: min(84vw, 340px);
	}

	.neurology-orbit-two {
		top: 28px;
		right: 5%;
		width: min(72vw, 290px);
		height: min(72vw, 290px);
	}

	.neurology-record-card {
		right: 0;
		bottom: 0;
		width: min(88%, 325px);
		padding: 13px;
	}

	.neurology-floating-tag {
		padding: 9px 10px;
		font-size: .68rem;
	}

	.neurology-tag-reports {
		top: 78px;
	}

	.neurology-tag-followup {
		top: 200px;
	}

	.neurology-spark-one {
		left: 24px;
	}

	.neurology-workflow-items {
		gap: 12px 17px;
	}

	.neurology-workflow-items span {
		font-size: .75rem;
	}

	.neurology-overview-section,
	.neurology-features-section,
	.neurology-records-section,
	.neurology-journey-section,
	.neurology-faq-section {
		padding: 55px 0;
	}

	.neurology-journey-grid {
		gap: 12px;
	}

	.neurology-journey-step {
		min-height: 205px;
		padding: 20px 16px;
	}

	.neurology-cta-section {
		padding: 0 0 55px;
	}

	.neurology-cta-panel {
		padding: 28px 22px;
		border-radius: 16px;
	}

	.neurology-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.neurology-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.neurology-feature-card,
	.neurology-button-primary,
	.neurology-button-light {
		transition: none;
	}
}

.nephro-page {
	--nephro-ink: #2c3e4c;
	--nephro-muted: #71828d;
	--nephro-teal: #43867e;
	--nephro-blue: #567f98;
	--nephro-coral: #d38a76;
	--nephro-pale: #f2f7f5;
	overflow: hidden;
	color: var(--nephro-muted);
	background: #fff;
}

.nephro-page h1,
.nephro-page h2,
.nephro-page h3 {
	color: var(--nephro-ink);
}

.nephro-hero {
	position: relative;
	padding: 82px 0 88px;
	background: linear-gradient(120deg, #f0f6f3 0%, #f8faf9 54%, #eaf4f2 100%);
}

.nephro-hero::before {
	position: absolute;
	top: -180px;
	right: -135px;
	width: 490px;
	height: 490px;
	border: 1px solid rgba(67, 134, 126, .13);
	border-radius: 50%;
	content: "";
}

.nephro-eyebrow,
.nephro-kicker {
	margin: 0 0 15px;
	color: var(--nephro-teal);
	font-size: .77rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.nephro-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid rgba(67, 134, 126, .17);
	border-radius: 99px;
	background: rgba(255, 255, 255, .76);
	letter-spacing: .07em;
}

.nephro-hero h1 {
	max-width: 660px;
	margin: 13px 0 20px;
	font-size: clamp(2.6rem, 4.8vw, 4.3rem);
	font-weight: 800;
	letter-spacing: -.055em;
	line-height: 1.05;
}

.nephro-hero h1 span {
	color: var(--nephro-teal);
}

.nephro-hero-copy,
.nephro-section-copy {
	color: var(--nephro-muted);
	font-size: 1.02rem;
	line-height: 1.8;
}

.nephro-hero-copy {
	max-width: 590px;
	margin-bottom: 22px;
}

.nephro-hero-points,
.nephro-check-list {
	padding: 0;
	list-style: none;
}

.nephro-hero-points {
	display: grid;
	gap: 10px;
	margin: 0 0 26px;
}

.nephro-hero-points li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: var(--nephro-ink);
	font-size: .93rem;
	font-weight: 600;
}

.nephro-hero-points i {
	margin-top: 3px;
	color: var(--nephro-teal);
}

.nephro-hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}

.nephro-button-primary,
.nephro-button-light {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 13px 20px;
	border: 0;
	border-radius: 9px;
	background: var(--nephro-teal);
	color: #fff;
	font-weight: 700;
	transition: transform .2s ease, box-shadow .2s ease;
}

.nephro-button-primary:hover,
.nephro-button-primary:focus {
	transform: translateY(-2px);
	background: #367269;
	color: #fff;
	box-shadow: 0 12px 25px rgba(54, 114, 105, .2);
}

.nephro-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--nephro-teal);
	font-weight: 700;
	text-decoration: none;
}

.nephro-text-link:hover,
.nephro-text-link:focus {
	color: #285c55;
}

.nephro-hero-note {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-top: 23px;
	color: #708079;
	font-size: .85rem;
	font-weight: 600;
}

.nephro-hero-note i {
	color: var(--nephro-blue);
	font-size: 1.1rem;
}

.nephro-hero-visual {
	position: relative;
	min-height: 510px;
}

.nephro-hero-orbit {
	position: absolute;
	border: 1px solid rgba(67, 134, 126, .18);
	border-radius: 50%;
}

.nephro-orbit-one {
	top: 8px;
	right: 8px;
	width: 430px;
	height: 430px;
}

.nephro-orbit-two {
	top: 43px;
	right: 43px;
	width: 360px;
	height: 360px;
	border-style: dashed;
}

.nephro-hero-photo {
	position: absolute;
	top: 30px;
	right: 43px;
	width: min(78%, 390px);
	height: 410px;
	overflow: hidden;
	border: 10px solid rgba(255, 255, 255, .85);
	border-radius: 48% 48% 25px 25px;
	box-shadow: 0 28px 65px rgba(38, 75, 65, .17);
}

.nephro-hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.nephro-photo-overlay {
	position: absolute;
	inset: 40% 0 0;
	background: linear-gradient(transparent, rgba(25, 53, 48, .66));
}

.nephro-photo-caption {
	position: absolute;
	right: 20px;
	bottom: 20px;
	left: 20px;
	display: flex;
	align-items: center;
	gap: 12px;
	color: #fff;
}

.nephro-photo-caption > i {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: 13px;
	background: rgba(255, 255, 255, .2);
	font-size: 1.25rem;
}

.nephro-photo-caption strong,
.nephro-photo-caption small {
	display: block;
}

.nephro-photo-caption strong {
	font-size: .98rem;
}

.nephro-photo-caption small {
	margin-top: 3px;
	color: rgba(255, 255, 255, .78);
	font-size: .75rem;
}

.nephro-record-card {
	position: absolute;
	right: 0;
	bottom: 20px;
	z-index: 2;
	width: min(77%, 345px);
	padding: 18px;
	border: 1px solid rgba(48, 88, 77, .1);
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 20px 55px rgba(37, 70, 60, .16);
}

.nephro-record-header,
.nephro-record-row,
.nephro-record-footer {
	display: flex;
	align-items: center;
}

.nephro-record-header {
	justify-content: space-between;
	padding-bottom: 12px;
	color: var(--nephro-ink);
	font-size: .84rem;
	font-weight: 800;
}

.nephro-record-header i {
	color: #91a29b;
}

.nephro-record-row {
	gap: 10px;
	padding: 12px 0;
	border-top: 1px solid #edf1ee;
}

.nephro-record-row > i:first-child {
	display: grid;
	width: 37px;
	height: 37px;
	flex: 0 0 37px;
	place-items: center;
	border-radius: 11px;
	background: #eaf3ef;
	color: var(--nephro-teal);
}

.nephro-record-row > span {
	min-width: 0;
	flex: 1;
}

.nephro-record-row strong,
.nephro-record-row small {
	display: block;
}

.nephro-record-row strong {
	color: var(--nephro-ink);
	font-size: .76rem;
}

.nephro-record-row small {
	margin-top: 3px;
	color: #82918a;
	font-size: .69rem;
}

.nephro-record-check {
	color: var(--nephro-teal);
}

.nephro-record-arrow {
	color: var(--nephro-coral);
}

.nephro-record-footer {
	gap: 8px;
	padding-top: 11px;
	border-top: 1px solid #edf1ee;
	color: #74837b;
	font-size: .68rem;
}

.nephro-record-footer span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--nephro-teal);
}

.nephro-floating-tag {
	position: absolute;
	z-index: 3;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(39, 76, 65, .08);
	border-radius: 11px;
	background: #fff;
	color: var(--nephro-ink);
	font-size: .78rem;
	font-weight: 700;
	box-shadow: 0 12px 30px rgba(36, 70, 59, .11);
}

.nephro-floating-tag i {
	color: var(--nephro-teal);
}

.nephro-tag-dialysis {
	top: 112px;
	left: -3px;
}

.nephro-tag-followup {
	top: 245px;
	right: -12px;
}

.nephro-spark {
	position: absolute;
	color: var(--nephro-coral);
	font-size: 1.65rem;
}

.nephro-spark-one {
	top: 16px;
	left: 45px;
}

.nephro-workflow-strip {
	padding: 24px 0;
	border-bottom: 1px solid #edf1ee;
	background: #fff;
}

.nephro-workflow-strip .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
}

.nephro-workflow-strip p {
	margin: 0;
	color: var(--nephro-ink);
	font-size: .9rem;
	font-weight: 800;
}

.nephro-workflow-items {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 14px 26px;
}

.nephro-workflow-items span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #6f8078;
	font-size: .82rem;
	font-weight: 600;
}

.nephro-workflow-items i {
	color: var(--nephro-teal);
	font-size: 1rem;
}

.nephro-overview-section,
.nephro-features-section,
.nephro-records-section,
.nephro-journey-section,
.nephro-faq-section {
	padding: 86px 0;
}

.nephro-section-title {
	margin: 0;
	font-size: clamp(1.9rem, 3.3vw, 2.8rem);
	font-weight: 800;
	letter-spacing: -.04em;
	line-height: 1.18;
}

.nephro-section-copy {
	margin: 0 0 16px;
	font-size: .96rem;
}

.nephro-overview-detail {
	font-size: .88rem;
}

.nephro-focus-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	margin-top: 42px;
}

.nephro-focus-card {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 20px;
	border: 1px solid #e9efeb;
	border-radius: 15px;
	background: #fbfcfb;
}

.nephro-focus-icon,
.nephro-feature-icon {
	display: grid;
	flex: 0 0 auto;
	place-items: center;
}

.nephro-focus-icon {
	width: 48px;
	height: 48px;
	border-radius: 14px;
	font-size: 1.25rem;
}

.nephro-focus-blue,
.nephro-tone-blue {
	background: #eaf1f5;
	color: #527f97;
}

.nephro-focus-coral,
.nephro-tone-coral {
	background: #faede8;
	color: #c47b65;
}

.nephro-focus-green,
.nephro-tone-green {
	background: #e8f3ed;
	color: #4d8b74;
}

.nephro-focus-card strong,
.nephro-focus-card small {
	display: block;
}

.nephro-focus-card strong {
	color: var(--nephro-ink);
	font-size: .88rem;
}

.nephro-focus-card small {
	margin-top: 5px;
	color: var(--nephro-muted);
	font-size: .77rem;
	line-height: 1.5;
}

.nephro-features-section {
	background: var(--nephro-pale);
}

.nephro-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 35px;
	margin-bottom: 33px;
}

.nephro-section-heading > div {
	max-width: 620px;
}

.nephro-section-heading > .nephro-section-copy {
	max-width: 370px;
	margin-bottom: 4px;
	font-size: .9rem;
}

.nephro-feature-card {
	height: 100%;
	padding: 26px;
	border: 1px solid rgba(48, 83, 72, .1);
	border-radius: 16px;
	background: #fff;
	transition: transform .2s ease, box-shadow .2s ease;
}

.nephro-feature-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 17px 38px rgba(43, 76, 64, .09);
}

.nephro-feature-icon {
	width: 48px;
	height: 48px;
	margin-bottom: 20px;
	border-radius: 14px;
	font-size: 1.25rem;
}

.nephro-tone-purple {
	background: #f0ecf6;
	color: #8170a0;
}

.nephro-tone-amber {
	background: #f8f1df;
	color: #aa8949;
}

.nephro-tone-teal {
	background: #e7f3f0;
	color: #43877e;
}

.nephro-feature-label {
	display: block;
	margin-bottom: 9px;
	color: #81918a;
	font-size: .67rem;
	font-weight: 800;
	letter-spacing: .12em;
}

.nephro-feature-card h3 {
	margin: 0 0 10px;
	font-size: 1.13rem;
	font-weight: 800;
}

.nephro-feature-card p {
	min-height: 75px;
	margin: 0 0 18px;
	color: var(--nephro-muted);
	font-size: .87rem;
	line-height: 1.7;
}

.nephro-feature-card > a {
	color: var(--nephro-teal);
	font-size: .82rem;
	font-weight: 700;
	text-decoration: none;
}

.nephro-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 16px;
}

.nephro-feature-tags span {
	padding: 6px 9px;
	border-radius: 99px;
	background: #f0f5f2;
	color: #708078;
	font-size: .68rem;
	font-weight: 600;
}

.nephro-records-visual {
	position: relative;
	min-height: 420px;
	padding: 0 48px 38px 0;
}

.nephro-records-visual > img {
	width: 100%;
	height: 390px;
	border-radius: 24px 110px 24px 24px;
	object-fit: cover;
}

.nephro-records-note,
.nephro-records-stamp {
	position: absolute;
	display: flex;
	align-items: center;
	gap: 11px;
	border: 1px solid #edf1ee;
	background: #fff;
	box-shadow: 0 14px 35px rgba(39, 70, 59, .12);
}

.nephro-records-note {
	right: 0;
	bottom: 0;
	padding: 15px 18px;
	border-radius: 14px;
}

.nephro-records-note > i {
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	border-radius: 12px;
	background: #eaf3ef;
	color: var(--nephro-teal);
	font-size: 1.2rem;
}

.nephro-records-note strong,
.nephro-records-note small {
	display: block;
}

.nephro-records-note strong {
	color: var(--nephro-ink);
	font-size: .84rem;
}

.nephro-records-note small {
	margin-top: 4px;
	color: #7a8982;
	font-size: .72rem;
}

.nephro-records-stamp {
	top: 28px;
	left: -18px;
	padding: 10px 13px;
	border-radius: 10px;
	color: var(--nephro-ink);
	font-size: .76rem;
	font-weight: 700;
}

.nephro-records-stamp i {
	color: var(--nephro-teal);
}

.nephro-check-list {
	display: grid;
	gap: 12px;
	margin: 22px 0;
}

.nephro-check-list li {
	display: flex;
	gap: 10px;
	color: #4b6056;
	font-size: .9rem;
}

.nephro-check-list i {
	color: var(--nephro-teal);
	font-size: 1.1rem;
}

.nephro-disclaimer {
	padding: 13px 15px;
	border-left: 3px solid #83b7a9;
	border-radius: 0 9px 9px 0;
	background: #f0f7f3;
	color: #70817a;
	font-size: .78rem;
	line-height: 1.6;
}

.nephro-disclaimer i {
	margin-right: 5px;
	color: var(--nephro-teal);
}

.nephro-journey-section {
	background: #f5f8f6;
}

.nephro-journey-heading {
	max-width: 700px;
	margin: 0 auto 40px;
}

.nephro-journey-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 17px;
}

.nephro-journey-step {
	position: relative;
	min-height: 225px;
	padding: 25px 22px;
	border: 1px solid #e7eee9;
	border-radius: 16px;
	background: #fff;
}

.nephro-step-number {
	position: absolute;
	top: 18px;
	right: 20px;
	color: #c3d6cc;
	font-size: 1.35rem;
	font-weight: 800;
}

.nephro-step-icon {
	display: grid;
	width: 45px;
	height: 45px;
	margin-bottom: 23px;
	place-items: center;
	border-radius: 13px;
	background: #eaf3ef;
	color: var(--nephro-teal);
	font-size: 1.15rem;
}

.nephro-journey-step h3 {
	margin: 0 0 8px;
	font-size: 1rem;
	font-weight: 800;
}

.nephro-journey-step p {
	margin: 0;
	color: var(--nephro-muted);
	font-size: .83rem;
	line-height: 1.65;
}

.nephro-faq-section {
	background: #fff;
}

.nephro-faq-list {
	border-top: 1px solid #e7eee9;
}

.nephro-faq-item {
	padding: 19px 0;
	border-bottom: 1px solid #e7eee9;
}

.nephro-faq-item summary {
	position: relative;
	padding-right: 34px;
	color: var(--nephro-ink);
	font-size: .94rem;
	font-weight: 750;
	cursor: pointer;
	list-style: none;
}

.nephro-faq-item summary::-webkit-details-marker {
	display: none;
}

.nephro-faq-item summary::after {
	position: absolute;
	top: 0;
	right: 2px;
	color: var(--nephro-teal);
	content: "+";
	font-size: 1.3rem;
	line-height: 1;
}

.nephro-faq-item[open] summary::after {
	content: "−";
}

.nephro-faq-item p {
	margin: 12px 30px 0 0;
	color: var(--nephro-muted);
	font-size: .86rem;
	line-height: 1.7;
}

.nephro-cta-section {
	padding: 10px 0 85px;
}

.nephro-cta-panel {
	padding: 44px 48px;
	border-radius: 22px;
	background: linear-gradient(120deg, #34756c, #4a9180);
	box-shadow: 0 22px 50px rgba(47, 112, 96, .18);
}

.nephro-cta-kicker {
	margin: 0 0 10px;
	color: #cde6d9;
	font-size: .74rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.nephro-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(1.8rem, 3.2vw, 2.7rem);
	font-weight: 800;
	letter-spacing: -.04em;
}

.nephro-cta-panel p:not(.nephro-cta-kicker) {
	max-width: 640px;
	margin: 0;
	color: rgba(255, 255, 255, .8);
	font-size: .94rem;
	line-height: 1.7;
}

.nephro-button-light {
	background: #fff;
	color: var(--nephro-teal);
}

.nephro-button-light:hover,
.nephro-button-light:focus {
	transform: translateY(-2px);
	background: #edf6f1;
	color: #285c55;
}

.nephro-cta-link {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 7px;
	margin-top: 15px;
	color: #e1f0e8;
	font-size: .82rem;
	font-weight: 700;
	text-decoration: none;
}

.nephro-cta-link:hover,
.nephro-cta-link:focus {
	color: #fff;
}

@media (max-width: 991.98px) {
	.nephro-hero {
		padding: 65px 0 72px;
	}

	.nephro-hero-visual {
		width: min(100%, 560px);
		margin: 0 auto;
	}

	.nephro-workflow-strip .container {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.nephro-workflow-items {
		justify-content: flex-start;
	}

	.nephro-overview-section,
	.nephro-features-section,
	.nephro-records-section,
	.nephro-journey-section,
	.nephro-faq-section {
		padding: 68px 0;
	}

	.nephro-focus-row {
		gap: 12px;
	}

	.nephro-focus-card {
		align-items: flex-start;
		flex-direction: column;
		padding: 17px;
	}

	.nephro-journey-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767.98px) {
	.nephro-hero {
		padding: 54px 0 58px;
	}

	.nephro-hero h1 {
		font-size: clamp(2.4rem, 9.5vw, 3.6rem);
	}

	.nephro-hero-visual {
		min-height: 470px;
	}

	.nephro-hero-photo {
		right: 8%;
		width: min(78%, 360px);
		height: 365px;
	}

	.nephro-orbit-one {
		right: 2%;
		width: 370px;
		height: 370px;
	}

	.nephro-orbit-two {
		right: 7%;
		width: 315px;
		height: 315px;
	}

	.nephro-record-card {
		right: 1%;
		bottom: 5px;
	}

	.nephro-tag-dialysis {
		left: 0;
	}

	.nephro-tag-followup {
		right: 0;
	}

	.nephro-overview-section,
	.nephro-features-section,
	.nephro-records-section,
	.nephro-journey-section,
	.nephro-faq-section {
		padding: 68px 0;
	}

	.nephro-focus-row {
		grid-template-columns: 1fr;
		margin-top: 30px;
	}

	.nephro-focus-card {
		align-items: center;
		flex-direction: row;
	}

	.nephro-section-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.nephro-feature-card p {
		min-height: 0;
	}

	.nephro-records-visual {
		min-height: 360px;
		padding-right: 25px;
	}

	.nephro-records-visual > img {
		height: 330px;
		border-top-right-radius: 80px;
	}

	.nephro-records-stamp {
		left: 0;
	}

	.nephro-cta-panel {
		padding: 34px 28px;
	}
}

@media (max-width: 575.98px) {
	.nephro-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.nephro-button-primary {
		width: 100%;
		padding: 13px 12px;
		font-size: .86rem;
	}

	.nephro-hero-visual {
		min-height: 410px;
		margin-left: -8px;
		margin-right: -8px;
	}

	.nephro-hero-photo {
		top: 26px;
		right: 8%;
		width: 76%;
		height: 320px;
		border-width: 7px;
	}

	.nephro-orbit-one {
		top: 3px;
		right: 0;
		width: min(84vw, 340px);
		height: min(84vw, 340px);
	}

	.nephro-orbit-two {
		top: 28px;
		right: 5%;
		width: min(72vw, 290px);
		height: min(72vw, 290px);
	}

	.nephro-record-card {
		right: 0;
		bottom: 0;
		width: min(88%, 325px);
		padding: 13px;
	}

	.nephro-floating-tag {
		padding: 9px 10px;
		font-size: .68rem;
	}

	.nephro-tag-dialysis {
		top: 78px;
	}

	.nephro-tag-followup {
		top: 200px;
	}

	.nephro-spark-one {
		left: 24px;
	}

	.nephro-workflow-items {
		gap: 12px 17px;
	}

	.nephro-workflow-items span {
		font-size: .75rem;
	}

	.nephro-overview-section,
	.nephro-features-section,
	.nephro-records-section,
	.nephro-journey-section,
	.nephro-faq-section {
		padding: 55px 0;
	}

	.nephro-journey-grid {
		gap: 12px;
	}

	.nephro-journey-step {
		min-height: 205px;
		padding: 20px 16px;
	}

	.nephro-cta-section {
		padding: 0 0 55px;
	}

	.nephro-cta-panel {
		padding: 28px 22px;
		border-radius: 16px;
	}

	.nephro-cta-panel .text-lg-end {
		text-align: left !important;
	}

	.nephro-cta-link {
		justify-content: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.nephro-feature-card,
	.nephro-button-primary,
	.nephro-button-light {
		transition: none;
	}
}

.terms-page {
	--terms-ink: #273b4d;
	--terms-muted: #6d7d8a;
	--terms-primary: #347e75;
	--terms-soft: #eff6f3;
	color: var(--terms-muted);
	background: #fff;
}

.terms-hero {
	padding: 22px 0 56px;
	background: linear-gradient(120deg, #f0f6f3, #f7faf9 58%, #edf5f2);
}

.terms-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin: 0;
	padding: 0;
	color: #7a8985;
	font-size: .82rem;
	list-style: none;
}

.terms-breadcrumb li + li::before {
	margin-right: 9px;
	color: #a7b4ae;
	content: "/";
}

.terms-breadcrumb a {
	color: var(--terms-primary);
	text-decoration: none;
}

.terms-hero-copy {
	max-width: 780px;
	margin: 54px auto 0;
	text-align: center;
}

.terms-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 13px;
	border: 1px solid rgba(52, 126, 117, .18);
	border-radius: 99px;
	background: rgba(255, 255, 255, .7);
	color: var(--terms-primary);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.terms-hero h1 {
	margin: 18px 0 12px;
	color: var(--terms-ink);
	font-size: clamp(2.4rem, 5vw, 3.75rem);
	font-weight: 800;
	letter-spacing: -.05em;
}

.terms-hero-copy > p {
	max-width: 690px;
	margin: 0 auto;
	color: #71818a;
	font-size: 1.05rem;
	line-height: 1.75;
}

.terms-updated {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 19px;
	color: #75857f;
	font-size: .84rem;
	font-weight: 600;
}

.terms-updated i {
	color: var(--terms-primary);
}

.terms-content-section {
	padding: 68px 0 88px;
}

.terms-toc {
	position: sticky;
	top: 28px;
	display: grid;
	gap: 3px;
	padding: 24px 20px;
	border: 1px solid #e7eeea;
	border-radius: 16px;
	background: #fbfcfb;
}

.terms-toc h2 {
	margin: 0 0 10px;
	padding: 0 8px 12px;
	border-bottom: 1px solid #e9efeb;
	color: var(--terms-ink);
	font-size: 1rem;
	font-weight: 800;
}

.terms-toc a {
	padding: 7px 8px;
	border-radius: 7px;
	color: #687983;
	font-size: .8rem;
	line-height: 1.4;
	text-decoration: none;
	transition: color .18s ease, background .18s ease;
}

.terms-toc a:hover,
.terms-toc a:focus {
	background: var(--terms-soft);
	color: var(--terms-primary);
}

.terms-article {
	min-width: 0;
}

.terms-intro {
	margin-bottom: 34px;
	padding: 23px 25px;
	border-left: 4px solid #78aa97;
	border-radius: 0 12px 12px 0;
	background: #f4f8f5;
}

.terms-intro p {
	margin: 0 0 12px;
	color: #566b67;
	font-size: .95rem;
	line-height: 1.8;
}

.terms-intro p:last-child {
	margin-bottom: 0;
}

.terms-section {
	scroll-margin-top: 24px;
	padding: 28px 0;
	border-bottom: 1px solid #e9eeeb;
}

.terms-section h2 {
	display: flex;
	align-items: flex-start;
	gap: 13px;
	margin: 0 0 15px;
	color: var(--terms-ink);
	font-size: 1.3rem;
	font-weight: 800;
	letter-spacing: -.02em;
	line-height: 1.4;
}

.terms-section h2 > span {
	display: inline-grid;
	width: 34px;
	height: 34px;
	flex: 0 0 34px;
	place-items: center;
	border-radius: 10px;
	background: #edf5f1;
	color: var(--terms-primary);
	font-size: .74rem;
	letter-spacing: 0;
}

.terms-section p,
.terms-section li {
	color: #687985;
	font-size: .92rem;
	line-height: 1.82;
}

.terms-section p {
	margin: 0 0 13px;
}

.terms-section p:last-child {
	margin-bottom: 0;
}

.terms-section ul {
	display: grid;
	gap: 8px;
	margin: 12px 0 16px;
	padding-left: 22px;
}

.terms-section li {
	padding-left: 3px;
}

.terms-section a {
	color: var(--terms-primary);
	font-weight: 650;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.terms-section a:hover,
.terms-section a:focus {
	color: #245e56;
}

.terms-contact-section {
	border-bottom: 0;
}

.terms-contact-card {
	display: grid;
	gap: 0;
	margin: 20px 0;
	padding: 7px 20px;
	border: 1px solid #e7eeea;
	border-radius: 14px;
	background: #fbfcfb;
}

.terms-contact-card > div {
	display: flex;
	align-items: flex-start;
	gap: 13px;
	padding: 14px 0;
	border-bottom: 1px solid #edf1ee;
}

.terms-contact-card > div:last-child {
	border-bottom: 0;
}

.terms-contact-card > div > i {
	display: grid;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	place-items: center;
	border-radius: 11px;
	background: #edf5f1;
	color: var(--terms-primary);
	font-size: 1rem;
}

.terms-contact-card strong,
.terms-contact-card small {
	display: block;
}

.terms-contact-card strong {
	margin: 1px 0 4px;
	color: var(--terms-ink);
	font-size: .86rem;
}

.terms-contact-card small {
	color: #72818a;
	font-size: .84rem;
	line-height: 1.6;
}

.terms-contact-card small a {
	color: var(--terms-primary);
}

.terms-legal-note {
	margin-top: 22px !important;
	padding: 14px 16px;
	border: 1px solid #e9eeeb;
	border-radius: 10px;
	background: #fafbfa;
	color: #7a858c !important;
	font-size: .82rem !important;
}

@media (max-width: 991.98px) {
	.terms-toc {
		position: static;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 4px 8px;
	}

	.terms-toc h2 {
		grid-column: 1 / -1;
	}
}

@media (max-width: 575.98px) {
	.terms-hero {
		padding-bottom: 42px;
	}

	.terms-hero-copy {
		margin-top: 38px;
		text-align: left;
	}

	.terms-hero h1 {
		font-size: 2.35rem;
	}

	.terms-content-section {
		padding: 42px 0 58px;
	}

	.terms-toc {
		grid-template-columns: 1fr;
		padding: 19px 15px;
	}

	.terms-toc h2 {
		grid-column: auto;
	}

	.terms-intro {
		padding: 19px 17px;
	}

	.terms-section {
		padding: 23px 0;
	}

	.terms-section h2 {
		gap: 10px;
		font-size: 1.14rem;
	}

	.terms-section h2 > span {
		width: 31px;
		height: 31px;
		flex-basis: 31px;
	}

	.terms-section p,
	.terms-section li {
		font-size: .88rem;
	}

	.terms-contact-card {
		padding: 5px 14px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.terms-toc a {
		transition: none;
	}
}

.privacy-page {
	--privacy-ink: #273b4d;
	--privacy-muted: #6d7d8a;
	--privacy-primary: #347e75;
	--privacy-soft: #eff6f3;
	color: var(--privacy-muted);
	background: #fff;
}

.privacy-hero {
	padding: 22px 0 56px;
	background: linear-gradient(120deg, #f0f6f3, #f7faf9 58%, #edf5f2);
}

.privacy-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin: 0;
	padding: 0;
	color: #7a8985;
	font-size: .82rem;
	list-style: none;
}

.privacy-breadcrumb li + li::before {
	margin-right: 9px;
	color: #a7b4ae;
	content: "/";
}

.privacy-breadcrumb a {
	color: var(--privacy-primary);
	text-decoration: none;
}

.privacy-hero-copy {
	max-width: 780px;
	margin: 54px auto 0;
	text-align: center;
}

.privacy-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 13px;
	border: 1px solid rgba(52, 126, 117, .18);
	border-radius: 99px;
	background: rgba(255, 255, 255, .7);
	color: var(--privacy-primary);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.privacy-hero h1 {
	margin: 18px 0 12px;
	color: var(--privacy-ink);
	font-size: clamp(2.4rem, 5vw, 3.75rem);
	font-weight: 800;
	letter-spacing: -.05em;
}

.privacy-hero-copy > p {
	max-width: 690px;
	margin: 0 auto;
	color: #71818a;
	font-size: 1.05rem;
	line-height: 1.75;
}

.privacy-updated {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 19px;
	color: #75857f;
	font-size: .84rem;
	font-weight: 600;
}

.privacy-updated i {
	color: var(--privacy-primary);
}

.privacy-content-section {
	padding: 68px 0 88px;
}

.privacy-toc {
	position: sticky;
	top: 28px;
	display: grid;
	gap: 3px;
	padding: 24px 20px;
	border: 1px solid #e7eeea;
	border-radius: 16px;
	background: #fbfcfb;
}

.privacy-toc h2 {
	margin: 0 0 10px;
	padding: 0 8px 12px;
	border-bottom: 1px solid #e9efeb;
	color: var(--privacy-ink);
	font-size: 1rem;
	font-weight: 800;
}

.privacy-toc a {
	padding: 7px 8px;
	border-radius: 7px;
	color: #687983;
	font-size: .8rem;
	line-height: 1.4;
	text-decoration: none;
	transition: color .18s ease, background .18s ease;
}

.privacy-toc a:hover,
.privacy-toc a:focus {
	background: var(--privacy-soft);
	color: var(--privacy-primary);
}

.privacy-article {
	min-width: 0;
}

.privacy-intro {
	margin-bottom: 34px;
	padding: 23px 25px;
	border-left: 4px solid #78aa97;
	border-radius: 0 12px 12px 0;
	background: #f4f8f5;
}

.privacy-intro p {
	margin: 0 0 12px;
	color: #566b67;
	font-size: .95rem;
	line-height: 1.8;
}

.privacy-intro p:last-child {
	margin-bottom: 0;
}

.privacy-section {
	scroll-margin-top: 24px;
	padding: 28px 0;
	border-bottom: 1px solid #e9eeeb;
}

.privacy-section h2 {
	display: flex;
	align-items: flex-start;
	gap: 13px;
	margin: 0 0 15px;
	color: var(--privacy-ink);
	font-size: 1.3rem;
	font-weight: 800;
	letter-spacing: -.02em;
	line-height: 1.4;
}

.privacy-section h2 > span {
	display: inline-grid;
	width: 34px;
	height: 34px;
	flex: 0 0 34px;
	place-items: center;
	border-radius: 10px;
	background: #edf5f1;
	color: var(--privacy-primary);
	font-size: .74rem;
	letter-spacing: 0;
}

.privacy-section p,
.privacy-section li {
	color: #687985;
	font-size: .92rem;
	line-height: 1.82;
}

.privacy-section p {
	margin: 0 0 13px;
}

.privacy-section p:last-child {
	margin-bottom: 0;
}

.privacy-section ul {
	display: grid;
	gap: 8px;
	margin: 12px 0 16px;
	padding-left: 22px;
}

.privacy-section li {
	padding-left: 3px;
}

.privacy-section a {
	color: var(--privacy-primary);
	font-weight: 650;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.privacy-section a:hover,
.privacy-section a:focus {
	color: #245e56;
}

.privacy-contact-section {
	border-bottom: 0;
}

.privacy-contact-card {
	display: grid;
	gap: 0;
	margin: 20px 0;
	padding: 7px 20px;
	border: 1px solid #e7eeea;
	border-radius: 14px;
	background: #fbfcfb;
}

.privacy-contact-card > div {
	display: flex;
	align-items: flex-start;
	gap: 13px;
	padding: 14px 0;
	border-bottom: 1px solid #edf1ee;
}

.privacy-contact-card > div:last-child {
	border-bottom: 0;
}

.privacy-contact-card > div > i {
	display: grid;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	place-items: center;
	border-radius: 11px;
	background: #edf5f1;
	color: var(--privacy-primary);
	font-size: 1rem;
}

.privacy-contact-card strong,
.privacy-contact-card small {
	display: block;
}

.privacy-contact-card strong {
	margin: 1px 0 4px;
	color: var(--privacy-ink);
	font-size: .86rem;
}

.privacy-contact-card small {
	color: #72818a;
	font-size: .84rem;
	line-height: 1.6;
}

.privacy-contact-card small a {
	color: var(--privacy-primary);
}

.privacy-legal-note {
	margin-top: 22px !important;
	padding: 14px 16px;
	border: 1px solid #e9eeeb;
	border-radius: 10px;
	background: #fafbfa;
	color: #7a858c !important;
	font-size: .82rem !important;
}

@media (max-width: 991.98px) {
	.privacy-toc {
		position: static;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 4px 8px;
	}

	.privacy-toc h2 {
		grid-column: 1 / -1;
	}
}

@media (max-width: 575.98px) {
	.privacy-hero {
		padding-bottom: 42px;
	}

	.privacy-hero-copy {
		margin-top: 38px;
		text-align: left;
	}

	.privacy-hero h1 {
		font-size: 2.35rem;
	}

	.privacy-content-section {
		padding: 42px 0 58px;
	}

	.privacy-toc {
		grid-template-columns: 1fr;
		padding: 19px 15px;
	}

	.privacy-toc h2 {
		grid-column: auto;
	}

	.privacy-intro {
		padding: 19px 17px;
	}

	.privacy-section {
		padding: 23px 0;
	}

	.privacy-section h2 {
		gap: 10px;
		font-size: 1.14rem;
	}

	.privacy-section h2 > span {
		width: 31px;
		height: 31px;
		flex-basis: 31px;
	}

	.privacy-section p,
	.privacy-section li {
		font-size: .88rem;
	}

	.privacy-contact-card {
		padding: 5px 14px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.privacy-toc a {
		transition: none;
	}
}

.demo-page {
	--demo-ink: #27394a;
	--demo-muted: #71808c;
	--demo-teal: #347f74;
	--demo-blue: #4e8294;
	--demo-coral: #d88e78;
	--demo-pale: #f0f6f3;
	overflow: hidden;
	color: var(--demo-muted);
	background: #fff;
}

.demo-hero {
	position: relative;
	padding: 22px 0 80px;
	background: linear-gradient(120deg, #eff6f2 0%, #f8faf9 55%, #e9f3f1 100%);
}

.demo-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin: 0;
	padding: 0;
	color: #7b8984;
	font-size: .82rem;
	list-style: none;
}

.demo-breadcrumb li + li::before {
	margin-right: 9px;
	color: #a8b5ae;
	content: "/";
}

.demo-breadcrumb a {
	color: var(--demo-teal);
	text-decoration: none;
}

.demo-hero-row {
	padding-top: 48px;
}

.demo-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 9px 13px;
	border: 1px solid rgba(52, 127, 116, .17);
	border-radius: 99px;
	background: rgba(255, 255, 255, .76);
	color: var(--demo-teal);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.demo-hero h1 {
	max-width: 670px;
	margin: 21px 0 17px;
	color: var(--demo-ink);
	font-size: clamp(2.6rem, 5vw, 4.25rem);
	font-weight: 800;
	letter-spacing: -.055em;
	line-height: 1.06;
}

.demo-hero-copy {
	max-width: 610px;
	margin: 0;
	color: #71808a;
	font-size: 1.04rem;
	line-height: 1.8;
}

.demo-benefits {
	display: grid;
	gap: 17px;
	margin-top: 28px;
}

.demo-benefits > div {
	display: flex;
	align-items: center;
	gap: 13px;
}

.demo-benefit-icon {
	display: grid;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	place-items: center;
	border: 1px solid #e0ebe5;
	border-radius: 13px;
	background: rgba(255, 255, 255, .82);
	color: var(--demo-teal);
	font-size: 1.15rem;
}

.demo-benefits strong,
.demo-benefits small {
	display: block;
}

.demo-benefits strong {
	color: var(--demo-ink);
	font-size: .9rem;
	font-weight: 750;
}

.demo-benefits small {
	margin-top: 3px;
	color: #78878c;
	font-size: .8rem;
}

.demo-hero-note {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	max-width: 550px;
	margin: 24px 0 0;
	color: #78857f;
	font-size: .78rem;
	line-height: 1.65;
}

.demo-hero-note i {
	margin-top: 2px;
	color: var(--demo-blue);
}

.demo-hero-visual {
	position: relative;
	min-height: 500px;
}

.demo-visual-orbit {
	position: absolute;
	border: 1px solid rgba(52, 127, 116, .18);
	border-radius: 50%;
}

.demo-visual-orbit-one {
	top: 20px;
	right: 10px;
	width: 430px;
	height: 430px;
}

.demo-visual-orbit-two {
	top: 53px;
	right: 43px;
	width: 365px;
	height: 365px;
	border-style: dashed;
}

.demo-hero-image {
	position: absolute;
	top: 42px;
	right: 45px;
	width: min(78%, 390px);
	height: 405px;
	overflow: hidden;
	border: 10px solid rgba(255, 255, 255, .86);
	border-radius: 46% 46% 26px 26px;
	box-shadow: 0 28px 65px rgba(41, 77, 65, .17);
}

.demo-hero-image > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.demo-image-overlay {
	position: absolute;
	inset: 40% 0 0;
	background: linear-gradient(transparent, rgba(28, 55, 49, .67));
}

.demo-image-caption {
	position: absolute;
	right: 20px;
	bottom: 20px;
	left: 20px;
	display: flex;
	align-items: center;
	gap: 12px;
	color: #fff;
}

.demo-image-caption > i {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: 13px;
	background: rgba(255, 255, 255, .2);
	font-size: 1.2rem;
}

.demo-image-caption strong,
.demo-image-caption small {
	display: block;
}

.demo-image-caption strong {
	font-size: .92rem;
}

.demo-image-caption small {
	margin-top: 4px;
	color: rgba(255, 255, 255, .8);
	font-size: .73rem;
}

.demo-floating-card {
	position: absolute;
	right: 0;
	bottom: 25px;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 12px;
	width: min(80%, 345px);
	padding: 17px;
	border: 1px solid rgba(48, 91, 77, .1);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 18px 48px rgba(41, 72, 61, .16);
}

.demo-floating-icon {
	display: grid;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	place-items: center;
	border-radius: 13px;
	background: #eaf3ee;
	color: var(--demo-teal);
	font-size: 1.2rem;
}

.demo-floating-card strong,
.demo-floating-card small {
	display: block;
}

.demo-floating-card strong {
	color: var(--demo-ink);
	font-size: .85rem;
}

.demo-floating-card small {
	margin-top: 4px;
	color: #7b8984;
	font-size: .73rem;
}

.demo-visual-spark {
	position: absolute;
	color: var(--demo-coral);
	font-size: 1.65rem;
}

.demo-visual-spark-one {
	top: 20px;
	left: 30px;
}

.demo-visual-spark-two {
	right: 28px;
	bottom: 120px;
	font-size: 1.15rem;
}

.demo-request-section {
	padding: 88px 0;
}

.demo-kicker {
	margin: 0 0 13px;
	color: var(--demo-teal);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.demo-request-section h2,
.demo-next-panel h2 {
	margin: 0;
	color: var(--demo-ink);
	font-size: clamp(1.9rem, 3.1vw, 2.65rem);
	font-weight: 800;
	letter-spacing: -.045em;
	line-height: 1.17;
}

.demo-section-copy {
	margin: 16px 0 24px;
	color: var(--demo-muted);
	font-size: .94rem;
	line-height: 1.8;
}

.demo-contact-card {
	display: flex;
	align-items: flex-start;
	gap: 13px;
	margin-top: 14px;
	padding: 15px 16px;
	border: 1px solid #e9efeb;
	border-radius: 13px;
	background: #fbfcfb;
}

.demo-contact-icon {
	display: grid;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	place-items: center;
	border-radius: 12px;
	background: #edf5f1;
	color: var(--demo-teal);
}

.demo-contact-card strong {
	display: block;
	margin: 1px 0 4px;
	color: var(--demo-ink);
	font-size: .85rem;
}

.demo-contact-card p {
	margin: 0;
	color: #73828c;
	font-size: .82rem;
	line-height: 1.65;
}

.demo-contact-card a {
	color: var(--demo-teal);
	font-weight: 700;
	text-decoration: none;
}

.demo-form-card {
	padding: 34px;
	border: 1px solid #e7eeea;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 20px 60px rgba(41, 69, 57, .08);
}

.demo-form-heading {
	margin-bottom: 24px;
	padding-bottom: 19px;
	border-bottom: 1px solid #edf1ee;
}

.demo-form-step {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-bottom: 10px;
	color: var(--demo-teal);
	font-size: .67rem;
	font-weight: 800;
	letter-spacing: .13em;
}

.demo-form-heading h2 {
	margin: 0 0 6px;
	color: var(--demo-ink);
	font-size: 1.5rem;
	font-weight: 800;
}

.demo-form-heading p {
	margin: 0;
	color: #7b898f;
	font-size: .8rem;
}

.demo-form-heading p span,
.demo-form label > span:not(.demo-optional) {
	color: #bc645c;
}

.demo-form label {
	display: block;
	margin: 0 0 7px;
	color: #354c5b;
	font-size: .81rem;
	font-weight: 700;
}

.demo-form label .demo-optional {
	color: #89949a;
	font-size: .75rem;
	font-weight: 500;
}

.demo-form input,
.demo-form select,
.demo-form textarea {
	display: block;
	width: 100%;
	min-height: 47px;
	padding: 11px 13px;
	border: 1px solid #dfe7e3;
	border-radius: 9px;
	outline: none;
	background-color: #fff;
	color: #304653;
	font: inherit;
	font-size: .84rem;
	transition: border-color .18s ease, box-shadow .18s ease;
}

.demo-form textarea {
	min-height: 118px;
	resize: vertical;
}

.demo-form input::placeholder,
.demo-form textarea::placeholder {
	color: #a0aaa9;
}

.demo-form input:focus,
.demo-form select:focus,
.demo-form textarea:focus {
	border-color: #6ba69a;
	box-shadow: 0 0 0 3px rgba(52, 127, 116, .12);
}

.demo-form .demo-field-invalid,
.demo-form .demo-field-invalid:focus {
	border-color: #dc3545;
	box-shadow: 0 0 0 3px rgba(220, 53, 69, .12);
}

.demo-field-error {
	display: none;
	margin-top: 5px;
	color: #c62828;
	font-size: .75rem;
}

.demo-field-error.is-visible {
	display: block;
}

.demo-form-notice {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	margin-top: 19px;
	padding: 12px 13px;
	border-radius: 9px;
	background: #f1f7f3;
	color: #667a70;
	font-size: .76rem;
	line-height: 1.6;
}

.demo-form-notice i {
	margin-top: 2px;
	color: var(--demo-teal);
}

.demo-submit-button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	margin-top: 16px;
	padding: 13px 18px;
	border: 0;
	border-radius: 9px;
	background: var(--demo-teal);
	color: #fff;
	font-size: .92rem;
	font-weight: 750;
	transition: background .18s ease, transform .18s ease, box-shadow .18s ease;
}

.demo-submit-button:hover,
.demo-submit-button:focus {
	transform: translateY(-1px);
	background: #2b6d64;
	color: #fff;
	box-shadow: 0 10px 24px rgba(52, 127, 116, .19);
}

.demo-submit-button:disabled {
	cursor: wait;
	opacity: .7;
	transform: none;
}

.demo-form-privacy {
	margin: 13px 0 0;
	color: #808d91;
	font-size: .72rem;
	line-height: 1.65;
	text-align: center;
}

.demo-form-privacy a,
.demo-noscript a {
	color: var(--demo-teal);
	font-weight: 700;
}

.demo-form-status {
	margin-top: 10px;
	color: #356f64;
	font-size: .82rem;
	line-height: 1.6;
}

.demo-form-status.is-error {
	color: #b42332;
}

.demo-form-status.is-success {
	color: #176b3a;
}

.demo-noscript {
	margin: 16px 0 0;
	font-size: .85rem;
}

.demo-next-section {
	padding: 0 0 88px;
}

.demo-next-panel {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(280px, .9fr);
	gap: 42px;
	align-items: center;
	padding: 42px;
	border: 1px solid #e8eeea;
	border-radius: 20px;
	background: linear-gradient(120deg, #f5f8f5, #f5f8fa);
}

.demo-next-panel .demo-kicker {
	margin-bottom: 10px;
}

.demo-next-panel h2 {
	max-width: 600px;
	font-size: clamp(1.65rem, 2.8vw, 2.25rem);
}

.demo-next-panel > div:first-child > p:last-child {
	max-width: 610px;
	margin: 13px 0 0;
	color: var(--demo-muted);
	font-size: .9rem;
	line-height: 1.7;
}

.demo-next-steps {
	display: grid;
	gap: 12px;
}

.demo-next-steps > div {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	border: 1px solid #e5ece8;
	border-radius: 11px;
	background: rgba(255, 255, 255, .83);
}

.demo-next-steps span {
	display: grid;
	width: 31px;
	height: 31px;
	flex: 0 0 31px;
	place-items: center;
	border-radius: 9px;
	background: #eaf3ee;
	color: var(--demo-teal);
	font-size: .72rem;
	font-weight: 800;
}

.demo-next-steps strong {
	color: #405664;
	font-size: .8rem;
}

@media (max-width: 991.98px) {
	.demo-hero {
		padding-bottom: 65px;
	}

	.demo-hero-visual {
		width: min(100%, 560px);
		margin: 0 auto;
	}

	.demo-next-panel {
		grid-template-columns: 1fr;
		gap: 25px;
	}
}

@media (max-width: 767.98px) {
	.demo-hero-row {
		padding-top: 35px;
	}

	.demo-hero h1 {
		font-size: clamp(2.45rem, 9.5vw, 3.55rem);
	}

	.demo-hero-visual {
		min-height: 455px;
	}

	.demo-visual-orbit-one {
		right: 2%;
		width: 370px;
		height: 370px;
	}

	.demo-visual-orbit-two {
		right: 7%;
		width: 315px;
		height: 315px;
	}

	.demo-hero-image {
		right: 8%;
		width: min(78%, 360px);
		height: 365px;
	}

	.demo-floating-card {
		right: 1%;
		bottom: 5px;
	}

	.demo-request-section {
		padding: 65px 0;
	}

	.demo-form-card {
		padding: 27px;
	}

	.demo-next-panel {
		padding: 30px;
	}
}

@media (max-width: 575.98px) {
	.demo-hero {
		padding-bottom: 50px;
	}

	.demo-hero-visual {
		min-height: 400px;
		margin: 0 -8px;
	}

	.demo-hero-image {
		top: 28px;
		right: 8%;
		width: 76%;
		height: 315px;
		border-width: 7px;
	}

	.demo-visual-orbit-one {
		top: 5px;
		right: 0;
		width: min(84vw, 340px);
		height: min(84vw, 340px);
	}

	.demo-visual-orbit-two {
		top: 30px;
		right: 5%;
		width: min(72vw, 290px);
		height: min(72vw, 290px);
	}

	.demo-floating-card {
		right: 0;
		bottom: 0;
		width: min(88%, 340px);
		padding: 14px;
	}

	.demo-visual-spark-one {
		left: 20px;
	}

	.demo-visual-spark-two {
		right: 12px;
	}

	.demo-request-section {
		padding: 54px 0;
	}

	.demo-form-card {
		padding: 22px 18px;
		border-radius: 15px;
	}

	.demo-form-heading h2 {
		font-size: 1.3rem;
	}

	.demo-next-section {
		padding-bottom: 55px;
	}

	.demo-next-panel {
		gap: 22px;
		padding: 24px 20px;
		border-radius: 15px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.demo-form input,
	.demo-form select,
	.demo-form textarea,
	.demo-submit-button {
		transition: none;
	}
}

.about-page {
	--about-blue: #175cdd;
	--about-heading: #112344;
	--about-copy: #5d6d83;
	color: var(--about-copy);
}

body:has(.about-page) #header .branding {
	background: #fff;
}

.about-page h1,
.about-page h2,
.about-page h3 {
	color: var(--about-heading);
	font-family: var(--heading-font);
}

.about-hero {
	position: relative;
	overflow: hidden;
	padding: 98px 0 0;
	background:
		radial-gradient(ellipse at 50% 0%, rgba(46, 111, 211, .28), transparent 42%),
		linear-gradient(145deg, #0d1d38 0%, #102a50 58%, #0d2342 100%);
}

.about-hero::before {
	position: absolute;
	top: -250px;
	left: calc(50% - 260px);
	width: 520px;
	height: 520px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 50%;
	content: "";
	pointer-events: none;
}

.about-hero-content {
	position: relative;
	z-index: 1;
	max-width: 880px;
	margin: 0 auto;
	text-align: center;
}

.about-eyebrow,
.about-section-kicker,
.about-cta-kicker {
	margin: 0 0 16px;
	color: var(--about-blue);
	font-size: .76rem;
	font-weight: 700;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.about-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 8px 14px;
	border: 1px solid rgba(180, 207, 255, .24);
	border-radius: 30px;
	background: rgba(255, 255, 255, .06);
	color: #c4d9ff;
	letter-spacing: .06em;
}

.about-eyebrow i {
	font-size: 1rem;
}

.about-hero h1 {
	max-width: 1020px;
	margin: 17px auto 18px;
	color: #fff;
	font-size: clamp(2.8rem, 5.6vw, 4.65rem);
	font-weight: 750;
	letter-spacing: -.055em;
	line-height: 1.04;
}

.about-hero h1 span {
	color: #8bb9ff;
}

.about-hero-copy {
	max-width: 700px;
	margin: 0 auto;
	color: #c1cde0;
	font-size: 1rem;
	line-height: 1.8;
}

.about-hero-actions {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 29px;
}

.about-button-primary,
.about-button-light {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 50px;
	padding: 0 21px;
	border: 0;
	border-radius: 10px;
	background: linear-gradient(105deg, #175cdd, #347fe6);
	color: #fff;
	font-size: .91rem;
	font-weight: 600;
	box-shadow: 0 9px 22px rgba(23, 92, 221, .2);
	transition: transform .2s ease, box-shadow .2s ease;
}

.about-button-primary:hover,
.about-button-primary:focus {
	transform: translateY(-2px);
	background: linear-gradient(105deg, #124ebf, #286fce);
	color: #fff;
	box-shadow: 0 12px 25px rgba(23, 92, 221, .26);
}

.about-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--about-heading);
	font-size: .9rem;
	font-weight: 600;
}

.about-text-link:hover {
	color: var(--about-blue);
}

.about-hero .about-text-link {
	color: #fff;
}

.about-hero .about-text-link:hover {
	color: #a9cbff;
}

.about-hero-note {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-top: 28px;
	color: #64758c;
	font-size: .84rem;
	justify-content: center;
}

.about-hero-note i {
	color: var(--about-blue);
	font-size: 1.1rem;
}

.about-hero-visual {
	position: relative;
	max-width: 1000px;
	margin: 48px auto 0;
	padding: 0 0 46px;
}

.about-hero-image {
	display: block;
	width: 100%;
	height: 330px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 22px 22px 0 0;
	object-fit: cover;
	object-position: center 45%;
	box-shadow: 0 24px 70px rgba(0, 0, 0, .24);
}

.about-visual-caption {
	position: absolute;
	bottom: 67px;
	left: 20px;
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 66px;
	padding: 11px 14px;
	border: 1px solid rgba(255, 255, 255, .75);
	border-radius: 14px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 12px 28px rgba(7, 20, 42, .18);
}

.about-caption-icon,
.about-floating-card > span {
	display: grid;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	place-items: center;
	border-radius: 12px;
	background: #eaf1ff;
	color: var(--about-blue);
	font-size: 1.2rem;
}

.about-visual-caption strong,
.about-visual-caption small,
.about-floating-card strong,
.about-floating-card small {
	display: block;
}

.about-visual-caption strong,
.about-floating-card strong {
	color: var(--about-heading);
	font-size: .85rem;
	font-weight: 700;
}

.about-visual-caption small,
.about-floating-card small {
	margin-top: 3px;
	color: #7b8798;
	font-size: .72rem;
}

.about-caption-arrow {
	margin-left: auto;
	color: #91a0b6;
}

.about-floating-card {
	position: absolute;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 11px 14px;
	border: 1px solid #e5ebf5;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 15px 35px rgba(17, 35, 68, .11);
}

.about-floating-card > span {
	width: 36px;
	height: 36px;
	flex-basis: 36px;
	font-size: 1rem;
}

.about-floating-card-top {
	top: 20px;
	right: -18px;
}

.about-trust-strip {
	padding: 24px 0;
	border-top: 1px solid #e9eef6;
	border-bottom: 1px solid #e9eef6;
	background: #fff;
}

.about-trust-strip > .container > p {
	margin: 0 0 17px;
	color: #718096;
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-align: center;
	text-transform: uppercase;
}

.about-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 13px 34px;
}

.about-trust-items span {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	color: #31435c;
	font-size: .86rem;
	font-weight: 600;
}

.about-trust-items i {
	color: var(--about-blue);
	font-size: 1.05rem;
}

.about-story-section,
.about-principles-section {
	padding: 92px 0;
	background: #fff;
}

.about-section-kicker {
	margin-bottom: 13px;
}

.about-section-title {
	margin: 0;
	font-size: clamp(1.9rem, 3.1vw, 2.65rem);
	font-weight: 700;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.about-section-copy {
	margin: 0 0 17px;
	font-size: .98rem;
	line-height: 1.85;
}

.about-story-section .about-text-link {
	margin-top: 5px;
}

.about-platform-section,
.about-journey-section {
	padding: 86px 0 92px;
	background: #f5f8fe;
}

.about-section-heading {
	max-width: 720px;
	margin: 0 auto 38px;
	text-align: center;
}

.about-section-heading .about-section-copy {
	margin: 14px auto 0;
}

.about-platform-card {
	height: 100%;
	min-height: 253px;
	padding: 26px;
	border: 1px solid #e1e9f5;
	border-radius: 16px;
	background: #fff;
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.about-platform-card:hover {
	transform: translateY(-5px);
	border-color: #b8cdf6;
	box-shadow: 0 17px 38px rgba(28, 48, 95, .09);
}

.about-icon-box,
.about-journey-icon {
	display: grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: 14px;
	background: #eaf1ff;
	color: var(--about-blue);
	font-size: 1.35rem;
}

.about-platform-card h3,
.about-journey-card h3,
.about-principle h3 {
	margin: 17px 0 9px;
	font-size: 1.08rem;
	font-weight: 700;
	letter-spacing: -.015em;
}

.about-platform-card p,
.about-journey-card p,
.about-principle p {
	margin: 0;
	font-size: .87rem;
	line-height: 1.75;
}

.about-platform-card > a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 19px;
	color: var(--about-blue);
	font-size: .82rem;
	font-weight: 700;
}

.about-platform-card > a:hover {
	gap: 12px;
}

.about-platform-card-accent {
	background: linear-gradient(145deg, #fff 0%, #f0f5ff 100%);
}

.about-journey-section {
	background: #fff;
}

.about-journey-card {
	position: relative;
	height: 100%;
	min-height: 218px;
	padding: 25px 22px;
	border: 1px solid #e4eaf3;
	border-radius: 16px;
	background: #fff;
}

.about-step-number {
	position: absolute;
	top: 21px;
	right: 22px;
	color: #aab7ca;
	font-size: .76rem;
	font-weight: 700;
	letter-spacing: .08em;
}

.about-journey-icon {
	width: 43px;
	height: 43px;
	border-radius: 12px;
	font-size: 1.2rem;
}

.about-principles-section {
	background: #f5f8fe;
}

.about-principles-section .about-section-copy {
	margin: 17px 0 22px;
}

.about-principles-list {
	padding: 12px 28px;
	border: 1px solid #e3eaf4;
	border-radius: 19px;
	background: #fff;
}

.about-principle {
	display: flex;
	align-items: flex-start;
	gap: 15px;
	padding: 19px 0;
	border-bottom: 1px solid #edf1f7;
}

.about-principle:last-child {
	border-bottom: 0;
}

.about-principle > span {
	display: grid;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	place-items: center;
	border-radius: 12px;
	background: #eaf1ff;
	color: var(--about-blue);
	font-size: 1.15rem;
}

.about-principle h3 {
	margin: 1px 0 5px;
	font-size: .95rem;
}

.about-principle p {
	font-size: .82rem;
}

.about-cta-section {
	padding: 0 0 90px;
	background: #f5f8fe;
}

.about-cta-panel {
	overflow: hidden;
	padding: 44px 48px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 87% 16%, rgba(255, 255, 255, .14), transparent 29%),
		linear-gradient(115deg, #123f8b 0%, #175cdd 62%, #3282e5 100%);
	color: rgba(255, 255, 255, .78);
}

.about-cta-kicker {
	margin-bottom: 12px;
	color: #c9dcff;
}

.about-cta-panel h2 {
	max-width: 660px;
	margin: 0 0 12px;
	color: #fff;
	font-size: clamp(1.75rem, 3vw, 2.55rem);
	font-weight: 700;
	letter-spacing: -.04em;
	line-height: 1.2;
}

.about-cta-panel p:not(.about-cta-kicker) {
	max-width: 620px;
	margin: 0;
	font-size: .92rem;
	line-height: 1.7;
}

.about-button-light {
	background: #fff;
	color: #175cdd;
	box-shadow: none;
}

.about-button-light:hover,
.about-button-light:focus {
	transform: translateY(-2px);
	background: #edf4ff;
	color: #124ebf;
}

.about-cta-phone {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-top: 14px;
	color: rgba(255, 255, 255, .84);
	font-size: .82rem;
	font-weight: 600;
}

.about-cta-phone:hover {
	color: #fff;
}

@media (max-width: 991.98px) {
	.about-hero {
		padding: 82px 0 0;
	}

	.about-hero-visual {
		margin: 38px auto 0;
	}

	.about-story-section,
	.about-principles-section,
	.about-platform-section,
	.about-journey-section {
		padding: 68px 0;
	}

	.about-cta-section {
		padding-bottom: 68px;
	}
}

@media (max-width: 575.98px) {
	.about-hero {
		padding: 66px 0 0;
	}

	.about-hero h1 {
		font-size: 2.6rem;
	}

	.about-hero-copy {
		font-size: .95rem;
	}

	.about-hero-actions {
		align-items: center;
		flex-direction: column;
		gap: 17px;
	}

	.about-hero-visual {
		margin-top: 32px;
		padding: 0 0 38px;
	}

	.about-hero-image {
		height: 230px;
		border-radius: 15px 15px 0 0;
	}

	.about-visual-caption {
		right: 8px;
		bottom: 49px;
		left: 8px;
		min-height: 55px;
		padding: 8px 10px;
	}

	.about-floating-card {
		padding: 8px 10px;
	}

	.about-floating-card-top {
		top: 10px;
		right: -5px;
	}

	.about-trust-items {
		align-items: flex-start;
		justify-content: flex-start;
		gap: 13px 19px;
	}

	.about-trust-items span {
		width: calc(50% - 10px);
		font-size: .78rem;
	}

	.about-story-section,
	.about-principles-section,
	.about-platform-section,
	.about-journey-section {
		padding: 56px 0;
	}

	.about-platform-card {
		min-height: 0;
		padding: 23px;
	}

	.about-journey-card {
		min-height: 195px;
	}

	.about-principles-list {
		padding: 7px 18px;
	}

	.about-cta-section {
		padding-bottom: 55px;
	}

	.about-cta-panel {
		padding: 31px 24px;
		border-radius: 17px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.about-button-primary,
	.about-platform-card,
	.about-platform-card > a {
		transition: none;
	}
}