:root {
	--hp-navy: #102a43;
	--hp-navy-soft: #183b56;
	--hp-teal: #1f8f8a;
	--hp-teal-dark: #15736f;
	--hp-gold: #c9a24d;
	--hp-bg: #f6f8fb;
	--hp-card: #ffffff;
	--hp-text: #233242;
	--hp-muted: #657789;
	--hp-border: #dfe8f1;
	--hp-soft-teal: #e8f7f6;
	--hp-soft-gold: #fbf5e6;
	--hp-radius: 22px;
	--hp-shadow: 0 16px 44px rgba(16, 42, 67, 0.08);
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body.health-private-theme {
	margin: 0;
	color: var(--hp-text);
	background: #ffffff;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	font-size: 16px;
	line-height: 1.6;
}

body.health-private-theme a {
	color: inherit;
	text-decoration: none;
}

body.health-private-theme img {
	max-width: 100%;
	height: auto;
}

.hp-container {
	width: min(1180px, calc(100% - 36px));
	margin: 0 auto;
}

.hp-skip-link {
	position: absolute;
	left: -999px;
	top: 12px;
	z-index: 9999;
	background: #ffffff;
	color: var(--hp-navy);
	padding: 10px 14px;
	border-radius: 8px;
}

.hp-skip-link:focus {
	left: 12px;
}

/* Header */

.hp-site-header {
	position: sticky;
	top: 0;
	z-index: 100;
	background: rgba(255, 255, 255, 0.94);
	backdrop-filter: blur(16px);
	border-bottom: 1px solid rgba(223, 232, 241, 0.9);
}

.hp-topbar {
	background: var(--hp-navy);
	color: rgba(255, 255, 255, 0.88);
	font-size: 13px;
}

.hp-topbar-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 9px 0;
}

.hp-topbar p {
	margin: 0;
}

.hp-topbar a {
	color: #ffffff;
	font-weight: 700;
}

.hp-header-inner {
	min-height: 82px;
	display: flex;
	align-items: center;
	gap: 24px;
}

.hp-brand {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	flex: 0 0 auto;
}

.hp-brand-mark {
	width: 46px;
	height: 46px;
	border-radius: 16px;
	background: linear-gradient(135deg, var(--hp-teal), var(--hp-navy));
	color: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 900;
	letter-spacing: -0.04em;
	box-shadow: 0 10px 24px rgba(31, 143, 138, 0.22);
}

.hp-brand-text {
	display: grid;
	line-height: 1.1;
}

.hp-brand-text strong {
	color: var(--hp-navy);
	font-size: 19px;
	letter-spacing: -0.03em;
}

.hp-brand-text small {
	color: var(--hp-muted);
	font-size: 12px;
	font-weight: 600;
	margin-top: 4px;
}

.hp-primary-nav {
	margin-left: auto;
}

.hp-menu {
	list-style: none;
	display: flex;
	align-items: center;
	gap: 4px;
	padding: 0;
	margin: 0;
}

.hp-menu li {
	position: relative;
}

.hp-menu a {
	display: inline-flex;
	padding: 12px 13px;
	border-radius: 999px;
	color: var(--hp-navy);
	font-size: 14px;
	font-weight: 700;
	transition: 0.2s ease;
}

.hp-menu a:hover,
.hp-menu .current-menu-item > a {
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
}

.hp-header-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 11px 18px;
	border-radius: 999px;
	background: var(--hp-teal);
	color: #ffffff !important;
	font-weight: 800;
	font-size: 14px;
	box-shadow: 0 12px 28px rgba(31, 143, 138, 0.22);
	transition: 0.2s ease;
}

.hp-header-cta:hover {
	background: var(--hp-teal-dark);
	transform: translateY(-1px);
}

.hp-menu-toggle {
	display: none;
	width: 44px;
	height: 44px;
	border: 1px solid var(--hp-border);
	border-radius: 14px;
	background: #ffffff;
	padding: 10px;
	cursor: pointer;
}

.hp-menu-toggle span {
	display: block;
	width: 100%;
	height: 2px;
	background: var(--hp-navy);
	margin: 5px 0;
	border-radius: 999px;
}

/* General */

.hp-main {
	overflow: hidden;
}

.hp-section {
	padding: 78px 0;
}

.hp-soft-section {
	background: var(--hp-bg);
}

.hp-center {
	text-align: center;
}

.hp-kicker {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	border-radius: 999px;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	font-size: 14px;
	font-weight: 800;
	margin-bottom: 18px;
}

.hp-kicker::before {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--hp-teal);
}

.hp-section-heading {
	max-width: 820px;
	margin: 0 auto 36px;
}

.hp-section-heading h2,
.hp-split h2,
.hp-referral-banner h2,
.hp-final-cta h2 {
	margin: 0 0 14px;
	font-size: clamp(28px, 3vw, 42px);
	line-height: 1.12;
	letter-spacing: -0.04em;
	color: var(--hp-navy);
	font-weight: 900;
}

.hp-section-heading p,
.hp-large-text {
	margin: 0;
	color: var(--hp-muted);
	font-size: 17px;
	line-height: 1.75;
}

/* Buttons */

.hp-button-row {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 28px;
}

.hp-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 14px 22px;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 900;
	border: 1px solid transparent;
	transition: 0.25s ease;
}

.hp-button-primary {
	background: var(--hp-teal);
	color: #ffffff !important;
	box-shadow: 0 14px 30px rgba(31, 143, 138, 0.22);
}

.hp-button-primary:hover {
	background: var(--hp-teal-dark);
	transform: translateY(-2px);
}

.hp-button-secondary {
	background: #ffffff;
	color: var(--hp-navy) !important;
	border-color: var(--hp-border);
}

.hp-button-secondary:hover {
	border-color: var(--hp-teal);
	color: var(--hp-teal-dark) !important;
	transform: translateY(-2px);
}

.hp-button-ghost {
	background: transparent;
	color: var(--hp-navy) !important;
	border-color: rgba(16, 42, 67, 0.18);
}

.hp-button-ghost:hover {
	background: #ffffff;
	transform: translateY(-2px);
}

.hp-button-light {
	background: rgba(255, 255, 255, 0.11);
	border-color: rgba(255, 255, 255, 0.30);
	color: #ffffff !important;
}

.hp-button-light:hover {
	background: #ffffff;
	color: var(--hp-navy) !important;
	transform: translateY(-2px);
}

/* Hero */

.hp-hero {
	position: relative;
	padding: 88px 0 74px;
	background:
		radial-gradient(circle at top right, rgba(31, 143, 138, 0.16), transparent 38%),
		linear-gradient(135deg, #f6fbfb 0%, #ffffff 45%, #f7f9fc 100%);
}

.hp-hero::after {
	content: "";
	position: absolute;
	right: -120px;
	top: -120px;
	width: 360px;
	height: 360px;
	border-radius: 50%;
	background: rgba(201, 162, 77, 0.14);
}

.hp-hero-grid {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: 1.08fr 0.92fr;
	gap: 48px;
	align-items: center;
}

.hp-hero-content {
	background: rgba(255, 255, 255, 0.86);
	border: 1px solid rgba(223, 232, 241, 0.9);
	border-radius: 30px;
	padding: 34px;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.10);
	backdrop-filter: blur(12px);
}

.hp-hero-content h1 {
	margin: 0 0 18px;
	font-size: clamp(34px, 4.4vw, 58px);
	line-height: 1.06;
	letter-spacing: -0.055em;
	color: var(--hp-navy);
	font-weight: 950;
}

.hp-hero-content p {
	margin: 0;
	max-width: 760px;
	color: var(--hp-muted);
	font-size: 18px;
	line-height: 1.75;
}

.hp-hero-stats {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
	margin-top: 28px;
}

.hp-hero-stats div {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 18px;
	padding: 18px;
}

.hp-hero-stats strong {
	display: block;
	color: var(--hp-navy);
	font-size: 24px;
	line-height: 1;
	margin-bottom: 8px;
}

.hp-hero-stats span {
	display: block;
	color: var(--hp-muted);
	font-size: 13px;
	line-height: 1.45;
}

.hp-hero-panel {
	min-height: 450px;
	border-radius: 30px;
	position: relative;
	overflow: hidden;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.13);
	background: #dde8ef;
}

.hp-hero-image {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(rgba(16, 42, 67, 0.22), rgba(16, 42, 67, 0.55)),
		url("https://images.unsplash.com/photo-1576091160550-2173dba999ef?auto=format&fit=crop&w=1200&q=80");
	background-size: cover;
	background-position: center;
}

.hp-hero-card {
	position: absolute;
	left: 22px;
	right: 22px;
	bottom: 22px;
	padding: 22px;
	border-radius: 22px;
	background: rgba(255, 255, 255, 0.94);
	box-shadow: 0 18px 44px rgba(16, 42, 67, 0.20);
}

.hp-hero-card strong {
	display: block;
	color: var(--hp-navy);
	font-size: 18px;
	margin-bottom: 8px;
}

.hp-hero-card span {
	display: block;
	color: var(--hp-muted);
	font-size: 14px;
	line-height: 1.6;
}

/* Cards */

.hp-card-grid {
	display: grid;
	gap: 22px;
}

.hp-card-grid-3 {
	grid-template-columns: repeat(3, 1fr);
}

.hp-card-grid-4 {
	grid-template-columns: repeat(4, 1fr);
}

.hp-service-card,
.hp-mini-card {
	background: var(--hp-card);
	border: 1px solid var(--hp-border);
	border-radius: var(--hp-radius);
	padding: 26px;
	box-shadow: 0 12px 34px rgba(16, 42, 67, 0.06);
	transition: 0.25s ease;
}

.hp-service-card:hover,
.hp-mini-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 44px rgba(16, 42, 67, 0.10);
	border-color: rgba(31, 143, 138, 0.35);
}

.hp-icon {
	width: 48px;
	height: 48px;
	border-radius: 16px;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 23px;
	margin-bottom: 18px;
}

.hp-service-card h3,
.hp-mini-card h3 {
	margin: 0 0 10px;
	color: var(--hp-navy);
	font-size: 20px;
	line-height: 1.25;
	font-weight: 900;
}

.hp-service-card p,
.hp-mini-card p {
	margin: 0;
	color: var(--hp-muted);
	font-size: 15px;
	line-height: 1.7;
}

.hp-service-card a {
	display: inline-flex;
	margin-top: 18px;
	color: var(--hp-teal-dark);
	font-weight: 900;
	font-size: 14px;
}

/* Pathways */

.hp-pathway-grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 14px;
}

.hp-pathway-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 20px;
	padding: 22px;
	text-align: center;
	box-shadow: 0 12px 28px rgba(16, 42, 67, 0.05);
}

.hp-pathway-card strong {
	display: block;
	color: var(--hp-navy);
	font-size: 16px;
	margin-bottom: 8px;
}

.hp-pathway-card span {
	display: block;
	color: var(--hp-muted);
	font-size: 14px;
	line-height: 1.55;
}

/* Split/Profile */

.hp-split {
	display: grid;
	grid-template-columns: 0.92fr 1.08fr;
	gap: 44px;
	align-items: center;
}

.hp-profile-panel {
	background: linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	color: #ffffff;
	border-radius: 30px;
	padding: 34px;
	position: relative;
	overflow: hidden;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.18);
}

.hp-profile-panel::after {
	content: "";
	position: absolute;
	width: 220px;
	height: 220px;
	border-radius: 50%;
	right: -70px;
	bottom: -90px;
	background: rgba(31, 143, 138, 0.28);
}

.hp-profile-panel h2 {
	position: relative;
	z-index: 2;
	color: #ffffff;
	margin: 0 0 10px;
	font-size: 30px;
	letter-spacing: -0.04em;
}

.hp-profile-panel p {
	position: relative;
	z-index: 2;
	color: rgba(255, 255, 255, 0.82);
	line-height: 1.75;
	margin: 0;
}

.hp-profile-list {
	position: relative;
	z-index: 2;
	display: grid;
	gap: 12px;
	margin-top: 22px;
}

.hp-profile-list div {
	padding: 14px 16px;
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.10);
	border: 1px solid rgba(255, 255, 255, 0.16);
	color: rgba(255, 255, 255, 0.90);
	font-size: 14px;
	line-height: 1.5;
}

.hp-check-list {
	display: grid;
	gap: 14px;
	margin-top: 24px;
}

.hp-check-item {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	padding: 16px;
	border-radius: 18px;
	background: #ffffff;
	border: 1px solid var(--hp-border);
}

.hp-check-item span {
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	border-radius: 50%;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 900;
	font-size: 13px;
}

.hp-check-item p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.6;
}

.hp-check-item strong {
	color: var(--hp-navy);
}

/* Referral */

.hp-referral-banner {
	background:
		radial-gradient(circle at top left, rgba(201, 162, 77, 0.20), transparent 32%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
	border: 1px solid var(--hp-border);
	border-radius: 30px;
	padding: 36px;
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 28px;
	align-items: center;
	box-shadow: 0 16px 46px rgba(16, 42, 67, 0.07);
}

.hp-referral-banner p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.7;
	max-width: 720px;
}

.hp-referral-banner .hp-button-row {
	margin-top: 0;
}

.hp-notice {
	background: #fff8e8;
	border: 1px solid #f0d99f;
	color: #6b5220;
	border-radius: 22px;
	padding: 22px;
	line-height: 1.7;
	margin-top: 28px;
}

.hp-notice strong {
	color: #513b10;
}

/* Final CTA */

.hp-final-cta {
	background:
		linear-gradient(rgba(16, 42, 67, 0.88), rgba(16, 42, 67, 0.88)),
		url("https://images.unsplash.com/photo-1559757148-5c350d0d3c56?auto=format&fit=crop&w=1400&q=80");
	background-size: cover;
	background-position: center;
	color: #ffffff;
	border-radius: 34px;
	padding: 54px;
	overflow: hidden;
}

.hp-final-cta h2 {
	color: #ffffff;
	max-width: 840px;
}

.hp-final-cta p {
	margin: 0;
	color: rgba(255, 255, 255, 0.82);
	font-size: 17px;
	line-height: 1.75;
	max-width: 780px;
}

/* Footer */

.hp-site-footer {
	background: var(--hp-navy);
	color: rgba(255, 255, 255, 0.82);
	padding: 48px 0 26px;
}

.hp-footer-emergency {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 22px;
	padding: 20px;
	line-height: 1.7;
	margin-bottom: 38px;
}

.hp-footer-emergency strong {
	color: #ffffff;
}

.hp-footer-grid {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr 1fr;
	gap: 34px;
}

.hp-footer-brand .hp-brand-text strong {
	color: #ffffff;
}

.hp-footer-brand .hp-brand-text small {
	color: rgba(255, 255, 255, 0.68);
}

.hp-footer-text {
	max-width: 420px;
	color: rgba(255, 255, 255, 0.72);
	line-height: 1.75;
	margin: 18px 0 0;
}

.hp-site-footer h3 {
	margin: 0 0 14px;
	color: #ffffff;
	font-size: 16px;
}

.hp-site-footer ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	gap: 10px;
}

.hp-site-footer a {
	color: rgba(255, 255, 255, 0.76);
	transition: 0.2s ease;
}

.hp-site-footer a:hover {
	color: #ffffff;
}

.hp-footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.14);
	margin-top: 34px;
	padding-top: 22px;
	display: flex;
	justify-content: space-between;
	gap: 20px;
	align-items: center;
	font-size: 14px;
}

.hp-footer-bottom p {
	margin: 0;
}

.hp-footer-menu {
	display: flex;
	gap: 14px;
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Responsive */

@media (max-width: 1100px) {
	.hp-header-cta {
		display: none;
	}

	.hp-menu a {
		padding-left: 10px;
		padding-right: 10px;
	}
}

@media (max-width: 980px) {
	.hp-topbar {
		display: none;
	}

	.hp-header-inner {
		min-height: 74px;
	}

	.hp-menu-toggle {
		display: block;
		margin-left: auto;
	}

	.hp-primary-nav {
		display: none;
		position: absolute;
		left: 18px;
		right: 18px;
		top: 74px;
		background: #ffffff;
		border: 1px solid var(--hp-border);
		border-radius: 22px;
		box-shadow: var(--hp-shadow);
		padding: 14px;
	}

	body.hp-menu-open .hp-primary-nav {
		display: block;
	}

	.hp-menu {
		display: grid;
		gap: 4px;
	}

	.hp-menu a {
		display: flex;
		width: 100%;
		border-radius: 14px;
		padding: 13px 14px;
	}

	.hp-hero-grid,
	.hp-split,
	.hp-referral-banner {
		grid-template-columns: 1fr;
	}

	.hp-card-grid-3,
	.hp-card-grid-4 {
		grid-template-columns: repeat(2, 1fr);
	}

	.hp-pathway-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.hp-footer-grid {
		grid-template-columns: 1fr 1fr;
	}

	.hp-footer-bottom {
		flex-direction: column;
		align-items: flex-start;
	}
}

@media (max-width: 680px) {
	.hp-container {
		width: min(100% - 24px, 1180px);
	}

	.hp-section {
		padding: 56px 0;
	}

	.hp-hero {
		padding: 52px 0 48px;
	}

	.hp-hero-content,
	.hp-profile-panel,
	.hp-referral-banner,
	.hp-final-cta {
		padding: 24px;
		border-radius: 24px;
	}

	.hp-hero-panel {
		min-height: 330px;
		border-radius: 24px;
	}

	.hp-hero-card {
		left: 14px;
		right: 14px;
		bottom: 14px;
		padding: 18px;
	}

	.hp-hero-stats,
	.hp-card-grid-3,
	.hp-card-grid-4,
	.hp-pathway-grid,
	.hp-footer-grid {
		grid-template-columns: 1fr;
	}

	.hp-button {
		width: 100%;
	}

	.hp-button-row {
		width: 100%;
	}

	.hp-brand-text small {
		display: none;
	}

	.hp-footer-menu {
		flex-wrap: wrap;
	}
}

/* Standard Pages */

.hp-page-hero {
	position: relative;
	padding: 76px 0 62px;
	background:
		radial-gradient(circle at top right, rgba(31, 143, 138, 0.16), transparent 38%),
		linear-gradient(135deg, #f6fbfb 0%, #ffffff 48%, #f7f9fc 100%);
	border-bottom: 1px solid var(--hp-border);
	overflow: hidden;
}

.hp-page-hero::after {
	content: "";
	position: absolute;
	right: -120px;
	top: -140px;
	width: 330px;
	height: 330px;
	border-radius: 50%;
	background: rgba(201, 162, 77, 0.13);
}

.hp-page-hero-inner {
	position: relative;
	z-index: 2;
	max-width: 850px;
}

.hp-page-hero h1 {
	margin: 0 0 16px;
	font-size: clamp(34px, 4vw, 56px);
	line-height: 1.07;
	letter-spacing: -0.055em;
	color: var(--hp-navy);
	font-weight: 950;
}

.hp-page-hero p {
	margin: 0;
	color: var(--hp-muted);
	font-size: 18px;
	line-height: 1.75;
	max-width: 760px;
}

.hp-page-section {
	padding: 68px 0;
	background: #ffffff;
}

.hp-page-content {
	max-width: 920px;
	margin: 0 auto;
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 28px;
	padding: 38px;
	box-shadow: 0 16px 44px rgba(16, 42, 67, 0.06);
}

.hp-content {
	color: var(--hp-text);
	font-size: 17px;
	line-height: 1.8;
}

.hp-content > *:first-child {
	margin-top: 0;
}

.hp-content > *:last-child {
	margin-bottom: 0;
}

.hp-content h2,
.hp-content h3,
.hp-content h4 {
	color: var(--hp-navy);
	letter-spacing: -0.035em;
	line-height: 1.18;
}

.hp-content h2 {
	font-size: clamp(26px, 3vw, 36px);
	margin: 36px 0 14px;
}

.hp-content h3 {
	font-size: 24px;
	margin: 30px 0 12px;
}

.hp-content h4 {
	font-size: 20px;
	margin: 24px 0 10px;
}

.hp-content p {
	margin: 0 0 18px;
	color: var(--hp-muted);
}

.hp-content strong {
	color: var(--hp-navy);
}

.hp-content a {
	color: var(--hp-teal-dark);
	font-weight: 800;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.hp-content ul,
.hp-content ol {
	margin: 0 0 22px 22px;
	padding: 0;
	color: var(--hp-muted);
}

.hp-content li {
	margin-bottom: 10px;
}

.hp-content blockquote {
	margin: 28px 0;
	padding: 22px 24px;
	border-left: 5px solid var(--hp-teal);
	background: var(--hp-soft-teal);
	border-radius: 18px;
	color: var(--hp-navy);
}

.hp-content table {
	width: 100%;
	border-collapse: collapse;
	margin: 28px 0;
	overflow: hidden;
	border-radius: 18px;
	font-size: 15px;
}

.hp-content table th,
.hp-content table td {
	border: 1px solid var(--hp-border);
	padding: 14px 16px;
	text-align: left;
	vertical-align: top;
}

.hp-content table th {
	background: var(--hp-bg);
	color: var(--hp-navy);
	font-weight: 900;
}

.hp-content table td {
	color: var(--hp-muted);
}

.hp-content .wp-block-button__link {
	background: var(--hp-teal);
	color: #ffffff !important;
	border-radius: 999px;
	padding: 14px 22px;
	font-weight: 900;
	text-decoration: none;
	box-shadow: 0 14px 30px rgba(31, 143, 138, 0.22);
}

.hp-content .wp-block-button__link:hover {
	background: var(--hp-teal-dark);
}

/* Optional content helper boxes */

.hp-info-box {
	background: var(--hp-soft-teal);
	border: 1px solid rgba(31, 143, 138, 0.22);
	border-radius: 22px;
	padding: 22px;
	margin: 28px 0;
	color: var(--hp-navy);
}

.hp-warning-box {
	background: #fff8e8;
	border: 1px solid #f0d99f;
	border-radius: 22px;
	padding: 22px;
	margin: 28px 0;
	color: #6b5220;
}

.hp-warning-box strong {
	color: #513b10;
}

@media (max-width: 680px) {
	.hp-page-hero {
		padding: 52px 0 44px;
	}

	.hp-page-section {
		padding: 42px 0;
	}

	.hp-page-content {
		padding: 24px;
		border-radius: 22px;
	}

	.hp-content {
		font-size: 16px;
	}

	.hp-content table {
		display: block;
		overflow-x: auto;
		white-space: nowrap;
	}
}

/* Services Page */

.hp-services-hero .hp-page-hero-inner {
	max-width: 940px;
}

.hp-service-featured {
	position: relative;
	overflow: hidden;
}

.hp-service-featured::after {
	content: "";
	position: absolute;
	right: -45px;
	top: -45px;
	width: 110px;
	height: 110px;
	border-radius: 50%;
	background: rgba(31, 143, 138, 0.08);
	pointer-events: none;
}

.hp-service-list-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 18px;
}

.hp-service-list-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 22px;
	padding: 22px;
	box-shadow: 0 12px 30px rgba(16, 42, 67, 0.05);
	transition: 0.25s ease;
}

.hp-service-list-card:hover {
	transform: translateY(-3px);
	border-color: rgba(31, 143, 138, 0.35);
	box-shadow: 0 18px 40px rgba(16, 42, 67, 0.08);
}

.hp-service-list-card h3 {
	margin: 0 0 10px;
	color: var(--hp-navy);
	font-size: 19px;
	line-height: 1.25;
	letter-spacing: -0.025em;
}

.hp-service-list-card p {
	margin: 0;
	color: var(--hp-muted);
	font-size: 15px;
	line-height: 1.7;
}

.hp-professional-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
}

.hp-professional-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 26px;
	padding: 28px;
	box-shadow: 0 16px 42px rgba(16, 42, 67, 0.06);
}

.hp-professional-card h3 {
	margin: 0 0 16px;
	color: var(--hp-navy);
	font-size: 22px;
	line-height: 1.22;
	letter-spacing: -0.03em;
}

.hp-professional-card ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 12px;
}

.hp-professional-card li {
	position: relative;
	padding-left: 30px;
	color: var(--hp-muted);
	line-height: 1.55;
}

.hp-professional-card li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 0;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 900;
}

.hp-card-link {
	display: inline-flex;
	margin-top: 22px;
	color: var(--hp-teal-dark) !important;
	font-weight: 900;
	font-size: 14px;
}

.hp-process-box {
	display: grid;
	grid-template-columns: 0.9fr 1.1fr;
	gap: 34px;
	align-items: center;
	background:
		radial-gradient(circle at top left, rgba(31, 143, 138, 0.13), transparent 34%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
	border: 1px solid var(--hp-border);
	border-radius: 30px;
	padding: 38px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-process-box h2 {
	margin: 0 0 14px;
	font-size: clamp(28px, 3vw, 42px);
	line-height: 1.12;
	letter-spacing: -0.04em;
	color: var(--hp-navy);
	font-weight: 950;
}

.hp-process-box p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.75;
}

.hp-process-steps {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
}

.hp-process-steps div {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 22px;
	padding: 22px;
	box-shadow: 0 12px 30px rgba(16, 42, 67, 0.05);
}

.hp-process-steps span {
	width: 36px;
	height: 36px;
	border-radius: 14px;
	background: var(--hp-teal);
	color: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 950;
	margin-bottom: 16px;
}

.hp-process-steps strong {
	display: block;
	color: var(--hp-navy);
	font-size: 17px;
	margin-bottom: 8px;
}

.hp-process-steps p {
	font-size: 14px;
	line-height: 1.65;
}

@media (max-width: 980px) {
	.hp-service-list-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.hp-professional-grid,
	.hp-process-box,
	.hp-process-steps {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.hp-service-list-grid {
		grid-template-columns: 1fr;
	}

	.hp-process-box {
		padding: 24px;
		border-radius: 24px;
	}
}

/* About / Dr S Hashmi Profile Page */

.hp-about-hero .hp-page-hero-inner {
	max-width: 940px;
}

.hp-about-intro-grid {
	display: grid;
	grid-template-columns: 0.82fr 1.18fr;
	gap: 44px;
	align-items: center;
}

.hp-doctor-card {
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.18), transparent 36%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	border-radius: 32px;
	padding: 34px;
	color: #ffffff;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.18);
	position: relative;
	overflow: hidden;
}

.hp-doctor-card::after {
	content: "";
	position: absolute;
	right: -80px;
	bottom: -90px;
	width: 230px;
	height: 230px;
	border-radius: 50%;
	background: rgba(31, 143, 138, 0.26);
}

.hp-doctor-avatar {
	position: relative;
	z-index: 2;
	width: 96px;
	height: 96px;
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.18);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 24px;
}

.hp-doctor-avatar span {
	width: 68px;
	height: 68px;
	border-radius: 24px;
	background: #ffffff;
	color: var(--hp-navy);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 950;
	font-size: 24px;
	letter-spacing: -0.05em;
}

.hp-doctor-card h2 {
	position: relative;
	z-index: 2;
	margin: 0 0 8px;
	color: #ffffff;
	font-size: 34px;
	line-height: 1.1;
	letter-spacing: -0.045em;
}

.hp-doctor-role {
	position: relative;
	z-index: 2;
	margin: 0 0 24px;
	color: rgba(255, 255, 255, 0.78);
	font-size: 17px;
}

.hp-doctor-tags {
	position: relative;
	z-index: 2;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.hp-doctor-tags span {
	display: inline-flex;
	padding: 9px 12px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.10);
	border: 1px solid rgba(255, 255, 255, 0.14);
	color: rgba(255, 255, 255, 0.88);
	font-size: 13px;
	font-weight: 700;
}

.hp-profile-expertise-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
}

.hp-profile-expertise-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 26px;
	padding: 28px;
	box-shadow: 0 16px 42px rgba(16, 42, 67, 0.06);
	transition: 0.25s ease;
}

.hp-profile-expertise-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 48px rgba(16, 42, 67, 0.10);
	border-color: rgba(31, 143, 138, 0.35);
}

.hp-profile-expertise-card h3 {
	margin: 0 0 10px;
	color: var(--hp-navy);
	font-size: 21px;
	line-height: 1.24;
	letter-spacing: -0.03em;
}

.hp-profile-expertise-card p {
	margin: 0;
	color: var(--hp-muted);
	font-size: 15px;
	line-height: 1.7;
}

.hp-profile-split {
	display: grid;
	grid-template-columns: 1.05fr 0.95fr;
	gap: 44px;
	align-items: center;
}

.hp-profile-points {
	display: grid;
	gap: 14px;
	margin-top: 26px;
}

.hp-profile-points div {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 20px;
	padding: 20px;
	box-shadow: 0 12px 30px rgba(16, 42, 67, 0.05);
}

.hp-profile-points strong {
	display: block;
	color: var(--hp-navy);
	font-size: 17px;
	margin-bottom: 6px;
}

.hp-profile-points span {
	display: block;
	color: var(--hp-muted);
	line-height: 1.65;
}

.hp-profile-highlight {
	background:
		radial-gradient(circle at top left, rgba(31, 143, 138, 0.14), transparent 35%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
	border: 1px solid var(--hp-border);
	border-radius: 30px;
	padding: 34px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-profile-highlight h3 {
	margin: 0 0 18px;
	color: var(--hp-navy);
	font-size: 26px;
	line-height: 1.2;
	letter-spacing: -0.035em;
}

.hp-profile-highlight ul {
	list-style: none;
	padding: 0;
	margin: 0 0 26px;
	display: grid;
	gap: 12px;
}

.hp-profile-highlight li {
	position: relative;
	padding-left: 30px;
	color: var(--hp-muted);
	line-height: 1.55;
}

.hp-profile-highlight li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 0;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 900;
}

.hp-credentials-box {
	display: grid;
	grid-template-columns: 0.95fr 1.05fr;
	gap: 34px;
	align-items: center;
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 30px;
	padding: 38px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-credentials-box h2 {
	margin: 0 0 14px;
	font-size: clamp(28px, 3vw, 42px);
	line-height: 1.12;
	letter-spacing: -0.04em;
	color: var(--hp-navy);
	font-weight: 950;
}

.hp-credentials-box p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.75;
}

.hp-credentials-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 14px;
}

.hp-credentials-list div {
	border: 1px solid var(--hp-border);
	background: var(--hp-bg);
	border-radius: 20px;
	padding: 20px;
}

.hp-credentials-list strong {
	display: block;
	color: var(--hp-navy);
	font-size: 17px;
	margin-bottom: 6px;
}

.hp-credentials-list span {
	color: var(--hp-muted);
	line-height: 1.6;
}

@media (max-width: 980px) {
	.hp-about-intro-grid,
	.hp-profile-split,
	.hp-credentials-box {
		grid-template-columns: 1fr;
	}

	.hp-profile-expertise-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 680px) {
	.hp-doctor-card,
	.hp-profile-highlight,
	.hp-credentials-box {
		padding: 24px;
		border-radius: 24px;
	}

	.hp-profile-expertise-grid,
	.hp-credentials-list {
		grid-template-columns: 1fr;
	}
}

/* Dr S Hashmi Profile Photo */

.hp-doctor-photo-wrap {
	position: relative;
	z-index: 2;
	width: 150px;
	height: 150px;
	border-radius: 34px;
	padding: 6px;
	background: rgba(255, 255, 255, 0.14);
	border: 1px solid rgba(255, 255, 255, 0.20);
	margin-bottom: 24px;
	box-shadow: 0 18px 42px rgba(0, 0, 0, 0.16);
}

.hp-doctor-photo {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	object-position: center;
	border-radius: 28px;
	background: #ffffff;
}

@media (max-width: 680px) {
	.hp-doctor-photo-wrap {
		width: 128px;
		height: 128px;
		border-radius: 30px;
	}

	.hp-doctor-photo {
		border-radius: 24px;
	}
}

/* Improved Dr S Hashmi Photo Profile Section */

.hp-doctor-feature-card {
	display: grid;
	grid-template-columns: 0.75fr 1.25fr;
	gap: 42px;
	align-items: center;
	background:
		radial-gradient(circle at top left, rgba(31, 143, 138, 0.10), transparent 34%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
	border: 1px solid var(--hp-border);
	border-radius: 34px;
	padding: 42px;
	box-shadow: 0 22px 64px rgba(16, 42, 67, 0.08);
}

.hp-doctor-image-panel {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 430px;
	border-radius: 30px;
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.20), transparent 35%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	overflow: hidden;
	box-shadow: 0 20px 56px rgba(16, 42, 67, 0.16);
}

.hp-doctor-image-panel::after {
	content: "";
	position: absolute;
	right: -80px;
	bottom: -90px;
	width: 240px;
	height: 240px;
	border-radius: 50%;
	background: rgba(31, 143, 138, 0.26);
}

.hp-doctor-feature-photo {
	position: relative;
	z-index: 2;
	width: min(82%, 330px);
	max-height: 390px;
	object-fit: contain;
	object-position: center bottom;
	display: block;
	filter: drop-shadow(0 18px 26px rgba(0, 0, 0, 0.20));
}

.hp-doctor-feature-content h2 {
	margin: 0 0 8px;
	color: var(--hp-navy);
	font-size: clamp(34px, 4vw, 54px);
	line-height: 1.05;
	letter-spacing: -0.055em;
	font-weight: 950;
}

.hp-doctor-role-large {
	margin: 0 0 20px;
	color: var(--hp-teal-dark);
	font-size: 19px;
	font-weight: 900;
}

.hp-doctor-tags-light {
	margin: 24px 0 4px;
}

.hp-doctor-tags-light span {
	background: var(--hp-soft-teal);
	border-color: rgba(31, 143, 138, 0.20);
	color: var(--hp-teal-dark);
}

@media (max-width: 980px) {
	.hp-doctor-feature-card {
		grid-template-columns: 1fr;
	}

	.hp-doctor-image-panel {
		min-height: 380px;
	}
}

@media (max-width: 680px) {
	.hp-doctor-feature-card {
		padding: 24px;
		border-radius: 26px;
		gap: 28px;
	}

	.hp-doctor-image-panel {
		min-height: 320px;
		border-radius: 24px;
	}

	.hp-doctor-feature-photo {
		width: min(88%, 280px);
		max-height: 300px;
	}
}

/* Profile page polish */

.hp-doctor-feature-card {
	align-items: center;
}

.hp-doctor-image-panel {
	min-height: 390px;
	padding: 34px;
}

.hp-doctor-feature-photo {
	width: min(78%, 300px);
	max-height: 340px;
	background: #ffffff;
	border-radius: 6px;
	padding: 0;
}

.hp-doctor-feature-content {
	padding: 10px 0;
}

.hp-doctor-feature-content .hp-check-list {
	margin-top: 22px;
}

.hp-doctor-feature-content .hp-check-item {
	padding: 18px;
}

@media (max-width: 680px) {
	.hp-doctor-image-panel {
		min-height: 300px;
		padding: 24px;
	}

	.hp-doctor-feature-photo {
		width: min(88%, 260px);
		max-height: 285px;
	}
}

/* About page hero spacing refinement */

.hp-about-hero {
	padding-top: 96px;
	padding-bottom: 72px;
}

.hp-about-hero .hp-page-hero-inner {
	padding-top: 12px;
}

@media (max-width: 680px) {
	.hp-about-hero {
		padding-top: 64px;
		padding-bottom: 48px;
	}
}

/* Reduce spacing between About hero and profile card */

.hp-about-hero {
	padding-bottom: 54px;
}

.hp-about-hero + .hp-section {
	padding-top: 52px;
}

@media (max-width: 680px) {
	.hp-about-hero {
		padding-bottom: 42px;
	}

	.hp-about-hero + .hp-section {
		padding-top: 38px;
	}
}

/* Profile Qualifications / Registrations / Publications Section */

.hp-profile-details-section {
	background: #ffffff;
}

.hp-profile-detail-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 22px;
}

.hp-profile-detail-card {
	background:
		radial-gradient(circle at top right, rgba(31, 143, 138, 0.07), transparent 36%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
	border: 1px solid var(--hp-border);
	border-radius: 28px;
	padding: 30px;
	box-shadow: 0 16px 42px rgba(16, 42, 67, 0.06);
	position: relative;
	overflow: hidden;
}

.hp-profile-detail-card::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 5px;
	background: linear-gradient(90deg, var(--hp-teal), var(--hp-gold));
}

.hp-profile-detail-card-wide {
	grid-column: 1 / -1;
}

.hp-profile-detail-card h3 {
	margin: 0 0 18px;
	color: var(--hp-navy);
	font-size: 24px;
	line-height: 1.2;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hp-profile-detail-card ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 12px;
}

.hp-profile-detail-card li {
	position: relative;
	padding-left: 30px;
	color: var(--hp-muted);
	line-height: 1.6;
	font-size: 15px;
}

.hp-profile-detail-card li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 1px;
	width: 21px;
	height: 21px;
	border-radius: 50%;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 950;
}

.hp-two-column-list {
	grid-template-columns: repeat(2, 1fr);
	column-gap: 24px;
}

.hp-publication-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}

.hp-publication-item {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 22px;
	padding: 22px;
	box-shadow: 0 10px 28px rgba(16, 42, 67, 0.04);
}

.hp-publication-item strong {
	display: block;
	color: var(--hp-navy);
	font-size: 16px;
	margin-bottom: 8px;
}

.hp-publication-item span {
	display: block;
	color: var(--hp-muted);
	line-height: 1.65;
	font-size: 15px;
}

.hp-publication-item em {
	color: var(--hp-teal-dark);
	font-style: normal;
	font-weight: 800;
}

@media (max-width: 980px) {
	.hp-profile-detail-grid,
	.hp-publication-list {
		grid-template-columns: 1fr;
	}

	.hp-two-column-list {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.hp-profile-detail-card {
		padding: 24px;
		border-radius: 24px;
	}

	.hp-profile-detail-card h3 {
		font-size: 22px;
	}
}

/* Referrals Page */

.hp-referrals-hero .hp-page-hero-inner {
	max-width: 950px;
}

.hp-referral-route-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
}

.hp-referral-route-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 28px;
	padding: 28px;
	box-shadow: 0 16px 42px rgba(16, 42, 67, 0.06);
	transition: 0.25s ease;
}

.hp-referral-route-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 48px rgba(16, 42, 67, 0.10);
	border-color: rgba(31, 143, 138, 0.35);
}

.hp-referral-route-card h3 {
	margin: 0 0 10px;
	color: var(--hp-navy);
	font-size: 22px;
	line-height: 1.22;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hp-referral-route-card p {
	margin: 0 0 18px;
	color: var(--hp-muted);
	line-height: 1.7;
	font-size: 15px;
}

.hp-referral-route-card ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	gap: 10px;
}

.hp-referral-route-card li {
	position: relative;
	padding-left: 28px;
	color: var(--hp-muted);
	font-size: 14px;
	line-height: 1.55;
}

.hp-referral-route-card li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 1px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 11px;
	font-weight: 950;
}

.hp-referral-process {
	display: grid;
	grid-template-columns: 0.9fr 1.1fr;
	gap: 34px;
	align-items: center;
	background:
		radial-gradient(circle at top left, rgba(31, 143, 138, 0.13), transparent 34%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
	border: 1px solid var(--hp-border);
	border-radius: 32px;
	padding: 38px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-referral-process h2,
.hp-referral-info-card h2 {
	margin: 0 0 14px;
	font-size: clamp(28px, 3vw, 42px);
	line-height: 1.12;
	letter-spacing: -0.04em;
	color: var(--hp-navy);
	font-weight: 950;
}

.hp-referral-process p,
.hp-referral-info-card p,
.hp-referral-side-panel p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.75;
}

.hp-referral-process-steps {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 14px;
}

.hp-referral-process-steps div {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 22px;
	padding: 22px;
	box-shadow: 0 12px 30px rgba(16, 42, 67, 0.05);
}

.hp-referral-process-steps span {
	width: 36px;
	height: 36px;
	border-radius: 14px;
	background: var(--hp-teal);
	color: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 950;
	margin-bottom: 16px;
}

.hp-referral-process-steps strong {
	display: block;
	color: var(--hp-navy);
	font-size: 17px;
	margin-bottom: 8px;
}

.hp-referral-process-steps p {
	font-size: 14px;
	line-height: 1.65;
}

.hp-referral-info-grid {
	display: grid;
	grid-template-columns: 1.1fr 0.9fr;
	gap: 34px;
	align-items: start;
}

.hp-referral-info-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 30px;
	padding: 34px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-referral-checks {
	display: grid;
	gap: 14px;
	margin-top: 24px;
}

.hp-referral-checks div {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	padding: 16px;
	border-radius: 18px;
	background: var(--hp-bg);
	border: 1px solid var(--hp-border);
}

.hp-referral-checks span {
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	border-radius: 50%;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 950;
	font-size: 13px;
}

.hp-referral-checks p {
	font-size: 15px;
	line-height: 1.6;
}

.hp-referral-side-panel {
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.18), transparent 35%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	border-radius: 30px;
	padding: 34px;
	color: #ffffff;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.18);
}

.hp-referral-side-panel h3 {
	margin: 0 0 12px;
	color: #ffffff;
	font-size: 28px;
	line-height: 1.16;
	letter-spacing: -0.04em;
}

.hp-referral-side-panel p {
	color: rgba(255, 255, 255, 0.78);
}

.hp-side-panel-list {
	display: grid;
	gap: 12px;
	margin-top: 24px;
}

.hp-side-panel-list div {
	background: rgba(255, 255, 255, 0.10);
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 18px;
	padding: 18px;
}

.hp-side-panel-list strong {
	display: block;
	color: #ffffff;
	margin-bottom: 6px;
}

.hp-side-panel-list span {
	display: block;
	color: rgba(255, 255, 255, 0.76);
	line-height: 1.55;
	font-size: 14px;
}

@media (max-width: 980px) {
	.hp-referral-route-grid,
	.hp-referral-process,
	.hp-referral-info-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.hp-referral-process-steps {
		grid-template-columns: 1fr;
	}

	.hp-referral-route-card,
	.hp-referral-process,
	.hp-referral-info-card,
	.hp-referral-side-panel {
		padding: 24px;
		border-radius: 24px;
	}
}

/* Fees Page */

.hp-fees-hero .hp-page-hero-inner {
	max-width: 950px;
}

.hp-fee-card-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
}

.hp-fee-card {
	background:
		radial-gradient(circle at top right, rgba(31, 143, 138, 0.07), transparent 36%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
	border: 1px solid var(--hp-border);
	border-radius: 30px;
	padding: 30px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
	transition: 0.25s ease;
	position: relative;
	overflow: hidden;
}

.hp-fee-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 22px 54px rgba(16, 42, 67, 0.11);
	border-color: rgba(31, 143, 138, 0.35);
}

.hp-fee-card-featured {
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.16), transparent 36%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	color: #ffffff;
}

.hp-fee-card-top {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	align-items: center;
	margin-bottom: 22px;
}

.hp-fee-card-top span {
	display: inline-flex;
	padding: 8px 12px;
	border-radius: 999px;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	font-size: 13px;
	font-weight: 900;
}

.hp-fee-card-top strong {
	color: var(--hp-navy);
	font-size: 28px;
	line-height: 1;
	letter-spacing: -0.045em;
}

.hp-fee-card-featured .hp-fee-card-top span {
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.16);
	color: #ffffff;
}

.hp-fee-card-featured .hp-fee-card-top strong {
	color: #ffffff;
}

.hp-fee-card h3 {
	margin: 0 0 10px;
	color: var(--hp-navy);
	font-size: 23px;
	line-height: 1.22;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hp-fee-card-featured h3 {
	color: #ffffff;
}

.hp-fee-card p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.7;
}

.hp-fee-card-featured p {
	color: rgba(255, 255, 255, 0.78);
}

.hp-fee-card a {
	display: inline-flex;
	margin-top: 22px;
	color: var(--hp-teal-dark);
	font-weight: 950;
	font-size: 14px;
}

.hp-fee-card-featured a {
	color: #ffffff;
}

.hp-fees-table-wrap {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 30px;
	padding: 14px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
	overflow-x: auto;
}

.hp-fees-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	min-width: 760px;
}

.hp-fees-table th,
.hp-fees-table td {
	padding: 20px;
	text-align: left;
	vertical-align: top;
	border-bottom: 1px solid var(--hp-border);
}

.hp-fees-table th {
	background: var(--hp-navy);
	color: #ffffff;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.hp-fees-table th:first-child {
	border-top-left-radius: 20px;
}

.hp-fees-table th:last-child {
	border-top-right-radius: 20px;
}

.hp-fees-table tbody tr:last-child td {
	border-bottom: none;
}

.hp-fees-table td {
	color: var(--hp-muted);
	line-height: 1.6;
}

.hp-fees-table td strong {
	color: var(--hp-navy);
}

.hp-fees-table tbody tr:hover td {
	background: #f9fcfd;
}

.hp-professional-fees-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 22px;
}

.hp-professional-fee-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 28px;
	padding: 28px;
	box-shadow: 0 16px 42px rgba(16, 42, 67, 0.06);
	transition: 0.25s ease;
}

.hp-professional-fee-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 48px rgba(16, 42, 67, 0.10);
	border-color: rgba(31, 143, 138, 0.35);
}

.hp-professional-fee-card h3 {
	margin: 0 0 10px;
	color: var(--hp-navy);
	font-size: 21px;
	line-height: 1.22;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hp-professional-fee-card p {
	margin: 0 0 18px;
	color: var(--hp-muted);
	line-height: 1.7;
	font-size: 15px;
}

.hp-fee-note {
	background: var(--hp-bg);
	border: 1px solid var(--hp-border);
	border-radius: 18px;
	padding: 16px;
}

.hp-fee-note strong {
	display: block;
	color: var(--hp-navy);
	margin-bottom: 6px;
}

.hp-fee-note span {
	color: var(--hp-muted);
	line-height: 1.6;
	font-size: 14px;
}

.hp-payment-grid {
	display: grid;
	grid-template-columns: 1.08fr 0.92fr;
	gap: 34px;
	align-items: start;
}

.hp-payment-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 32px;
	padding: 38px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-payment-card h2 {
	margin: 0 0 24px;
	color: var(--hp-navy);
	font-size: clamp(28px, 3vw, 42px);
	line-height: 1.12;
	letter-spacing: -0.04em;
	font-weight: 950;
}

.hp-payment-list {
	display: grid;
	gap: 16px;
}

.hp-payment-list > div {
	display: flex;
	gap: 16px;
	align-items: flex-start;
	padding: 20px;
	background: var(--hp-bg);
	border: 1px solid var(--hp-border);
	border-radius: 20px;
}

.hp-payment-list > div > span {
	width: 36px;
	height: 36px;
	flex: 0 0 36px;
	border-radius: 14px;
	background: var(--hp-teal);
	color: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 950;
}

.hp-payment-list strong {
	display: block;
	color: var(--hp-navy);
	margin-bottom: 6px;
}

.hp-payment-list p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.65;
}

.hp-fees-side-card {
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.18), transparent 35%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	border-radius: 32px;
	padding: 34px;
	color: #ffffff;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.18);
}

.hp-fees-side-card h3 {
	margin: 0 0 18px;
	color: #ffffff;
	font-size: 28px;
	line-height: 1.16;
	letter-spacing: -0.04em;
}

.hp-fees-side-card ul {
	list-style: none;
	padding: 0;
	margin: 0 0 28px;
	display: grid;
	gap: 12px;
}

.hp-fees-side-card li {
	position: relative;
	padding-left: 30px;
	color: rgba(255, 255, 255, 0.80);
	line-height: 1.55;
}

.hp-fees-side-card li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 1px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.13);
	color: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 950;
}

@media (max-width: 1100px) {
	.hp-professional-fees-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 980px) {
	.hp-fee-card-grid,
	.hp-payment-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.hp-professional-fees-grid {
		grid-template-columns: 1fr;
	}

	.hp-fee-card,
	.hp-professional-fee-card,
	.hp-payment-card,
	.hp-fees-side-card {
		padding: 24px;
		border-radius: 24px;
	}

	.hp-payment-list > div {
		flex-direction: column;
	}
}

/* Updated Fees Page Category Layout */

.hp-fee-category-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
}

.hp-fee-category-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 30px;
	padding: 32px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-fee-category-card h3 {
	margin: 0 0 10px;
	color: var(--hp-navy);
	font-size: 26px;
	line-height: 1.18;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hp-fee-category-card > p {
	margin: 0 0 22px;
	color: var(--hp-muted);
	line-height: 1.7;
}

.hp-fee-simple-list {
	display: grid;
	gap: 12px;
}

.hp-fee-simple-list div {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 18px;
	align-items: center;
	padding: 18px 20px;
	border: 1px solid var(--hp-border);
	border-radius: 18px;
	background: var(--hp-bg);
}

.hp-fee-simple-list span {
	color: var(--hp-muted);
	line-height: 1.55;
}

.hp-fee-simple-list strong {
	color: var(--hp-navy);
	font-size: 16px;
	text-align: right;
	white-space: nowrap;
}

.hp-fees-table-wrap-compact {
	padding: 0;
	border-radius: 22px;
	box-shadow: none;
}

.hp-fees-table-compact {
	min-width: 0;
}

.hp-fees-table-compact td {
	padding: 18px 20px;
}

.hp-fees-table-compact td:first-child {
	width: 70%;
}

.hp-fees-table-compact td:last-child {
	width: 30%;
	text-align: right;
}

.hp-fees-table-compact td span {
	color: var(--hp-muted);
	font-size: 14px;
}

@media (max-width: 680px) {
	.hp-fee-category-card {
		padding: 24px;
		border-radius: 24px;
	}

	.hp-fee-simple-list div {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.hp-fee-simple-list strong {
		text-align: left;
		white-space: normal;
	}

	.hp-fees-table-compact td:last-child {
		text-align: left;
	}
}

/* Contact Page */

.hp-contact-hero .hp-page-hero-inner {
	max-width: 950px;
}

.hp-contact-route-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 22px;
}

.hp-contact-route-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 28px;
	padding: 28px;
	box-shadow: 0 16px 42px rgba(16, 42, 67, 0.06);
	transition: 0.25s ease;
}

.hp-contact-route-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 48px rgba(16, 42, 67, 0.10);
	border-color: rgba(31, 143, 138, 0.35);
}

.hp-contact-route-card h3 {
	margin: 0 0 10px;
	color: var(--hp-navy);
	font-size: 21px;
	line-height: 1.22;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hp-contact-route-card p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.7;
	font-size: 15px;
}

.hp-contact-grid {
	display: grid;
	grid-template-columns: 1.12fr 0.88fr;
	gap: 34px;
	align-items: start;
}

.hp-contact-form-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 32px;
	padding: 38px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-contact-form-card h2 {
	margin: 0 0 14px;
	color: var(--hp-navy);
	font-size: clamp(30px, 3vw, 44px);
	line-height: 1.12;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.hp-contact-form-card p {
	margin: 0 0 22px;
	color: var(--hp-muted);
	line-height: 1.75;
}

.hp-form-placeholder {
	background:
		radial-gradient(circle at top right, rgba(31, 143, 138, 0.08), transparent 36%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
	border: 1px dashed rgba(31, 143, 138, 0.45);
	border-radius: 24px;
	padding: 28px;
}

.hp-form-placeholder h3 {
	margin: 0 0 10px;
	color: var(--hp-navy);
	font-size: 22px;
	line-height: 1.2;
	letter-spacing: -0.03em;
}

.hp-form-placeholder code {
	display: block;
	background: var(--hp-navy);
	color: #ffffff;
	padding: 14px 16px;
	border-radius: 14px;
	margin: 16px 0;
	white-space: normal;
	line-height: 1.5;
}

.hp-contact-side-card {
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.18), transparent 35%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	border-radius: 32px;
	padding: 34px;
	color: #ffffff;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.18);
}

.hp-contact-side-card h3 {
	margin: 0 0 18px;
	color: #ffffff;
	font-size: 30px;
	line-height: 1.15;
	letter-spacing: -0.04em;
}

.hp-contact-side-card ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	gap: 12px;
}

.hp-contact-side-card li {
	position: relative;
	padding-left: 30px;
	color: rgba(255, 255, 255, 0.80);
	line-height: 1.55;
}

.hp-contact-side-card li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 1px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.13);
	color: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 950;
}

.hp-contact-side-note {
	margin-top: 24px;
	padding: 18px;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.10);
	border: 1px solid rgba(255, 255, 255, 0.15);
}

.hp-contact-side-note strong {
	display: block;
	color: #ffffff;
	margin-bottom: 6px;
}

.hp-contact-side-note span {
	display: block;
	color: rgba(255, 255, 255, 0.76);
	line-height: 1.6;
	font-size: 14px;
}

.hp-contact-info-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
}

.hp-contact-info-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 28px;
	padding: 28px;
	box-shadow: 0 16px 42px rgba(16, 42, 67, 0.06);
}

.hp-contact-info-card h3 {
	margin: 0 0 10px;
	color: var(--hp-navy);
	font-size: 22px;
	line-height: 1.22;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hp-contact-info-card p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.7;
	font-size: 15px;
}

.hp-contact-emergency-box {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 34px;
	align-items: center;
	background: #fff8e8;
	border: 1px solid #f0d99f;
	border-radius: 32px;
	padding: 38px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.06);
}

.hp-contact-emergency-box h2 {
	margin: 0 0 14px;
	color: #513b10;
	font-size: clamp(28px, 3vw, 42px);
	line-height: 1.12;
	letter-spacing: -0.04em;
	font-weight: 950;
}

.hp-contact-emergency-box p {
	margin: 0;
	color: #6b5220;
	line-height: 1.75;
	max-width: 820px;
}

.hp-contact-emergency-actions {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}

@media (max-width: 1100px) {
	.hp-contact-route-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 980px) {
	.hp-contact-grid,
	.hp-contact-info-grid,
	.hp-contact-emergency-box {
		grid-template-columns: 1fr;
	}

	.hp-contact-emergency-actions {
		margin-top: 4px;
	}
}

@media (max-width: 680px) {
	.hp-contact-route-grid {
		grid-template-columns: 1fr;
	}

	.hp-contact-form-card,
	.hp-contact-side-card,
	.hp-contact-info-card,
	.hp-contact-emergency-box {
		padding: 24px;
		border-radius: 24px;
	}
}

/* Fluent Forms styling for Health Private */

.hp-fluent-form-wrap {
	margin-top: 26px;
}

.hp-fluent-form-wrap .fluentform {
	margin: 0;
}

.hp-fluent-form-wrap .ff-el-group {
	margin-bottom: 18px !important;
}

.hp-fluent-form-wrap .ff-el-input--label label,
.hp-fluent-form-wrap .ff-el-form-check-label {
	color: var(--hp-navy) !important;
	font-weight: 900 !important;
	font-size: 15px !important;
}

.hp-fluent-form-wrap .ff-el-input--label {
	margin-bottom: 8px !important;
}

.hp-fluent-form-wrap .ff-el-is-required.asterisk-right label::after,
.hp-fluent-form-wrap .ff-el-is-required.asterisk-left label::before {
	color: var(--hp-teal-dark) !important;
}

.hp-fluent-form-wrap input[type="text"],
.hp-fluent-form-wrap input[type="email"],
.hp-fluent-form-wrap input[type="tel"],
.hp-fluent-form-wrap input[type="number"],
.hp-fluent-form-wrap input[type="url"],
.hp-fluent-form-wrap select,
.hp-fluent-form-wrap textarea,
.hp-fluent-form-wrap .ff-el-form-control {
	width: 100% !important;
	border: 1px solid var(--hp-border) !important;
	border-radius: 16px !important;
	background: #ffffff !important;
	color: var(--hp-navy) !important;
	font-size: 16px !important;
	padding: 14px 16px !important;
	box-shadow: none !important;
	outline: none !important;
	transition: 0.2s ease !important;
}

.hp-fluent-form-wrap textarea,
.hp-fluent-form-wrap textarea.ff-el-form-control {
	min-height: 150px !important;
	resize: vertical !important;
}

.hp-fluent-form-wrap input:focus,
.hp-fluent-form-wrap select:focus,
.hp-fluent-form-wrap textarea:focus,
.hp-fluent-form-wrap .ff-el-form-control:focus {
	border-color: var(--hp-teal) !important;
	box-shadow: 0 0 0 4px rgba(31, 143, 138, 0.12) !important;
}

.hp-fluent-form-wrap .ff-el-help-message,
.hp-fluent-form-wrap .ff-el-form-check-label,
.hp-fluent-form-wrap .ff-el-form-check-label span {
	color: var(--hp-muted) !important;
	line-height: 1.6 !important;
}

.hp-fluent-form-wrap .ff-el-form-check {
	margin-bottom: 8px !important;
}

.hp-fluent-form-wrap input[type="checkbox"],
.hp-fluent-form-wrap input[type="radio"] {
	accent-color: var(--hp-teal);
	margin-right: 8px !important;
}

.hp-fluent-form-wrap .ff-btn-submit,
.hp-fluent-form-wrap button[type="submit"] {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 52px !important;
	padding: 14px 24px !important;
	border-radius: 999px !important;
	border: none !important;
	background: var(--hp-teal) !important;
	color: #ffffff !important;
	font-size: 15px !important;
	font-weight: 950 !important;
	box-shadow: 0 14px 30px rgba(31, 143, 138, 0.22) !important;
	cursor: pointer !important;
	transition: 0.25s ease !important;
}

.hp-fluent-form-wrap .ff-btn-submit:hover,
.hp-fluent-form-wrap button[type="submit"]:hover {
	background: var(--hp-teal-dark) !important;
	transform: translateY(-2px);
}

.hp-fluent-form-wrap .text-danger,
.hp-fluent-form-wrap .error,
.hp-fluent-form-wrap .ff-el-is-error .text-danger {
	color: #b42318 !important;
	font-size: 13px !important;
	margin-top: 6px !important;
}

.hp-fluent-form-wrap .ff-message-success,
.hp-fluent-form-wrap .ff_success_message {
	background: var(--hp-soft-teal) !important;
	border: 1px solid rgba(31, 143, 138, 0.22) !important;
	border-radius: 20px !important;
	color: var(--hp-navy) !important;
	padding: 20px !important;
	box-shadow: none !important;
}

/* Private Psychiatric Assessment Page */

.hp-psychiatric-hero .hp-page-hero-inner {
	max-width: 980px;
}

.hp-service-intro-grid {
	display: grid;
	grid-template-columns: 1.1fr 0.9fr;
	gap: 38px;
	align-items: center;
}

.hp-service-intro-content h2,
.hp-assessment-process-grid h2,
.hp-assessment-fees-card h2 {
	margin: 0 0 14px;
	color: var(--hp-navy);
	font-size: clamp(30px, 3vw, 44px);
	line-height: 1.12;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.hp-service-intro-panel {
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.18), transparent 35%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	border-radius: 32px;
	padding: 34px;
	color: #ffffff;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.18);
}

.hp-service-intro-panel h3 {
	margin: 0 0 18px;
	color: #ffffff;
	font-size: 28px;
	line-height: 1.16;
	letter-spacing: -0.04em;
}

.hp-service-intro-panel ul {
	list-style: none;
	padding: 0;
	margin: 0 0 28px;
	display: grid;
	gap: 12px;
}

.hp-service-intro-panel li {
	position: relative;
	padding-left: 30px;
	color: rgba(255, 255, 255, 0.80);
	line-height: 1.55;
}

.hp-service-intro-panel li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 1px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.13);
	color: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 950;
}

.hp-assessment-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
}

.hp-assessment-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 28px;
	padding: 28px;
	box-shadow: 0 16px 42px rgba(16, 42, 67, 0.06);
	transition: 0.25s ease;
}

.hp-assessment-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 48px rgba(16, 42, 67, 0.10);
	border-color: rgba(31, 143, 138, 0.35);
}

.hp-assessment-card h3 {
	margin: 0 0 10px;
	color: var(--hp-navy);
	font-size: 21px;
	line-height: 1.22;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hp-assessment-card p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.7;
	font-size: 15px;
}

.hp-assessment-process-grid {
	display: grid;
	grid-template-columns: 0.9fr 1.1fr;
	gap: 34px;
	align-items: center;
	background:
		radial-gradient(circle at top left, rgba(31, 143, 138, 0.10), transparent 34%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
	border: 1px solid var(--hp-border);
	border-radius: 32px;
	padding: 38px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-assessment-steps {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 14px;
}

.hp-assessment-steps div {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 22px;
	padding: 22px;
	box-shadow: 0 12px 30px rgba(16, 42, 67, 0.05);
}

.hp-assessment-steps span {
	width: 36px;
	height: 36px;
	border-radius: 14px;
	background: var(--hp-teal);
	color: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 950;
	margin-bottom: 16px;
}

.hp-assessment-steps strong {
	display: block;
	color: var(--hp-navy);
	font-size: 17px;
	margin-bottom: 8px;
}

.hp-assessment-steps p {
	margin: 0;
	color: var(--hp-muted);
	font-size: 14px;
	line-height: 1.65;
}

.hp-request-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 22px;
}

.hp-request-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 28px;
	padding: 28px;
	box-shadow: 0 16px 42px rgba(16, 42, 67, 0.06);
	transition: 0.25s ease;
}

.hp-request-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 48px rgba(16, 42, 67, 0.10);
	border-color: rgba(31, 143, 138, 0.35);
}

.hp-request-card h3 {
	margin: 0 0 10px;
	color: var(--hp-navy);
	font-size: 21px;
	line-height: 1.22;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hp-request-card p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.7;
	font-size: 15px;
}

.hp-assessment-fees-grid {
	display: grid;
	grid-template-columns: 1.08fr 0.92fr;
	gap: 34px;
	align-items: start;
}

.hp-assessment-fees-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 32px;
	padding: 38px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-assessment-fee-list {
	display: grid;
	gap: 12px;
	margin: 24px 0 28px;
}

.hp-assessment-fee-list div {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 18px;
	align-items: center;
	padding: 18px 20px;
	border: 1px solid var(--hp-border);
	border-radius: 18px;
	background: var(--hp-bg);
}

.hp-assessment-fee-list span {
	color: var(--hp-muted);
	line-height: 1.55;
}

.hp-assessment-fee-list strong {
	color: var(--hp-navy);
	font-size: 17px;
	text-align: right;
	white-space: nowrap;
}

.hp-assessment-note-card {
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.18), transparent 35%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	border-radius: 32px;
	padding: 34px;
	color: #ffffff;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.18);
}

.hp-assessment-note-card h3 {
	margin: 0 0 18px;
	color: #ffffff;
	font-size: 28px;
	line-height: 1.16;
	letter-spacing: -0.04em;
}

.hp-assessment-note-card ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	gap: 12px;
}

.hp-assessment-note-card li {
	position: relative;
	padding-left: 30px;
	color: rgba(255, 255, 255, 0.80);
	line-height: 1.55;
}

.hp-assessment-note-card li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 1px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.13);
	color: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 950;
}

@media (max-width: 1100px) {
	.hp-request-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 980px) {
	.hp-service-intro-grid,
	.hp-assessment-process-grid,
	.hp-assessment-fees-grid {
		grid-template-columns: 1fr;
	}

	.hp-assessment-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 680px) {
	.hp-assessment-grid,
	.hp-assessment-steps,
	.hp-request-grid {
		grid-template-columns: 1fr;
	}

	.hp-service-intro-panel,
	.hp-assessment-process-grid,
	.hp-assessment-fees-card,
	.hp-assessment-note-card {
		padding: 24px;
		border-radius: 24px;
	}

	.hp-assessment-fee-list div {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.hp-assessment-fee-list strong {
		text-align: left;
		white-space: normal;
	}
}

/* Medication Review Page */

.hp-medication-hero .hp-page-hero-inner {
	max-width: 980px;
}

/* Medico-Legal Psychiatric Reports Page */

.hp-medicolegal-hero .hp-page-hero-inner {
	max-width: 980px;
}

/* Mental Capacity Assessments Page */

.hp-capacity-hero .hp-page-hero-inner {
	max-width: 980px;
}

/* Occupational Health Mental Health Reports Page */

.hp-occupational-hero .hp-page-hero-inner {
	max-width: 980px;
}

/* Registration Page / Semble Form */

.hp-registration-hero .hp-page-hero-inner {
	max-width: 950px;
}

.hp-registration-intro-grid {
	display: grid;
	grid-template-columns: 1.08fr 0.92fr;
	gap: 34px;
	align-items: start;
}

.hp-registration-intro-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 32px;
	padding: 38px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-registration-intro-card h2 {
	margin: 0 0 14px;
	color: var(--hp-navy);
	font-size: clamp(30px, 3vw, 44px);
	line-height: 1.12;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.hp-registration-intro-card p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.75;
	font-size: 17px;
}

.hp-registration-checks {
	display: grid;
	gap: 14px;
	margin-top: 24px;
}

.hp-registration-checks div {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	padding: 16px;
	border-radius: 18px;
	background: var(--hp-bg);
	border: 1px solid var(--hp-border);
}

.hp-registration-checks span {
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	border-radius: 50%;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 950;
	font-size: 13px;
}

.hp-registration-checks p {
	font-size: 15px;
	line-height: 1.6;
}

.hp-registration-side-card {
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.18), transparent 35%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	border-radius: 32px;
	padding: 34px;
	color: #ffffff;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.18);
}

.hp-registration-side-card h3 {
	margin: 0 0 14px;
	color: #ffffff;
	font-size: 30px;
	line-height: 1.15;
	letter-spacing: -0.04em;
}

.hp-registration-side-card p {
	margin: 0 0 24px;
	color: rgba(255, 255, 255, 0.78);
	line-height: 1.75;
}

.hp-semble-form-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 32px;
	padding: 18px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
	overflow: hidden;
}

.hp-semble-form-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 18px 20px;
	background:
		radial-gradient(circle at top right, rgba(31, 143, 138, 0.10), transparent 35%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
	border: 1px solid var(--hp-border);
	border-radius: 22px;
	margin-bottom: 16px;
}

.hp-semble-form-header strong {
	display: block;
	color: var(--hp-navy);
	font-size: 18px;
	margin-bottom: 3px;
}

.hp-semble-form-header span {
	display: block;
	color: var(--hp-muted);
	font-size: 14px;
}

.hp-semble-iframe-wrap {
	width: 100%;
	border-radius: 24px;
	overflow: hidden;
	background: #ffffff;
	border: 1px solid var(--hp-border);
}

.hp-semble-iframe-wrap iframe {
	display: block;
	width: 100%;
	min-height: 900px;
	border: 0;
	background: #ffffff;
}

@media (max-width: 980px) {
	.hp-registration-intro-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.hp-registration-intro-card,
	.hp-registration-side-card,
	.hp-semble-form-card {
		padding: 24px;
		border-radius: 24px;
	}

	.hp-semble-form-card {
		padding: 12px;
	}

	.hp-semble-form-header {
		padding: 16px;
		border-radius: 18px;
	}

	.hp-semble-iframe-wrap {
		border-radius: 18px;
	}

	.hp-semble-iframe-wrap iframe {
		min-height: 980px;
	}
}

/* Header Dropdown Menu */

.hp-menu .sub-menu {
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	min-width: 290px;
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 20px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.12);
	padding: 10px;
	margin: 0;
	list-style: none;
	display: none;
	z-index: 999;
}

.hp-menu .menu-item-has-children:hover > .sub-menu,
.hp-menu .menu-item-has-children:focus-within > .sub-menu {
	display: grid;
	gap: 4px;
}

.hp-menu .sub-menu::before {
	content: "";
	position: absolute;
	top: -10px;
	left: 0;
	right: 0;
	height: 10px;
}

.hp-menu .sub-menu a {
	width: 100%;
	border-radius: 14px;
	padding: 12px 14px;
	font-size: 14px;
	line-height: 1.35;
	color: var(--hp-navy);
	white-space: normal;
}

.hp-menu .sub-menu a:hover {
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
}

.hp-menu .menu-item-has-children > a::after {
	content: "⌄";
	display: inline-block;
	margin-left: 6px;
	font-size: 12px;
	line-height: 1;
	color: var(--hp-muted);
}

@media (max-width: 980px) {
	.hp-menu .sub-menu {
		position: static;
		display: grid;
		box-shadow: none;
		border-radius: 16px;
		margin: 4px 0 8px 12px;
		padding: 8px;
		min-width: 0;
		background: var(--hp-bg);
	}

	.hp-menu .sub-menu::before {
		display: none;
	}

	.hp-menu .sub-menu a {
		font-size: 13px;
		padding: 11px 12px;
	}
}

/* Health Private Logo */

.hp-brand-with-logo {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
}

.hp-site-logo {
	display: block;
	width: auto;
	height: 56px;
	max-width: 300px;
	object-fit: contain;
}

/* Header logo refinement */
.hp-header-inner .hp-site-logo {
	height: 54px;
	max-width: 290px;
}

/* Footer logo refinement */
.hp-footer-logo-box {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #ffffff;
	border-radius: 18px;
	padding: 10px 14px;
	box-shadow: 0 14px 34px rgba(0, 0, 0, 0.16);
	max-width: fit-content;
}

.hp-footer-logo {
	height: 58px;
	max-width: 310px;
	filter: none !important;
}

/* Remove old HP mark spacing if still affecting layout */
.hp-brand-with-logo .hp-brand-mark,
.hp-brand-with-logo .hp-brand-text {
	display: none;
}

@media (max-width: 980px) {
	.hp-header-inner .hp-site-logo {
		height: 48px;
		max-width: 240px;
	}
}

@media (max-width: 680px) {
	.hp-header-inner .hp-site-logo {
		height: 42px;
		max-width: 210px;
	}

	.hp-footer-logo-box {
		padding: 8px 10px;
		border-radius: 14px;
	}

	.hp-footer-logo {
		height: 46px;
		max-width: 240px;
	}
}

/* Make Health Private logo clearer in the header */

.hp-header-inner {
	min-height: 92px;
}

.hp-header-inner .hp-brand-with-logo {
	max-width: 360px;
}

.hp-header-inner .hp-site-logo {
	height: auto;
	width: 250px;
	max-width: 250px;
	object-fit: contain;
}

/* Keep footer logo readable too */
.hp-footer-logo-box {
	max-width: 360px;
}

.hp-footer-logo {
	height: auto;
	width: 270px;
	max-width: 270px;
	object-fit: contain;
}

@media (max-width: 980px) {
	.hp-header-inner {
		min-height: 82px;
	}

	.hp-header-inner .hp-site-logo {
		width: 220px;
		max-width: 220px;
	}
}

@media (max-width: 680px) {
	.hp-header-inner .hp-site-logo {
		width: 180px;
		max-width: 180px;
	}

	.hp-footer-logo {
		width: 220px;
		max-width: 220px;
	}
}

/* Calm Space Page */

.hp-calm-hero .hp-page-hero-inner {
	max-width: 980px;
}

.hp-calm-intro-grid {
	display: grid;
	grid-template-columns: 1.08fr 0.92fr;
	gap: 34px;
	align-items: start;
}

.hp-calm-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 32px;
	padding: 38px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-calm-card h2 {
	margin: 0 0 14px;
	color: var(--hp-navy);
	font-size: clamp(30px, 3vw, 44px);
	line-height: 1.12;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.hp-calm-card p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.75;
	font-size: 17px;
}

.hp-calm-checks {
	display: grid;
	gap: 14px;
	margin-top: 24px;
}

.hp-calm-checks div {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	padding: 16px;
	border-radius: 18px;
	background: var(--hp-bg);
	border: 1px solid var(--hp-border);
}

.hp-calm-checks span {
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	border-radius: 50%;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 950;
	font-size: 13px;
}

.hp-calm-side {
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.18), transparent 35%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	border-radius: 32px;
	padding: 34px;
	color: #ffffff;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.18);
}

.hp-calm-side h3 {
	margin: 0 0 14px;
	color: #ffffff;
	font-size: 30px;
	line-height: 1.15;
	letter-spacing: -0.04em;
}

.hp-calm-side p {
	margin: 0;
	color: rgba(255, 255, 255, 0.78);
	line-height: 1.75;
}

.hp-breathing-card {
	max-width: 720px;
	margin: 0 auto;
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 34px;
	padding: 42px;
	box-shadow: 0 20px 56px rgba(16, 42, 67, 0.08);
	text-align: center;
}

.hp-breathing-circle {
	width: 260px;
	height: 260px;
	margin: 0 auto 28px;
	border-radius: 50%;
	background:
		radial-gradient(circle, rgba(31,143,138,0.14), rgba(31,143,138,0.04)),
		linear-gradient(135deg, #ffffff, #f8fbfd);
	border: 2px solid rgba(31, 143, 138, 0.24);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform 4s ease;
	box-shadow: 0 18px 48px rgba(31, 143, 138, 0.16);
}

.hp-breathing-circle.hp-breathe-in {
	transform: scale(1.12);
}

.hp-breathing-circle.hp-breathe-out {
	transform: scale(0.92);
}

.hp-breathing-inner span {
	display: block;
	color: var(--hp-navy);
	font-size: 26px;
	font-weight: 950;
	letter-spacing: -0.04em;
}

.hp-breathing-inner small {
	display: block;
	margin-top: 8px;
	color: var(--hp-teal-dark);
	font-size: 44px;
	font-weight: 950;
	line-height: 1;
}

.hp-breathing-controls {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px;
}

.hp-grounding-grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 18px;
}

.hp-grounding-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 28px;
	padding: 26px;
	box-shadow: 0 16px 42px rgba(16, 42, 67, 0.06);
}

.hp-grounding-card strong {
	width: 42px;
	height: 42px;
	border-radius: 16px;
	background: var(--hp-teal);
	color: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	font-weight: 950;
	margin-bottom: 16px;
}

.hp-grounding-card h3 {
	margin: 0 0 10px;
	color: var(--hp-navy);
	font-size: 20px;
	line-height: 1.22;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hp-grounding-card p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.7;
	font-size: 15px;
}

.hp-calm-prompt-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}

.hp-calm-prompt {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 24px;
	padding: 24px;
	color: var(--hp-navy);
	font-weight: 900;
	line-height: 1.6;
	box-shadow: 0 14px 34px rgba(16, 42, 67, 0.05);
}

@media (max-width: 1100px) {
	.hp-grounding-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.hp-calm-prompt-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 980px) {
	.hp-calm-intro-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.hp-calm-card,
	.hp-calm-side,
	.hp-breathing-card,
	.hp-grounding-card {
		padding: 24px;
		border-radius: 24px;
	}

	.hp-breathing-circle {
		width: 220px;
		height: 220px;
	}

	.hp-grounding-grid,
	.hp-calm-prompt-grid {
		grid-template-columns: 1fr;
	}
}

/* Self-Test Page */

.hp-selftest-hero .hp-page-hero-inner {
	max-width: 980px;
}

.hp-selftest-intro-grid {
	display: grid;
	grid-template-columns: 1.08fr 0.92fr;
	gap: 34px;
	align-items: start;
}

.hp-selftest-intro-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 32px;
	padding: 38px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-selftest-intro-card h2 {
	margin: 0 0 14px;
	color: var(--hp-navy);
	font-size: clamp(30px, 3vw, 44px);
	line-height: 1.12;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.hp-selftest-intro-card p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.75;
	font-size: 17px;
}

.hp-selftest-checks {
	display: grid;
	gap: 14px;
	margin-top: 24px;
}

.hp-selftest-checks div {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	padding: 16px;
	border-radius: 18px;
	background: var(--hp-bg);
	border: 1px solid var(--hp-border);
}

.hp-selftest-checks span {
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	border-radius: 50%;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 950;
	font-size: 13px;
}

.hp-selftest-checks p {
	margin: 0;
	font-size: 15px;
	line-height: 1.6;
}

.hp-selftest-side-card {
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.18), transparent 35%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	border-radius: 32px;
	padding: 34px;
	color: #ffffff;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.18);
}

.hp-selftest-side-card h3 {
	margin: 0 0 14px;
	color: #ffffff;
	font-size: 30px;
	line-height: 1.15;
	letter-spacing: -0.04em;
}

.hp-selftest-side-card p {
	margin: 0 0 24px;
	color: rgba(255, 255, 255, 0.78);
	line-height: 1.75;
}

.hp-selftest-app {
	max-width: 900px;
	margin: 0 auto;
}

.hp-selftest-progress {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 24px;
	padding: 20px;
	box-shadow: 0 14px 34px rgba(16, 42, 67, 0.05);
	margin-bottom: 22px;
}

.hp-selftest-progress-top {
	display: flex;
	justify-content: space-between;
	gap: 18px;
	align-items: center;
	margin-bottom: 12px;
	color: var(--hp-navy);
}

.hp-selftest-progress-top strong,
.hp-selftest-progress-top span {
	font-weight: 950;
}

.hp-selftest-progress-track {
	width: 100%;
	height: 12px;
	border-radius: 999px;
	background: var(--hp-bg);
	overflow: hidden;
	border: 1px solid var(--hp-border);
}

.hp-selftest-progress-bar {
	width: 0%;
	height: 100%;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--hp-teal), var(--hp-gold));
	transition: width 0.25s ease;
}

.hp-selftest-question-card,
.hp-selftest-result-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 34px;
	padding: 42px;
	box-shadow: 0 20px 56px rgba(16, 42, 67, 0.08);
}

.hp-selftest-question-category {
	display: inline-flex;
	padding: 8px 14px;
	border-radius: 999px;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	font-size: 14px;
	font-weight: 950;
	margin-bottom: 18px;
}

.hp-selftest-question-card h3,
.hp-selftest-result-card h3 {
	margin: 0 0 24px;
	color: var(--hp-navy);
	font-size: clamp(28px, 3vw, 42px);
	line-height: 1.12;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.hp-selftest-options {
	display: grid;
	gap: 14px;
}

.hp-selftest-option {
	text-align: left;
	width: 100%;
	border: 1px solid var(--hp-border);
	background: #ffffff;
	border-radius: 20px;
	padding: 18px 20px;
	cursor: pointer;
	transition: 0.2s ease;
	box-shadow: 0 10px 26px rgba(16, 42, 67, 0.04);
}

.hp-selftest-option:hover {
	transform: translateY(-2px);
	border-color: rgba(31, 143, 138, 0.45);
	box-shadow: 0 14px 32px rgba(16, 42, 67, 0.08);
}

.hp-selftest-option span {
	display: block;
	color: var(--hp-navy);
	font-weight: 950;
	font-size: 17px;
	margin-bottom: 4px;
}

.hp-selftest-option small {
	display: block;
	color: var(--hp-muted);
	font-size: 14px;
	line-height: 1.5;
}

.hp-selftest-actions {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	margin-top: 26px;
}

.hp-selftest-result-card {
	background:
		radial-gradient(circle at top right, rgba(31, 143, 138, 0.08), transparent 35%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
}

.hp-selftest-result-card p {
	margin: 0;
	color: var(--hp-muted);
	font-size: 17px;
	line-height: 1.75;
}

.hp-selftest-result-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
	margin: 26px 0;
}

.hp-selftest-result-grid div {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 20px;
	padding: 20px;
}

.hp-selftest-result-grid strong {
	display: block;
	color: var(--hp-navy);
	margin-bottom: 8px;
	font-size: 15px;
}

.hp-selftest-result-grid span {
	color: var(--hp-muted);
	line-height: 1.6;
}

.hp-selftest-result-note {
	background: #fff8e8;
	border: 1px solid #f0d99f;
	color: #6b5220;
	border-radius: 20px;
	padding: 20px;
	line-height: 1.7;
}

.hp-selftest-result-note strong {
	color: #513b10;
}

.hp-selftest-area-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
}

.hp-selftest-area-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 28px;
	padding: 28px;
	box-shadow: 0 16px 42px rgba(16, 42, 67, 0.06);
	transition: 0.25s ease;
}

.hp-selftest-area-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 48px rgba(16, 42, 67, 0.10);
	border-color: rgba(31, 143, 138, 0.35);
}

.hp-selftest-area-card h3 {
	margin: 0 0 10px;
	color: var(--hp-navy);
	font-size: 21px;
	line-height: 1.22;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hp-selftest-area-card p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.7;
	font-size: 15px;
}

@media (max-width: 980px) {
	.hp-selftest-intro-grid,
	.hp-selftest-result-grid {
		grid-template-columns: 1fr;
	}

	.hp-selftest-area-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 680px) {
	.hp-selftest-intro-card,
	.hp-selftest-side-card,
	.hp-selftest-question-card,
	.hp-selftest-result-card,
	.hp-selftest-area-card {
		padding: 24px;
		border-radius: 24px;
	}

	.hp-selftest-area-grid {
		grid-template-columns: 1fr;
	}

	.hp-selftest-actions .hp-button,
	.hp-selftest-result-card .hp-button-row .hp-button {
		width: 100%;
	}
}

/* Header/Footer Resource Menu Polish */

.hp-footer-grid h3 {
	color: #ffffff;
	font-size: 17px;
	letter-spacing: -0.02em;
}

.hp-site-footer .hp-footer-grid ul li a {
	line-height: 1.45;
}

.hp-site-footer .hp-footer-grid ul li a[href="/calm-space/"],
.hp-site-footer .hp-footer-grid ul li a[href="/self-test/"] {
	color: rgba(255, 255, 255, 0.90);
	font-weight: 800;
}

.hp-site-footer .hp-footer-grid ul li a[href="/calm-space/"]:hover,
.hp-site-footer .hp-footer-grid ul li a[href="/self-test/"]:hover {
	color: #ffffff;
}

/* Prevent unwanted horizontal scrollbars */

html,
body {
	max-width: 100%;
	overflow-x: hidden;
}

.hp-main,
.hp-site-footer {
	max-width: 100%;
	overflow-x: hidden;
}

.hp-site-header {
	max-width: 100%;
	overflow: visible;
}

.hp-hero,
.hp-page-hero,
.hp-section,
.hp-soft-section {
	max-width: 100%;
	overflow-x: hidden;
}

/* Keep all media and iframes inside the viewport */

img,
iframe,
video,
svg {
	max-width: 100%;
}

/* Keep header dropdowns above page content */

.hp-site-header {
	position: sticky;
	top: 0;
	z-index: 9999;
	overflow: visible;
}

.hp-header-inner {
	position: relative;
	z-index: 10000;
	overflow: visible;
}

.hp-primary-nav {
	position: relative;
	z-index: 10001;
	overflow: visible;
}

.hp-menu {
	position: relative;
	z-index: 10002;
}

.hp-menu .sub-menu {
	z-index: 10003;
}

/* Back to Top Button */

.hp-back-to-top {
	position: fixed;
	right: 24px;
	bottom: 24px;
	width: 52px;
	height: 52px;
	border: none;
	border-radius: 999px;
	background: var(--hp-teal);
	color: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 16px 36px rgba(31, 143, 138, 0.28);
	cursor: pointer;
	z-index: 9998;
	opacity: 0;
	visibility: hidden;
	transform: translateY(14px);
	transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease, background 0.25s ease;
}

.hp-back-to-top span {
	display: block;
	font-size: 28px;
	font-weight: 950;
	line-height: 1;
	transform: translateY(-1px);
}

.hp-back-to-top:hover {
	background: var(--hp-teal-dark);
	transform: translateY(10px);
}

.hp-back-to-top.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.hp-back-to-top.is-visible:hover {
	transform: translateY(-3px);
}

@media (max-width: 680px) {
	.hp-back-to-top {
		right: 16px;
		bottom: 16px;
		width: 48px;
		height: 48px;
	}
}

/* Floating WhatsApp Button */

.hp-whatsapp-button {
	position: fixed;
	left: 24px;
	bottom: 24px;
	min-height: 54px;
	padding: 12px 18px 12px 14px;
	border-radius: 999px;
	background: #25d366;
	color: #ffffff !important;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	box-shadow: 0 16px 36px rgba(37, 211, 102, 0.28);
	z-index: 9998;
	font-weight: 950;
	font-size: 15px;
	transition: 0.25s ease;
}

.hp-whatsapp-button:hover {
	transform: translateY(-3px);
	background: #1ebe5d;
	box-shadow: 0 20px 42px rgba(37, 211, 102, 0.34);
}

.hp-whatsapp-icon {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.18);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 21px;
	font-weight: 950;
	line-height: 1;
}

.hp-whatsapp-text {
	line-height: 1;
}

/* Keep WhatsApp and Back-to-Top separated on mobile */
@media (max-width: 680px) {
	.hp-whatsapp-button {
		left: 16px;
		bottom: 16px;
		min-height: 50px;
		padding: 10px 14px 10px 12px;
		font-size: 14px;
	}

	.hp-whatsapp-icon {
		width: 30px;
		height: 30px;
		font-size: 19px;
	}
}

.hp-whatsapp-icon svg {
	display: block;
}

/* Books Page */

.hp-books-hero .hp-page-hero-inner {
	max-width: 980px;
}

.hp-books-intro-grid,
.hp-books-cta-grid {
	display: grid;
	grid-template-columns: 1.08fr 0.92fr;
	gap: 34px;
	align-items: start;
}

.hp-books-intro-card,
.hp-books-cta-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 32px;
	padding: 38px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-books-intro-card h2,
.hp-books-cta-card h2 {
	margin: 0 0 14px;
	color: var(--hp-navy);
	font-size: clamp(30px, 3vw, 44px);
	line-height: 1.12;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.hp-books-intro-card p,
.hp-books-cta-card p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.75;
	font-size: 17px;
}

.hp-books-checks {
	display: grid;
	gap: 14px;
	margin-top: 24px;
}

.hp-books-checks div {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	padding: 16px;
	border-radius: 18px;
	background: var(--hp-bg);
	border: 1px solid var(--hp-border);
}

.hp-books-checks span {
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	border-radius: 50%;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 950;
	font-size: 13px;
}

.hp-books-checks p {
	margin: 0;
	font-size: 15px;
	line-height: 1.6;
}

.hp-books-side-card,
.hp-books-external-card {
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.18), transparent 35%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	border-radius: 32px;
	padding: 34px;
	color: #ffffff;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.18);
}

.hp-books-side-card h3,
.hp-books-external-card h3 {
	margin: 0 0 14px;
	color: #ffffff;
	font-size: 30px;
	line-height: 1.15;
	letter-spacing: -0.04em;
}

.hp-books-side-card p,
.hp-books-external-card p {
	margin: 0 0 24px;
	color: rgba(255, 255, 255, 0.78);
	line-height: 1.75;
}

.hp-books-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.hp-book-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 30px;
	overflow: hidden;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
	transition: 0.25s ease;
}

.hp-book-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 22px 54px rgba(16, 42, 67, 0.11);
	border-color: rgba(31, 143, 138, 0.35);
}

.hp-book-card-featured {
	grid-column: span 2;
	display: grid;
	grid-template-columns: 0.9fr 1.1fr;
}

.hp-book-cover {
	min-height: 240px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 30px;
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.18), transparent 35%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
}

.hp-book-cover-text span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 180px;
	min-height: 230px;
	border-radius: 18px;
	background: #ffffff;
	color: var(--hp-navy);
	text-align: center;
	padding: 22px;
	font-weight: 950;
	font-size: 22px;
	line-height: 1.15;
	letter-spacing: -0.04em;
	box-shadow: 0 18px 36px rgba(0, 0, 0, 0.18);
}

.hp-book-content {
	padding: 28px;
}

.hp-book-tag {
	display: inline-flex;
	padding: 8px 12px;
	border-radius: 999px;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	font-size: 13px;
	font-weight: 950;
	margin-bottom: 14px;
}

.hp-book-content h3 {
	margin: 0 0 12px;
	color: var(--hp-navy);
	font-size: 24px;
	line-height: 1.18;
	letter-spacing: -0.04em;
	font-weight: 950;
}

.hp-book-content p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.7;
	font-size: 15px;
}

@media (max-width: 1100px) {
	.hp-books-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.hp-book-card-featured {
		grid-column: span 2;
	}
}

@media (max-width: 980px) {
	.hp-books-intro-grid,
	.hp-books-cta-grid {
		grid-template-columns: 1fr;
	}

	.hp-book-card-featured {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.hp-books-grid {
		grid-template-columns: 1fr;
	}

	.hp-book-card-featured {
		grid-column: span 1;
	}

	.hp-books-intro-card,
	.hp-books-side-card,
	.hp-books-cta-card,
	.hp-books-external-card {
		padding: 24px;
		border-radius: 24px;
	}

	.hp-book-cover-text span {
		width: 160px;
		min-height: 210px;
		font-size: 20px;
	}
}

/* Real book cover images */

.hp-book-cover-image {
	min-height: 280px;
	padding: 28px;
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.18), transparent 35%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
}

.hp-book-cover-image img {
	display: block;
	width: auto;
	height: 260px;
	max-width: 100%;
	object-fit: contain;
	border-radius: 14px;
	box-shadow: 0 18px 38px rgba(0, 0, 0, 0.22);
	background: #ffffff;
}

.hp-book-card-featured .hp-book-cover-image {
	min-height: 360px;
}

.hp-book-card-featured .hp-book-cover-image img {
	height: 330px;
}

@media (max-width: 980px) {
	.hp-book-card-featured .hp-book-cover-image {
		min-height: 320px;
	}

	.hp-book-card-featured .hp-book-cover-image img {
		height: 290px;
	}
}

@media (max-width: 680px) {
	.hp-book-cover-image {
		min-height: 250px;
		padding: 22px;
	}

	.hp-book-cover-image img {
		height: 230px;
	}

	.hp-book-card-featured .hp-book-cover-image {
		min-height: 270px;
	}

	.hp-book-card-featured .hp-book-cover-image img {
		height: 245px;
	}
}

/* Books page - featured layout with improved image sizing */

.hp-books-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	align-items: stretch;
}

/* Keep DIDMs as a large featured card */
.hp-book-card-featured {
	grid-column: span 2;
	display: grid;
	grid-template-columns: 0.95fr 1.05fr;
	min-height: 520px;
}

/* General book card layout */
.hp-book-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 30px;
	overflow: hidden;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
	transition: 0.25s ease;
}

.hp-book-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 22px 54px rgba(16, 42, 67, 0.11);
	border-color: rgba(31, 143, 138, 0.35);
}

/* Dark cover area */
.hp-book-cover-image {
	position: relative;
	min-height: 370px;
	padding: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.18), transparent 35%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	overflow: hidden;
}

.hp-book-cover-image::after {
	content: "";
	position: absolute;
	right: -75px;
	bottom: -95px;
	width: 230px;
	height: 230px;
	border-radius: 50%;
	background: rgba(31, 143, 138, 0.22);
	pointer-events: none;
}

/* Standard book images */
.hp-book-cover-image img {
	position: relative;
	z-index: 2;
	display: block;
	width: auto;
	height: 315px;
	max-width: 100%;
	object-fit: contain;
	border-radius: 14px;
	box-shadow: 0 18px 38px rgba(0, 0, 0, 0.24);
	background: #ffffff;
}

/* Make DIDMs cover larger */
.hp-book-card-featured .hp-book-cover-image {
	min-height: 520px;
	padding: 34px;
}

.hp-book-card-featured .hp-book-cover-image img {
	height: 390px;
	max-width: 88%;
}

/* Keep the other image holders consistent */
.hp-book-card:not(.hp-book-card-featured) .hp-book-cover-image {
	min-height: 360px;
}

/* Square children book covers */
.hp-books-grid .hp-book-card:not(.hp-book-card-featured) .hp-book-cover-image img {
	height: 310px;
	max-width: 92%;
}

/* Content */
.hp-book-content {
	padding: 28px;
}

.hp-book-card-featured .hp-book-content {
	padding: 38px 34px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.hp-book-tag {
	display: inline-flex;
	width: fit-content;
	padding: 8px 12px;
	border-radius: 999px;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	font-size: 13px;
	font-weight: 950;
	margin-bottom: 14px;
}

.hp-book-content h3 {
	margin: 0 0 12px;
	color: var(--hp-navy);
	font-size: 24px;
	line-height: 1.18;
	letter-spacing: -0.04em;
	font-weight: 950;
}

.hp-book-card-featured .hp-book-content h3 {
	font-size: clamp(28px, 3vw, 36px);
}

.hp-book-content p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.7;
	font-size: 15px;
}

.hp-book-content .hp-card-link {
	margin-top: 22px;
}

/* Tablet */
@media (max-width: 1100px) {
	.hp-books-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.hp-book-card-featured {
		grid-column: span 2;
	}
}

/* Mobile */
@media (max-width: 680px) {
	.hp-books-grid {
		grid-template-columns: 1fr;
	}

	.hp-book-card-featured {
		grid-column: span 1;
		grid-template-columns: 1fr;
		min-height: auto;
	}

	.hp-book-card-featured .hp-book-cover-image {
		min-height: 360px;
		padding: 24px;
	}

	.hp-book-card-featured .hp-book-cover-image img {
		height: 300px;
		max-width: 92%;
	}

	.hp-book-card:not(.hp-book-card-featured) .hp-book-cover-image {
		min-height: 320px;
	}

	.hp-book-card:not(.hp-book-card-featured) .hp-book-cover-image img {
		height: 270px;
	}

	.hp-book-card-featured .hp-book-content {
		padding: 28px;
	}

	.hp-book-content {
		padding: 26px;
	}
}

/* Mobile Header / Menu Fix */

@media (max-width: 980px) {
	.hp-site-header {
		overflow: visible;
	}

	.hp-header-inner {
		position: relative;
		min-height: 82px;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 14px;
	}

	.hp-header-inner .hp-brand-with-logo {
		max-width: 220px;
		flex: 0 1 auto;
	}

	.hp-header-inner .hp-site-logo {
		width: 200px;
		max-width: 200px;
		height: auto;
		display: block;
	}

	.hp-menu-toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 46px;
		width: 46px;
		height: 46px;
		margin-left: auto;
		border: 1px solid var(--hp-border);
		border-radius: 16px;
		background: #ffffff;
		box-shadow: 0 10px 24px rgba(16, 42, 67, 0.06);
		z-index: 10005;
	}

	.hp-menu-toggle span {
		display: block;
		width: 20px;
		height: 2px;
		background: var(--hp-navy);
		border-radius: 999px;
		margin: 3px 0;
	}

	.hp-primary-nav {
		display: none;
		position: absolute;
		top: calc(100% + 10px);
		left: 12px;
		right: 12px;
		width: auto;
		max-width: none;
		max-height: calc(100vh - 120px);
		overflow-y: auto;
		overflow-x: hidden;
		background: #ffffff;
		border: 1px solid var(--hp-border);
		border-radius: 24px;
		box-shadow: 0 22px 60px rgba(16, 42, 67, 0.18);
		padding: 14px;
		z-index: 10004;
	}

	body.hp-menu-open .hp-primary-nav {
		display: block;
	}

	.hp-menu {
		display: grid;
		gap: 6px;
		width: 100%;
	}

	.hp-menu > li {
		width: 100%;
	}

	.hp-menu > li > a {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 14px 16px;
		border-radius: 16px;
		font-size: 15px;
		font-weight: 900;
	}

	.hp-menu > li > a:hover {
		background: var(--hp-soft-teal);
		color: var(--hp-teal-dark);
	}

	.hp-menu .sub-menu {
		position: static;
		display: grid;
		width: 100%;
		min-width: 0;
		margin: 4px 0 10px;
		padding: 10px;
		border-radius: 18px;
		background: var(--hp-bg);
		border: 1px solid var(--hp-border);
		box-shadow: none;
		gap: 4px;
	}

	.hp-menu .sub-menu li {
		width: 100%;
	}

	.hp-menu .sub-menu a {
		width: 100%;
		display: flex;
		padding: 12px 14px;
		border-radius: 14px;
		font-size: 14px;
		line-height: 1.35;
		white-space: normal;
		word-break: normal;
		overflow-wrap: anywhere;
	}

	.hp-header-cta {
		display: none;
	}
}

@media (max-width: 480px) {
	.hp-header-inner {
		min-height: 76px;
	}

	.hp-header-inner .hp-brand-with-logo {
		max-width: 180px;
	}

	.hp-header-inner .hp-site-logo {
		width: 170px;
		max-width: 170px;
	}

	.hp-primary-nav {
		left: 10px;
		right: 10px;
		top: calc(100% + 8px);
		max-height: calc(100vh - 105px);
		border-radius: 20px;
	}

	.hp-menu > li > a {
		font-size: 14px;
		padding: 13px 14px;
	}

	.hp-menu .sub-menu a {
		font-size: 13px;
		padding: 11px 12px;
	}
}

/* Mobile collapsible submenu behaviour */

@media (max-width: 980px) {
	.hp-menu .menu-item-has-children > .sub-menu {
		display: none !important;
	}

	.hp-menu .menu-item-has-children.is-mobile-open > .sub-menu {
		display: grid !important;
	}

	.hp-menu .menu-item-has-children > a::after {
		content: "⌄";
		margin-left: auto;
		transition: transform 0.2s ease;
	}

	.hp-menu .menu-item-has-children.is-mobile-open > a::after {
		transform: rotate(180deg);
	}
}

/* Wintermind Page */

.hp-wintermind-hero .hp-page-hero-inner {
	max-width: 980px;
}

.hp-wintermind-intro-grid,
.hp-wintermind-compare-grid {
	display: grid;
	grid-template-columns: 1.08fr 0.92fr;
	gap: 34px;
	align-items: start;
}

.hp-wintermind-card,
.hp-wintermind-compare-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 32px;
	padding: 38px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-wintermind-card h2,
.hp-wintermind-compare-card h2 {
	margin: 0 0 14px;
	color: var(--hp-navy);
	font-size: clamp(30px, 3vw, 44px);
	line-height: 1.12;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.hp-wintermind-card p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.75;
	font-size: 17px;
}

.hp-wintermind-checks {
	display: grid;
	gap: 14px;
	margin-top: 24px;
}

.hp-wintermind-checks div {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	padding: 16px;
	border-radius: 18px;
	background: var(--hp-bg);
	border: 1px solid var(--hp-border);
}

.hp-wintermind-checks span {
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	border-radius: 50%;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 950;
	font-size: 13px;
}

.hp-wintermind-checks p {
	margin: 0;
	font-size: 15px;
	line-height: 1.6;
}

.hp-wintermind-side-card {
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.18), transparent 35%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	border-radius: 32px;
	padding: 34px;
	color: #ffffff;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.18);
}

.hp-wintermind-side-card h3 {
	margin: 0 0 14px;
	color: #ffffff;
	font-size: 30px;
	line-height: 1.15;
	letter-spacing: -0.04em;
}

.hp-wintermind-side-card p {
	margin: 0 0 18px;
	color: rgba(255, 255, 255, 0.78);
	line-height: 1.75;
}

.hp-wintermind-side-card .hp-button {
	margin-top: 10px;
}

.hp-wintermind-service-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
}

.hp-wintermind-service-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 28px;
	padding: 28px;
	box-shadow: 0 16px 42px rgba(16, 42, 67, 0.06);
	transition: 0.25s ease;
}

.hp-wintermind-service-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 48px rgba(16, 42, 67, 0.10);
	border-color: rgba(31, 143, 138, 0.35);
}

.hp-wintermind-service-card h3 {
	margin: 0 0 10px;
	color: var(--hp-navy);
	font-size: 21px;
	line-height: 1.22;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hp-wintermind-service-card p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.7;
	font-size: 15px;
}

.hp-wintermind-compare-card ul {
	list-style: none;
	padding: 0;
	margin: 22px 0 28px;
	display: grid;
	gap: 12px;
}

.hp-wintermind-compare-card li {
	position: relative;
	padding-left: 30px;
	color: var(--hp-muted);
	line-height: 1.55;
}

.hp-wintermind-compare-card li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 1px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 950;
}

.hp-wintermind-compare-card-alt {
	background:
		radial-gradient(circle at top right, rgba(31, 143, 138, 0.08), transparent 35%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
}

@media (max-width: 980px) {
	.hp-wintermind-intro-grid,
	.hp-wintermind-compare-grid {
		grid-template-columns: 1fr;
	}

	.hp-wintermind-service-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 680px) {
	.hp-wintermind-card,
	.hp-wintermind-side-card,
	.hp-wintermind-compare-card,
	.hp-wintermind-service-card {
		padding: 24px;
		border-radius: 24px;
	}

	.hp-wintermind-service-grid {
		grid-template-columns: 1fr;
	}
}

/* Psychiatry tools RAADS-14 form */
.hppt-options-raads {
	grid-template-columns: 1fr !important;
}

/* ALFI psychiatry tool */
.hppt-section-title {
	margin: 34px 0 14px;
	color: #102a43;
	font-size: 24px;
	line-height: 1.2;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hppt-options-three {
	grid-template-columns: repeat(3, 1fr) !important;
}

@media (max-width: 680px) {
	.hppt-options-three {
		grid-template-columns: 1fr !important;
	}
}

/* ALFI Version 2 matrix and checkbox layout */

.hppt-alfi-matrix {
	background: #f6f8fb;
	border: 1px solid #dfe8f1;
	border-radius: 22px;
	padding: 20px;
	margin: 18px 0;
}

.hppt-alfi-matrix h4 {
	margin: 0 0 14px;
	color: #102a43;
	font-size: 18px;
	line-height: 1.25;
	font-weight: 950;
}

.hppt-alfi-matrix-table {
	display: grid;
	gap: 8px;
}

.hppt-alfi-matrix-head,
.hppt-alfi-matrix-row {
	display: grid;
	grid-template-columns: 160px repeat(4, 1fr);
	gap: 8px;
	align-items: stretch;
}

.hppt-alfi-matrix-head span {
	background: #102a43;
	color: #ffffff;
	border-radius: 12px;
	padding: 10px;
	font-size: 12px;
	font-weight: 900;
	line-height: 1.25;
}

.hppt-alfi-matrix-row strong {
	background: #ffffff;
	border: 1px solid #dfe8f1;
	border-radius: 12px;
	padding: 12px;
	color: #102a43;
	font-size: 14px;
}

.hppt-alfi-matrix-row label {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: #ffffff;
	border: 1px solid #dfe8f1;
	border-radius: 12px;
	padding: 12px;
	cursor: pointer;
	color: #657789;
	font-weight: 800;
}

.hppt-alfi-matrix-row input {
	accent-color: #1f8f8a;
}

.hppt-checkbox-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}

.hppt-checkbox-grid label {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	background: #ffffff;
	border: 1px solid #dfe8f1;
	border-radius: 14px;
	padding: 12px;
	color: #657789;
	line-height: 1.45;
	font-weight: 800;
}

.hppt-checkbox-grid input {
	margin-top: 3px;
	accent-color: #1f8f8a;
}

@media (max-width: 980px) {
	.hppt-alfi-matrix-head,
	.hppt-alfi-matrix-row {
		grid-template-columns: 1fr;
	}

	.hppt-alfi-matrix-head span:first-child {
		display: none;
	}

	.hppt-checkbox-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 680px) {
	.hppt-checkbox-grid {
		grid-template-columns: 1fr;
	}
}

/* Fix Psychiatry Tools checkbox alignment */

.hppt-checkbox-grid label {
	display: flex !important;
	align-items: flex-start !important;
	gap: 10px !important;
	min-height: 52px;
	padding: 13px 14px !important;
	line-height: 1.45 !important;
}

.hppt-checkbox-grid input[type="checkbox"] {
	flex: 0 0 auto !important;
	width: 18px !important;
	height: 18px !important;
	margin: 2px 0 0 0 !important;
	padding: 0 !important;
	accent-color: #1f8f8a;
}

.hppt-checkbox-grid label span {
	display: block;
	line-height: 1.45;
}

/* AQ-50 psychiatry tool */
.hppt-options-aq50 {
	grid-template-columns: repeat(4, 1fr) !important;
}

@media (max-width: 980px) {
	.hppt-options-aq50 {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

@media (max-width: 680px) {
	.hppt-options-aq50 {
		grid-template-columns: 1fr !important;
	}
}

/* =========================================================
   Dedicated Privacy Policy Template
   ========================================================= */

.hp-privacy-page-hero {
	padding: 86px 0 76px;
	background:
		radial-gradient(circle at top right, rgba(31, 143, 138, 0.08), transparent 34%),
		linear-gradient(135deg, #ffffff, #f4fbfb);
	border-bottom: 1px solid var(--hp-border);
}

.hp-privacy-page-hero .hp-container {
	max-width: 1180px;
}

.hp-privacy-hero-inner {
	max-width: 920px;
}

.hp-privacy-hero-inner h1 {
	margin: 18px 0 16px;
	color: var(--hp-navy);
	font-size: clamp(42px, 5vw, 72px);
	line-height: 0.98;
	letter-spacing: -0.065em;
	font-weight: 950;
}

.hp-privacy-hero-inner p {
	max-width: 760px;
	margin: 0;
	color: var(--hp-muted);
	font-size: 18px;
	line-height: 1.75;
}

.hp-privacy-hero-inner .hp-button-row {
	margin-top: 28px;
}

.hp-privacy-page-section {
	padding: 70px 0 96px;
	background: #ffffff;
}

.hp-privacy-page-layout {
	display: grid;
	grid-template-columns: 300px minmax(0, 1fr);
	gap: 38px;
	align-items: start;
	max-width: 1320px;
	margin: 0 auto;
}

.hp-privacy-page-sidebar {
	position: sticky;
	top: 120px;
	display: grid;
	gap: 18px;
}

.hp-privacy-sidebar-card,
.hp-privacy-note-card,
.hp-privacy-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 28px;
	box-shadow: 0 16px 42px rgba(16, 42, 67, 0.06);
}

.hp-privacy-sidebar-card {
	padding: 24px;
}

.hp-privacy-sidebar-card h2 {
	margin: 0 0 16px;
	color: var(--hp-navy);
	font-size: 22px;
	line-height: 1.2;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hp-privacy-sidebar-card nav {
	display: grid;
	gap: 8px;
}

.hp-privacy-sidebar-card nav a {
	display: flex;
	align-items: center;
	padding: 11px 13px;
	border-radius: 14px;
	background: var(--hp-bg);
	color: var(--hp-muted);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.35;
	text-decoration: none;
	transition: 0.2s ease;
}

.hp-privacy-sidebar-card nav a:hover {
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	transform: translateX(3px);
}

.hp-privacy-note-card {
	padding: 22px;
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.16), transparent 38%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	color: #ffffff;
}

.hp-privacy-note-card strong {
	display: block;
	margin-bottom: 8px;
	color: #ffffff;
	font-size: 17px;
	font-weight: 950;
}

.hp-privacy-note-card p {
	margin: 0;
	color: rgba(255, 255, 255, 0.78);
	line-height: 1.65;
	font-size: 14px;
}

.hp-privacy-page-content {
	display: grid;
	gap: 24px;
	min-width: 0;
}

.hp-privacy-card {
	padding: 38px;
	scroll-margin-top: 120px;
}

.hp-privacy-intro {
	background:
		radial-gradient(circle at top right, rgba(31, 143, 138, 0.08), transparent 36%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
}

.hp-privacy-final {
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.14), transparent 38%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
}

.hp-privacy-final .hp-button-row {
	margin-top: 24px;
}

.hp-privacy-card h2 {
	margin: 0 0 16px;
	color: var(--hp-navy);
	font-size: clamp(30px, 3vw, 42px);
	line-height: 1.1;
	letter-spacing: -0.05em;
	font-weight: 950;
}

.hp-privacy-card h3 {
	margin: 26px 0 10px;
	color: var(--hp-navy);
	font-size: 22px;
	line-height: 1.2;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hp-privacy-card p {
	margin: 0 0 16px;
	color: var(--hp-muted);
	font-size: 16px;
	line-height: 1.75;
}

.hp-privacy-card p:last-child {
	margin-bottom: 0;
}

.hp-privacy-card ul {
	margin: 16px 0 20px;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 12px;
}

.hp-privacy-card li {
	position: relative;
	padding-left: 30px;
	color: var(--hp-muted);
	line-height: 1.6;
}

.hp-privacy-card li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 1px;
	width: 21px;
	height: 21px;
	border-radius: 50%;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 950;
}

.hp-privacy-updated {
	display: inline-flex;
	padding: 10px 14px;
	border-radius: 999px;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark) !important;
	font-weight: 900;
	margin-bottom: 18px !important;
}

.hp-privacy-details {
	display: grid;
	gap: 12px;
	margin-top: 18px;
}

.hp-privacy-details div {
	display: grid;
	grid-template-columns: 230px minmax(0, 1fr);
	gap: 16px;
	align-items: center;
	padding: 16px;
	border-radius: 18px;
	background: var(--hp-bg);
	border: 1px solid var(--hp-border);
}

.hp-privacy-details strong {
	color: var(--hp-navy);
	font-weight: 950;
}

.hp-privacy-details span {
	color: var(--hp-muted);
	line-height: 1.55;
	overflow-wrap: anywhere;
}

.hp-privacy-warning {
	margin: 22px 0;
	padding: 20px;
	border-radius: 20px;
	background: #fff8e8;
	border: 1px solid #f0d99f;
	color: #6b5220;
	line-height: 1.7;
}

.hp-privacy-warning strong {
	color: #513b10;
}

/* Tablet */
@media (max-width: 1100px) {
	.hp-privacy-page-layout {
		grid-template-columns: 1fr;
		max-width: 920px;
	}

	.hp-privacy-page-sidebar {
		position: static;
	}

	.hp-privacy-sidebar-card nav {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* Mobile */
@media (max-width: 680px) {
	.hp-privacy-page-hero {
		padding: 52px 0 44px;
	}

	.hp-privacy-hero-inner h1 {
		font-size: clamp(38px, 12vw, 54px);
	}

	.hp-privacy-page-section {
		padding: 42px 0 70px;
	}

	.hp-privacy-card,
	.hp-privacy-sidebar-card,
	.hp-privacy-note-card {
		padding: 22px;
		border-radius: 24px;
	}

	.hp-privacy-sidebar-card nav {
		grid-template-columns: 1fr;
	}

	.hp-privacy-details div {
		grid-template-columns: 1fr;
		gap: 6px;
		align-items: start;
		padding: 14px;
	}

	.hp-privacy-card {
		scroll-margin-top: 95px;
	}

	.hp-privacy-card p,
	.hp-privacy-card li {
		font-size: 15px;
	}

	.hp-privacy-final .hp-button-row .hp-button {
		width: 100%;
	}
}

/* =========================================================
   Terms and Conditions Template
   ========================================================= */

.hp-terms-page-hero {
	padding: 86px 0 76px;
	background:
		radial-gradient(circle at top right, rgba(31, 143, 138, 0.08), transparent 34%),
		linear-gradient(135deg, #ffffff, #f4fbfb);
	border-bottom: 1px solid var(--hp-border);
}

.hp-terms-page-hero .hp-container {
	max-width: 1180px;
}

.hp-terms-hero-inner {
	max-width: 920px;
}

.hp-terms-hero-inner h1 {
	margin: 18px 0 16px;
	color: var(--hp-navy);
	font-size: clamp(42px, 5vw, 72px);
	line-height: 0.98;
	letter-spacing: -0.065em;
	font-weight: 950;
}

.hp-terms-hero-inner p {
	max-width: 760px;
	margin: 0;
	color: var(--hp-muted);
	font-size: 18px;
	line-height: 1.75;
}

.hp-terms-hero-inner .hp-button-row {
	margin-top: 28px;
}

.hp-terms-page-section {
	padding: 70px 0 96px;
	background: #ffffff;
}

.hp-terms-page-layout {
	display: grid;
	grid-template-columns: 300px minmax(0, 1fr);
	gap: 38px;
	align-items: start;
	max-width: 1320px;
	margin: 0 auto;
}

.hp-terms-page-sidebar {
	position: sticky;
	top: 120px;
	display: grid;
	gap: 18px;
}

.hp-terms-sidebar-card,
.hp-terms-notice-card,
.hp-terms-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 28px;
	box-shadow: 0 16px 42px rgba(16, 42, 67, 0.06);
}

.hp-terms-sidebar-card {
	padding: 24px;
}

.hp-terms-sidebar-card h2 {
	margin: 0 0 16px;
	color: var(--hp-navy);
	font-size: 22px;
	line-height: 1.2;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.hp-terms-sidebar-card nav {
	display: grid;
	gap: 8px;
}

.hp-terms-sidebar-card nav a {
	display: flex;
	align-items: center;
	padding: 11px 13px;
	border-radius: 14px;
	background: var(--hp-bg);
	color: var(--hp-muted);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.35;
	text-decoration: none;
	transition: 0.2s ease;
}

.hp-terms-sidebar-card nav a:hover {
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	transform: translateX(3px);
}

.hp-terms-notice-card {
	padding: 22px;
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.16), transparent 38%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	color: #ffffff;
}

.hp-terms-notice-card strong {
	display: block;
	margin-bottom: 8px;
	color: #ffffff;
	font-size: 17px;
	font-weight: 950;
}

.hp-terms-notice-card p {
	margin: 0;
	color: rgba(255, 255, 255, 0.78);
	line-height: 1.65;
	font-size: 14px;
}

.hp-terms-page-content {
	display: grid;
	gap: 24px;
	min-width: 0;
}

.hp-terms-card {
	padding: 38px;
	scroll-margin-top: 120px;
}

.hp-terms-intro {
	background:
		radial-gradient(circle at top right, rgba(31, 143, 138, 0.08), transparent 36%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
}

.hp-terms-final {
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.14), transparent 38%),
		linear-gradient(135deg, #ffffff, #f8fbfd);
}

.hp-terms-final .hp-button-row {
	margin-top: 24px;
}

.hp-terms-card h2 {
	margin: 0 0 16px;
	color: var(--hp-navy);
	font-size: clamp(30px, 3vw, 42px);
	line-height: 1.1;
	letter-spacing: -0.05em;
	font-weight: 950;
}

.hp-terms-card p {
	margin: 0 0 16px;
	color: var(--hp-muted);
	font-size: 16px;
	line-height: 1.75;
}

.hp-terms-card ul {
	margin: 16px 0 20px;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 12px;
}

.hp-terms-card li {
	position: relative;
	padding-left: 30px;
	color: var(--hp-muted);
	line-height: 1.6;
}

.hp-terms-card li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 1px;
	width: 21px;
	height: 21px;
	border-radius: 50%;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 950;
}

.hp-terms-updated {
	display: inline-flex;
	padding: 10px 14px;
	border-radius: 999px;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark) !important;
	font-weight: 900;
	margin-bottom: 18px !important;
}

.hp-terms-details {
	display: grid;
	gap: 12px;
	margin-top: 18px;
	margin-bottom: 18px;
}

.hp-terms-details div {
	display: grid;
	grid-template-columns: 230px minmax(0, 1fr);
	gap: 16px;
	align-items: center;
	padding: 16px;
	border-radius: 18px;
	background: var(--hp-bg);
	border: 1px solid var(--hp-border);
}

.hp-terms-details strong {
	color: var(--hp-navy);
	font-weight: 950;
}

.hp-terms-details span {
	color: var(--hp-muted);
	line-height: 1.55;
	overflow-wrap: anywhere;
}

.hp-terms-warning {
	margin: 22px 0;
	padding: 20px;
	border-radius: 20px;
	background: #fff8e8;
	border: 1px solid #f0d99f;
	color: #6b5220;
	line-height: 1.7;
}

/* Tablet */
@media (max-width: 1100px) {
	.hp-terms-page-layout {
		grid-template-columns: 1fr;
		max-width: 920px;
	}

	.hp-terms-page-sidebar {
		position: static;
	}

	.hp-terms-sidebar-card nav {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* Mobile */
@media (max-width: 680px) {
	.hp-terms-page-hero {
		padding: 52px 0 44px;
	}

	.hp-terms-hero-inner h1 {
		font-size: clamp(38px, 12vw, 54px);
	}

	.hp-terms-page-section {
		padding: 42px 0 70px;
	}

	.hp-terms-card,
	.hp-terms-sidebar-card,
	.hp-terms-notice-card {
		padding: 22px;
		border-radius: 24px;
	}

	.hp-terms-sidebar-card nav {
		grid-template-columns: 1fr;
	}

	.hp-terms-details div {
		grid-template-columns: 1fr;
		gap: 6px;
		align-items: start;
		padding: 14px;
	}

	.hp-terms-card p,
	.hp-terms-card li {
		font-size: 15px;
	}

	.hp-terms-final .hp-button-row .hp-button {
		width: 100%;
	}
}
/* =========================================================
   Homepage ADHD / Autism Hero Refinement
   Replace previous hp-neuro-hero image and sizing blocks
   ========================================================= */

/* Better matching hero image */
/* Homepage hero image - Dr S Hashmi */
.hp-neuro-hero-image {
	background:
		linear-gradient(rgba(16, 42, 67, 0.10), rgba(16, 42, 67, 0.34)),
		url("../images/dr-s-hashmi.jpg") !important;
	background-size: cover !important;
	background-position: center top !important;
	background-repeat: no-repeat !important;
}

/* Desktop hero balance */
.hp-neuro-hero .hp-hero-grid {
	grid-template-columns: 1fr 1fr !important;
	gap: 44px !important;
	align-items: center !important;
}

.hp-neuro-hero .hp-hero-content {
	padding: 30px !important;
}

.hp-neuro-hero .hp-hero-content h1 {
	max-width: 700px !important;
	font-size: clamp(36px, 3.4vw, 50px) !important;
	line-height: 1.08 !important;
	letter-spacing: -0.045em !important;
}

.hp-neuro-hero .hp-hero-content p {
	max-width: 680px !important;
	font-size: 17px !important;
	line-height: 1.7 !important;
}

.hp-neuro-hero .hp-kicker {
	font-size: 14px !important;
}

.hp-neuro-hero .hp-button {
	min-height: 46px !important;
	padding: 12px 20px !important;
	font-size: 14px !important;
}

.hp-neuro-hero .hp-hero-stats {
	gap: 12px !important;
}

.hp-neuro-hero .hp-hero-stats div {
	padding: 16px !important;
}

.hp-neuro-hero .hp-hero-stats strong {
	font-size: 20px !important;
	line-height: 1.1 !important;
}

.hp-neuro-hero .hp-hero-stats span {
	font-size: 13px !important;
	line-height: 1.45 !important;
}

.hp-neuro-hero .hp-hero-panel {
	min-height: 390px !important;
}

.hp-neuro-hero .hp-hero-card strong {
	font-size: 18px !important;
	line-height: 1.35 !important;
}

.hp-neuro-hero .hp-hero-card span {
	font-size: 14px !important;
	line-height: 1.6 !important;
}

/* Tablet */
@media (max-width: 980px) {
	.hp-neuro-hero .hp-hero-grid {
		grid-template-columns: 1fr !important;
		gap: 30px !important;
	}

	.hp-neuro-hero .hp-hero-content h1 {
		font-size: clamp(34px, 6vw, 44px) !important;
		line-height: 1.1 !important;
	}

	.hp-neuro-hero .hp-hero-content p {
		font-size: 16px !important;
	}

	.hp-neuro-hero .hp-hero-panel {
		min-height: 360px !important;
	}
}

/* Mobile */
@media (max-width: 680px) {
	.hp-neuro-hero .hp-hero-content {
		padding: 24px !important;
	}

	.hp-neuro-hero .hp-hero-content h1 {
		font-size: clamp(30px, 8.5vw, 38px) !important;
		line-height: 1.1 !important;
		letter-spacing: -0.04em !important;
	}

	.hp-neuro-hero .hp-hero-content p {
		font-size: 16px !important;
		line-height: 1.7 !important;
	}

	.hp-neuro-hero .hp-button-row {
		gap: 10px !important;
	}

	.hp-neuro-hero .hp-hero-stats {
		grid-template-columns: 1fr !important;
	}

	.hp-neuro-hero .hp-hero-panel {
		min-height: 320px !important;
	}

	.hp-neuro-hero .hp-hero-card strong {
		font-size: 16px !important;
	}

	.hp-neuro-hero .hp-hero-card span {
		font-size: 13px !important;
	}
}

/* =========================================================
   Homepage Hero - Equal Height Layout with Dr Hashmi Photo
   ========================================================= */

.hp-neuro-hero .hp-hero-grid {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
	gap: 44px !important;
	align-items: stretch !important;
}

.hp-neuro-hero .hp-hero-content,
.hp-neuro-hero .hp-hero-panel {
	height: 100% !important;
}

/* Left content card */
.hp-neuro-hero .hp-hero-content {
	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-start !important;
}

/* Right image panel */
.hp-neuro-hero .hp-hero-panel {
	position: relative !important;
	align-self: stretch !important;
	display: block !important;
	min-height: 100% !important;
	height: auto !important;
	border-radius: 32px !important;
	overflow: hidden !important;
	background: #edf2f5 !important;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.12) !important;
}

/* Make the image fill the full panel height */
.hp-neuro-hero-image {
	position: absolute !important;
	inset: 0 !important;
	background:
		linear-gradient(rgba(16, 42, 67, 0.02), rgba(16, 42, 67, 0.10)),
		url("../images/dr-s-hashmi.jpg") !important;
	background-size: cover !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-color: #edf2f5 !important;
}

/* Overlay card */
.hp-neuro-hero .hp-hero-card {
	position: absolute !important;
	left: 22px !important;
	right: 22px !important;
	bottom: 22px !important;
	padding: 22px !important;
	border-radius: 22px !important;
	background: rgba(255, 255, 255, 0.94) !important;
	box-shadow: 0 18px 44px rgba(16, 42, 67, 0.14) !important;
	z-index: 2 !important;
}

.hp-neuro-hero .hp-hero-card strong {
	display: block !important;
	font-size: 18px !important;
	line-height: 1.35 !important;
	margin-bottom: 8px !important;
}

.hp-neuro-hero .hp-hero-card span {
	display: block !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
}

/* Slightly reduce the left title size if needed */
.hp-neuro-hero .hp-hero-content h1 {
	font-size: clamp(36px, 3.6vw, 52px) !important;
	line-height: 1.08 !important;
	letter-spacing: -0.045em !important;
}

/* Tablet */
@media (max-width: 980px) {
	.hp-neuro-hero .hp-hero-grid {
		grid-template-columns: 1fr !important;
		gap: 28px !important;
	}

	.hp-neuro-hero .hp-hero-panel {
		min-height: 560px !important;
		height: 560px !important;
	}

	.hp-neuro-hero-image {
		background-size: cover !important;
		background-position: center top !important;
	}

	.hp-neuro-hero .hp-hero-content h1 {
		font-size: clamp(34px, 6vw, 44px) !important;
	}
}

/* Mobile */
@media (max-width: 680px) {
	.hp-neuro-hero .hp-hero-panel {
		min-height: 430px !important;
		height: 430px !important;
		border-radius: 24px !important;
	}

	.hp-neuro-hero .hp-hero-card {
		left: 14px !important;
		right: 14px !important;
		bottom: 14px !important;
		padding: 16px !important;
		border-radius: 18px !important;
	}

	.hp-neuro-hero .hp-hero-card strong {
		font-size: 16px !important;
	}

	.hp-neuro-hero .hp-hero-card span {
		font-size: 13px !important;
	}

	.hp-neuro-hero .hp-hero-content h1 {
		font-size: clamp(30px, 8.4vw, 38px) !important;
		line-height: 1.1 !important;
	}
}

/* Fees page email quotation note */

.hp-fee-email-note {
	margin-top: 18px !important;
	padding: 16px 18px;
	border-radius: 18px;
	background: var(--hp-soft-teal);
	border: 1px solid rgba(31, 143, 138, 0.18);
	color: var(--hp-muted);
	line-height: 1.7;
}

.hp-fee-email-note a {
	color: var(--hp-teal-dark);
	font-weight: 900;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Private Psychiatric Assessment fee note */

.hp-assessment-fee-note {
	margin: 18px 0 22px;
	padding: 16px 18px;
	border-radius: 18px;
	background: var(--hp-soft-teal);
	border: 1px solid rgba(31, 143, 138, 0.18);
	color: var(--hp-muted);
	line-height: 1.7;
}

.hp-assessment-fee-note a {
	color: var(--hp-teal-dark);
	font-weight: 900;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Center the 4 homepage assessment standard cards - stronger fix */

.hp-section .hp-pathway-grid-4 {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(180px, 220px)) !important;
	gap: 18px !important;
	max-width: 980px !important;
	margin: 0 auto !important;
	justify-content: center !important;
}

.hp-section .hp-pathway-grid-4 .hp-pathway-card {
	text-align: center !important;
}

@media (max-width: 980px) {
	.hp-section .hp-pathway-grid-4 {
		grid-template-columns: repeat(2, minmax(180px, 240px)) !important;
	}
}

@media (max-width: 620px) {
	.hp-section .hp-pathway-grid-4 {
		grid-template-columns: 1fr !important;
		max-width: 360px !important;
	}
}

/* Homepage call button */

.hp-button-call {
	background: #ffffff !important;
	color: var(--hp-teal-dark) !important;
	border: 1px solid rgba(31, 143, 138, 0.35) !important;
	box-shadow: 0 12px 28px rgba(16, 42, 67, 0.06) !important;
}

.hp-button-call:hover {
	background: var(--hp-soft-teal) !important;
	color: var(--hp-teal-dark) !important;
	transform: translateY(-1px);
}

/* =========================================================
   Health Private v1.1.0 - Bupa recognition & international care
   ========================================================= */
.hp-bupa-home-section,
.hp-bupa-hero {
	position: relative;
}

.hp-bupa-home-grid,
.hp-bupa-intro-grid,
.hp-bupa-cover-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
	gap: 40px;
	align-items: center;
}

.hp-bupa-home-card,
.hp-bupa-status-card {
	background: #fff;
	border: 1px solid rgba(15, 74, 74, .14);
	border-radius: 24px;
	padding: 32px;
	box-shadow: 0 18px 50px rgba(18, 54, 63, .09);
}

.hp-bupa-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 78px;
	height: 42px;
	padding: 0 16px;
	margin-bottom: 18px;
	border-radius: 10px;
	background: #0b5963;
	color: #fff;
	font-weight: 800;
	font-size: .9rem;
	letter-spacing: .12em;
}

.hp-bupa-home-card h3,
.hp-bupa-status-card h3 {
	margin-top: 0;
}

.hp-bupa-checks {
	list-style: none;
	padding: 0;
	margin: 20px 0 0;
}

.hp-bupa-checks li {
	position: relative;
	padding: 0 0 14px 30px;
	line-height: 1.55;
}

.hp-bupa-checks li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 0;
	font-weight: 800;
	color: #0b7772;
}

.hp-international-banner,
.hp-international-fees-card {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 36px;
	align-items: center;
	background: #fff;
	border: 1px solid rgba(15, 74, 74, .13);
	border-radius: 24px;
	padding: 34px 38px;
	box-shadow: 0 16px 44px rgba(18, 54, 63, .07);
}

.hp-international-section .hp-international-banner {
	background: linear-gradient(135deg, #ffffff 0%, #f2fbfa 100%);
}

.hp-international-actions {
	display: flex;
	flex-direction: column;
	gap: 12px;
	min-width: 175px;
}

.hp-international-fee-note {
	margin-bottom: 0;
}

.hp-button-whatsapp {
	background: #1f7658;
	color: #fff;
	border-color: #1f7658;
}

.hp-button-whatsapp:hover,
.hp-button-whatsapp:focus {
	background: #185d46;
	border-color: #185d46;
	color: #fff;
}

.hp-international-fees-strip {
	padding-bottom: 0;
}

.hp-international-fees-card h2 {
	margin-bottom: 10px;
}

.hp-international-fees-card p {
	margin-bottom: 0;
}

.hp-bupa-hero .hp-page-hero-inner {
	max-width: 920px;
}

.hp-bupa-status-card p {
	margin-bottom: 0;
}

.hp-bupa-pathway .hp-pathway-card strong {
	display: block;
	margin-bottom: 8px;
}

.hp-bupa-cover-grid {
	align-items: stretch;
}

.hp-bupa-notice {
	margin: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.hp-bupa-international {
	background: linear-gradient(135deg, #f5fbfb 0%, #ffffff 100%);
}

@media (max-width: 900px) {
	.hp-bupa-home-grid,
	.hp-bupa-intro-grid,
	.hp-bupa-cover-grid,
	.hp-international-banner,
	.hp-international-fees-card {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.hp-international-actions {
		flex-direction: row;
		flex-wrap: wrap;
		min-width: 0;
	}
}

@media (max-width: 600px) {
	.hp-bupa-home-card,
	.hp-bupa-status-card,
	.hp-international-banner,
	.hp-international-fees-card {
		padding: 24px 20px;
		border-radius: 18px;
	}

	.hp-international-actions {
		flex-direction: column;
	}

	.hp-international-actions .hp-button {
		width: 100%;
		text-align: center;
	}
}

/* =========================================================
   Health Private v1.2.0 - Motion & interaction enhancement
   Adapted for a calm clinical experience: restrained motion,
   accessible fallbacks and touch-safe interactions.
   ========================================================= */
:root {
	--hp-motion-ease: cubic-bezier(.22, .75, .22, 1);
	--hp-motion-fast: 240ms;
	--hp-motion-medium: 680ms;
}

/* Scrolled header: a little more definition without changing the layout. */
.hp-site-header {
	transition: background-color .3s ease, border-color .3s ease, box-shadow .3s ease;
}

.hp-site-header.is-scrolled {
	background: rgba(255, 255, 255, .97);
	border-bottom-color: rgba(188, 204, 218, .9);
	box-shadow: 0 12px 34px rgba(16, 42, 67, .08);
}

.hp-site-header::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -1px;
	width: min(1180px, calc(100% - 36px));
	height: 2px;
	background: linear-gradient(90deg, transparent, rgba(31, 143, 138, .5), transparent);
	transform: translateX(-50%) scaleX(0);
	transform-origin: center;
	transition: transform .55s var(--hp-motion-ease);
	pointer-events: none;
}

.hp-site-header.is-scrolled::after {
	transform: translateX(-50%) scaleX(1);
}

/* Scroll reveals. JS only adds the pending state to elements it controls. */
.hp-reveal-pending {
	opacity: 0;
	transform: translate3d(0, 22px, 0);
	filter: blur(2px);
}

.hp-reveal-visible {
	opacity: 1;
	transform: translate3d(0, 0, 0);
	filter: blur(0);
	transition:
		opacity .7s ease var(--hp-reveal-delay, 0ms),
		transform .78s var(--hp-motion-ease) var(--hp-reveal-delay, 0ms),
		filter .6s ease var(--hp-reveal-delay, 0ms);
}

/* Heading accent arrives after the heading itself. */
.hp-section-heading h2::after,
.hp-page-content > h2::after {
	content: "";
	display: block;
	width: 74px;
	height: 3px;
	margin: 18px auto 0;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--hp-teal), var(--hp-gold));
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform .75s var(--hp-motion-ease) .18s;
}

.hp-section-heading.hp-reveal-visible h2::after,
.hp-page-content.hp-reveal-visible > h2::after {
	transform: scaleX(1);
}

/* Keep left-aligned headings visually anchored to the text. */
.hp-section-heading:not(.hp-center) h2::after,
.hp-page-content > h2::after {
	margin-left: 0;
	margin-right: 0;
}

/* Refined controls. */
.hp-button,
.hp-header-cta,
.hp-menu a {
	transition:
		transform var(--hp-motion-fast) var(--hp-motion-ease),
		box-shadow var(--hp-motion-fast) ease,
		background-color var(--hp-motion-fast) ease,
		border-color var(--hp-motion-fast) ease,
		color var(--hp-motion-fast) ease;
}

@media (hover: hover) and (pointer: fine) {
	.hp-button:hover,
	.hp-header-cta:hover {
		transform: translateY(-3px);
	}

	.hp-menu > li > a:hover {
		transform: translateY(-1px);
	}

	.hp-service-card,
	.hp-mini-card,
	.hp-pathway-card,
	.hp-service-list-card,
	.hp-professional-card,
	.hp-profile-expertise-card,
	.hp-doctor-card,
	.hp-bupa-home-card,
	.hp-bupa-status-card,
	.hp-international-banner,
	.hp-international-fees-card,
	.hp-profile-panel,
	.hp-process-box {
		transition:
			transform .32s var(--hp-motion-ease),
			box-shadow .32s ease,
			border-color .32s ease;
	}

	.hp-service-card:hover,
	.hp-mini-card:hover,
	.hp-pathway-card:hover,
	.hp-service-list-card:hover,
	.hp-professional-card:hover,
	.hp-profile-expertise-card:hover,
	.hp-doctor-card:hover,
	.hp-bupa-home-card:hover,
	.hp-bupa-status-card:hover,
	.hp-international-banner:hover,
	.hp-international-fees-card:hover,
	.hp-process-box:hover {
		transform: translateY(-5px);
		box-shadow: 0 22px 50px rgba(16, 42, 67, .11);
		border-color: rgba(31, 143, 138, .28);
	}
}

/* Homepage hero depth. Only decorative/image layers move. */
.hp-hero::after {
	transform: translate3d(0, var(--hp-hero-orb-y, 0px), 0);
	will-change: transform;
}

.hp-hero-image {
	transform: translate3d(0, var(--hp-hero-image-y, 0px), 0) scale(1.035);
	will-change: transform;
}

/* Give hero cards a subtle breathing depth without distracting motion. */
.hp-hero-card {
	transition: transform .45s var(--hp-motion-ease), box-shadow .45s ease;
}

@media (hover: hover) and (pointer: fine) {
	.hp-hero-panel:hover .hp-hero-card {
		transform: translateY(-4px);
		box-shadow: 0 24px 54px rgba(16, 42, 67, .22);
	}
}

/* Reveal animation should never compromise accessibility. */
@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.hp-reveal-pending,
	.hp-reveal-visible {
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
		transition: none !important;
	}

	.hp-site-header,
	.hp-site-header::after,
	.hp-button,
	.hp-header-cta,
	.hp-menu a,
	.hp-hero::after,
	.hp-hero-image,
	.hp-hero-card,
	.hp-section-heading h2::after,
	.hp-page-content > h2::after {
		transition: none !important;
		animation: none !important;
	}

	.hp-hero::after,
	.hp-hero-image {
		transform: none !important;
	}
}


/* =========================================================
   Health Private v1.2.1 - Header fit + hero Bupa recognition
   ========================================================= */

/* Keep the desktop navigation comfortably on one line after adding Bupa. */
@media (min-width: 981px) {
    .hp-header-inner {
        gap: 14px;
    }

    .hp-header-inner .hp-brand-with-logo {
        max-width: 315px;
    }

    .hp-header-inner .hp-site-logo {
        width: 220px;
        max-width: 220px;
    }

    .hp-primary-nav {
        min-width: 0;
        flex: 1 1 auto;
    }

    .hp-menu {
        justify-content: flex-end;
        flex-wrap: nowrap;
        gap: 1px;
    }

    .hp-menu > li > a {
        padding: 12px 10px;
        font-size: 13.5px;
        white-space: nowrap;
    }

    .hp-header-cta {
        flex: 0 0 auto;
        padding-left: 16px;
        padding-right: 16px;
        white-space: nowrap;
    }
}

/* Bupa recognition inside the homepage clinician image card. */
.hp-hero-bupa-badge {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    width: fit-content;
    max-width: 100%;
    margin: 0 0 12px;
    padding: 7px 11px 7px 8px;
    border: 1px solid rgba(31, 143, 138, 0.20);
    border-radius: 999px;
    background: rgba(228, 247, 245, 0.96);
    color: var(--hp-teal-dark);
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.hp-hero-bupa-mark {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 4px 10px;
    border-radius: 999px;
    background: var(--hp-teal);
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 900;
    line-height: 1 !important;
    letter-spacing: 0.01em;
}

.hp-hero-bupa-copy {
    color: var(--hp-teal-dark) !important;
    font-size: 12.5px !important;
    font-weight: 800;
    line-height: 1.25 !important;
}

.hp-hero-bupa-badge:hover {
    transform: translateY(-1px);
    background: #ffffff;
    box-shadow: 0 8px 20px rgba(16, 42, 67, 0.10);
}

@media (max-width: 680px) {
    .hp-hero-bupa-badge {
        border-radius: 16px;
        align-items: flex-start;
    }

    .hp-hero-bupa-copy {
        font-size: 12px !important;
    }
}

/* =========================================================
   Health Private v1.2.4 - Bupa Platinum & Open Referral
   ========================================================= */
.hp-bupa-status-stack {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 18px;
}

.hp-bupa-status-stack .hp-bupa-badge {
	margin-bottom: 0;
}

.hp-bupa-badge--platinum {
	background: linear-gradient(135deg, #0b5963 0%, #103f48 100%);
	letter-spacing: .07em;
}

.hp-bupa-badge--open-referral {
	background: #eaf7f5;
	border: 1px solid rgba(11, 89, 99, .18);
	color: #0b5963;
	letter-spacing: .05em;
}

@media (max-width: 600px) {
	.hp-bupa-status-stack {
		gap: 8px;
	}

	.hp-bupa-status-stack .hp-bupa-badge {
		height: auto;
		min-height: 40px;
		padding: 8px 12px;
		font-size: .78rem;
	}
}


/* Health Private v1.2.5 - About page Bupa Platinum/Open Referral profile update */


/* Initial Consultation Booking Page / Semble */

.hp-booking-hero .hp-page-hero-inner {
	max-width: 980px;
}

.hp-booking-intro-grid {
	display: grid;
	grid-template-columns: 1.08fr 0.92fr;
	gap: 34px;
	align-items: start;
}

.hp-booking-intro-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 32px;
	padding: 38px;
	box-shadow: 0 18px 48px rgba(16, 42, 67, 0.07);
}

.hp-booking-intro-card h2 {
	margin: 0 0 14px;
	color: var(--hp-navy);
	font-size: clamp(30px, 3vw, 44px);
	line-height: 1.12;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.hp-booking-intro-card > p {
	margin: 0;
	color: var(--hp-muted);
	line-height: 1.75;
	font-size: 17px;
}

.hp-booking-checks {
	display: grid;
	gap: 14px;
	margin-top: 24px;
}

.hp-booking-checks div {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	padding: 16px;
	border-radius: 18px;
	background: var(--hp-bg);
	border: 1px solid var(--hp-border);
}

.hp-booking-checks span {
	width: 27px;
	height: 27px;
	flex: 0 0 27px;
	border-radius: 50%;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 950;
	font-size: 13px;
}

.hp-booking-checks p {
	margin: 1px 0 0;
	color: var(--hp-muted);
	font-size: 15px;
	line-height: 1.6;
}

.hp-booking-side-card {
	background:
		radial-gradient(circle at top right, rgba(201, 162, 77, 0.18), transparent 35%),
		linear-gradient(135deg, var(--hp-navy), var(--hp-navy-soft));
	border-radius: 32px;
	padding: 34px;
	color: #ffffff;
	box-shadow: 0 24px 70px rgba(16, 42, 67, 0.18);
}

.hp-booking-side-card h3 {
	margin: 0 0 14px;
	color: #ffffff;
	font-size: 30px;
	line-height: 1.15;
	letter-spacing: -0.04em;
}

.hp-booking-side-card p {
	margin: 0 0 24px;
	color: rgba(255, 255, 255, 0.80);
	line-height: 1.75;
}

.hp-booking-only-notice {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	margin: 0 auto 22px;
	max-width: 980px;
	padding: 18px 20px;
	border-radius: 20px;
	background: #fff8e8;
	border: 1px solid rgba(201, 162, 77, 0.45);
	color: var(--hp-navy);
}

.hp-booking-only-notice strong {
	flex: 0 0 auto;
	font-weight: 950;
}

.hp-booking-only-notice span {
	color: var(--hp-muted);
	line-height: 1.55;
}

.hp-semble-booking-card {
	max-width: 1180px;
	margin: 0 auto;
}

.hp-semble-booking-header {
	align-items: center;
}

.hp-semble-open-button {
	flex: 0 0 auto;
}

.hp-semble-booking-wrap iframe {
	display: block;
	min-height: 680px;
	height: 720px;
}

.hp-booking-fallback-note {
	margin: 15px 6px 3px;
	color: var(--hp-muted);
	font-size: 14px;
	line-height: 1.6;
	text-align: center;
}

.hp-booking-fallback-note a {
	font-weight: 850;
}

.hp-booking-info-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px;
	max-width: 1180px;
	margin: 28px auto;
}

.hp-booking-info-card {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 24px;
	padding: 26px;
	box-shadow: 0 12px 34px rgba(16, 42, 67, 0.05);
}

.hp-booking-info-card h3 {
	margin: 5px 0 10px;
	color: var(--hp-navy);
	font-size: 24px;
	letter-spacing: -0.03em;
}

.hp-booking-info-card p {
	margin: 0 0 14px;
	color: var(--hp-muted);
	line-height: 1.7;
}

.hp-booking-info-card a {
	font-weight: 900;
}

@media (max-width: 980px) {
	.hp-booking-intro-grid,
	.hp-booking-info-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.hp-booking-intro-card,
	.hp-booking-side-card,
	.hp-booking-info-card {
		padding: 24px;
		border-radius: 24px;
	}

	.hp-booking-only-notice {
		display: block;
		padding: 16px;
	}

	.hp-booking-only-notice strong {
		display: block;
		margin-bottom: 6px;
	}

	.hp-semble-booking-header {
		align-items: stretch;
		flex-direction: column;
	}

	.hp-semble-open-button {
		width: 100%;
		box-sizing: border-box;
		text-align: center;
	}

	.hp-semble-booking-wrap iframe {
		min-height: 760px;
		height: 820px;
	}
}


/* v1.2.7 booking navigation polish */
/* Desktop uses the dedicated header CTA; the menu copy is reserved for mobile. */
.hp-menu > li.hp-booking-menu-item {
	display: none;
}

@media (max-width: 980px) {
	.hp-menu > li.hp-booking-menu-item {
		display: block;
	}

	.hp-menu > li.hp-booking-menu-item > a {
		background: var(--hp-teal);
		color: #ffffff;
		font-weight: 900;
	}

	.hp-menu > li.hp-booking-menu-item > a:hover,
	.hp-menu > li.hp-booking-menu-item.current-menu-item > a {
		background: var(--hp-teal-dark);
		color: #ffffff;
	}
}

/* v1.2.9 ACP360 patient feedback page */
.hp-feedback-hero .hp-page-hero-inner {
	max-width: 980px;
}

.hp-feedback-intro-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.55fr) minmax(300px, .75fr);
	gap: 34px;
	align-items: start;
}

.hp-feedback-source-card {
	background: linear-gradient(145deg, #f3fbfa 0%, #ffffff 100%);
	border: 1px solid var(--hp-border);
	border-radius: 24px;
	padding: 26px;
	box-shadow: 0 16px 38px rgba(16, 42, 67, 0.07);
}

.hp-feedback-source-label,
.hp-feedback-acp-label {
	display: inline-flex;
	align-items: center;
	border-radius: 999px;
	background: #e6f7f5;
	color: var(--hp-teal-dark);
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .02em;
	padding: 7px 10px;
}

.hp-feedback-source-card h3 {
	margin: 16px 0 8px;
	color: var(--hp-navy);
	font-size: 25px;
}

.hp-feedback-source-card p {
	color: var(--hp-muted);
	margin: 0 0 14px;
}

.hp-feedback-source-card ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.hp-feedback-source-card li {
	padding: 10px 0;
	border-top: 1px solid var(--hp-border);
	font-weight: 750;
	color: var(--hp-navy);
}

.hp-feedback-score-summary {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	margin: 30px 0;
}

.hp-feedback-score-summary > div {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 20px;
	padding: 24px 20px;
	text-align: center;
	box-shadow: 0 10px 28px rgba(16, 42, 67, 0.04);
}

.hp-feedback-score-summary strong {
	display: block;
	font-size: 34px;
	line-height: 1;
	color: var(--hp-teal-dark);
	letter-spacing: -0.04em;
}

.hp-feedback-score-summary span {
	display: block;
	margin-top: 9px;
	color: var(--hp-muted);
	font-size: 13px;
	font-weight: 800;
	line-height: 1.4;
}

.hp-feedback-table-wrap {
	overflow-x: auto;
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 22px;
	box-shadow: 0 14px 34px rgba(16, 42, 67, 0.05);
}

.hp-feedback-table {
	width: 100%;
	border-collapse: collapse;
	min-width: 790px;
}

.hp-feedback-table th,
.hp-feedback-table td {
	padding: 15px 17px;
	text-align: left;
	border-bottom: 1px solid var(--hp-border);
	vertical-align: middle;
}

.hp-feedback-table th {
	background: #f3f8f8;
	color: var(--hp-navy);
	font-size: 13px;
	font-weight: 900;
}

.hp-feedback-table td {
	color: #314947;
	font-size: 14px;
}

.hp-feedback-table tbody tr:last-child td {
	border-bottom: 0;
}

.hp-feedback-strength {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #0a6c5f;
	font-weight: 850;
	white-space: nowrap;
}

.hp-feedback-neutral {
	color: var(--hp-muted);
}

.hp-feedback-comments-grid {
	columns: 2;
	column-gap: 22px;
	margin-top: 34px;
}

.hp-feedback-comment-card {
	break-inside: avoid;
	page-break-inside: avoid;
	display: inline-block;
	width: 100%;
	box-sizing: border-box;
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 22px;
	padding: 23px;
	margin: 0 0 22px;
	box-shadow: 0 12px 30px rgba(16, 42, 67, 0.055);
}

.hp-feedback-comment-top {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	margin-bottom: 16px;
}

.hp-feedback-patient-number {
	color: var(--hp-navy);
	font-size: 14px;
	font-weight: 950;
}

.hp-feedback-comment-card blockquote {
	margin: 0;
	padding: 0;
	border: 0;
	color: #314947;
	font-size: 15px;
	line-height: 1.75;
}

.hp-feedback-comment-card blockquote p {
	margin: 0 0 12px;
}

.hp-feedback-comment-card blockquote p:last-child {
	margin-bottom: 0;
}

.hp-feedback-comment-card--long blockquote {
	font-size: 14px;
}

.hp-feedback-disclaimer {
	margin-top: 18px;
	padding: 18px 20px;
	background: #fff8ea;
	border: 1px solid #efd79a;
	border-radius: 18px;
	color: #5c4822;
	line-height: 1.65;
}

.hp-feedback-disclaimer strong {
	color: #3f3116;
}

@media (max-width: 980px) {
	.hp-feedback-intro-grid,
	.hp-feedback-score-summary {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.hp-feedback-intro-grid,
	.hp-feedback-score-summary {
		grid-template-columns: 1fr;
	}

	.hp-feedback-comments-grid {
		columns: 1;
	}

	.hp-feedback-comment-top {
		align-items: flex-start;
		flex-direction: column;
	}

	.hp-feedback-comment-card,
	.hp-feedback-source-card {
		border-radius: 18px;
		padding: 20px;
	}
}

/* v1.3.0 Understanding ADHD resource */
.hp-adhd-resource-hero .hp-page-hero-inner {
	max-width: 980px;
}

.hp-anchor-section {
	scroll-margin-top: 130px;
}

.hp-adhd-resource-intro-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
	gap: 34px;
	align-items: start;
}

.hp-adhd-resource-note,
.hp-adhd-callout,
.hp-adhd-reading,
.hp-adhd-exam-box {
	background: linear-gradient(145deg, #f1fbfa 0%, #ffffff 100%);
	border: 1px solid var(--hp-border);
	border-radius: 24px;
	padding: 26px;
	box-shadow: 0 14px 34px rgba(16, 42, 67, 0.055);
}

.hp-adhd-resource-note strong {
	display: block;
	color: var(--hp-navy);
	font-size: 20px;
	margin-bottom: 8px;
}

.hp-adhd-resource-note p,
.hp-adhd-callout p,
.hp-adhd-reading p {
	color: var(--hp-muted);
}

.hp-adhd-resource-note a,
.hp-adhd-learning-note a,
.hp-adhd-resource-links a,
.hp-adhd-reading a,
.hp-text-link {
	color: var(--hp-teal-dark);
	font-weight: 850;
}

.hp-adhd-resource-nav {
	margin-top: 32px;
	display: flex;
	gap: 9px;
	flex-wrap: wrap;
	align-items: center;
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 22px;
	padding: 16px;
	box-shadow: 0 10px 28px rgba(16, 42, 67, 0.045);
}

.hp-adhd-resource-nav > span {
	font-size: 12px;
	font-weight: 950;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--hp-muted);
	padding: 8px 10px;
}

.hp-adhd-resource-nav a {
	display: inline-flex;
	align-items: center;
	min-height: 36px;
	padding: 7px 12px;
	border-radius: 999px;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	font-size: 13px;
	font-weight: 800;
	transition: .2s ease;
}

.hp-adhd-resource-nav a:hover {
	background: var(--hp-teal);
	color: #ffffff;
}

.hp-adhd-two-col,
.hp-adhd-audience-grid,
.hp-adhd-assessment-cta {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr);
	gap: 42px;
	align-items: center;
}

.hp-adhd-audience-grid-reverse {
	grid-template-columns: minmax(340px, .85fr) minmax(0, 1.15fr);
}

.hp-adhd-three-points {
	display: grid;
	gap: 14px;
}

.hp-adhd-three-points > div {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 20px;
	padding: 20px;
	display: grid;
	grid-template-columns: 42px 1fr;
	column-gap: 13px;
	align-items: start;
	box-shadow: 0 10px 26px rgba(16, 42, 67, 0.04);
}

.hp-adhd-three-points span {
	grid-row: 1 / span 2;
	width: 42px;
	height: 42px;
	border-radius: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	font-size: 12px;
	font-weight: 950;
}

.hp-adhd-three-points strong {
	color: var(--hp-navy);
	font-size: 17px;
}

.hp-adhd-three-points p {
	margin: 4px 0 0;
	color: var(--hp-muted);
}

.hp-executive-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	margin-top: 32px;
}

.hp-executive-grid article {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 20px;
	padding: 22px;
	box-shadow: 0 10px 28px rgba(16, 42, 67, 0.045);
}

.hp-executive-grid article > span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 14px;
	background: #eef8f7;
	font-size: 20px;
	margin-bottom: 14px;
}

.hp-executive-grid h3,
.hp-adhd-strategy-grid h3,
.hp-adhd-resource-links h3,
.hp-adhd-callout h3,
.hp-adhd-reading h3,
.hp-adhd-exam-box h3 {
	color: var(--hp-navy);
	margin: 0 0 8px;
}

.hp-executive-grid p,
.hp-adhd-strategy-grid p,
.hp-adhd-resource-links p {
	margin: 0;
	color: var(--hp-muted);
}

.hp-adhd-life-grid .hp-service-card,
.hp-adhd-tools-grid .hp-service-card,
.hp-adhd-treatment-grid .hp-service-card {
	height: 100%;
}

.hp-adhd-checks {
	list-style: none;
	margin: 24px 0 0;
	padding: 0;
	display: grid;
	gap: 12px;
}

.hp-adhd-checks li {
	position: relative;
	padding: 14px 16px 14px 46px;
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 16px;
	color: #314947;
}

.hp-adhd-checks li::before {
	content: "✓";
	position: absolute;
	left: 16px;
	top: 14px;
	color: var(--hp-teal-dark);
	font-weight: 950;
}

.hp-adhd-callout .hp-icon {
	margin-bottom: 16px;
}

.hp-adhd-mini-grid {
	display: flex;
	gap: 9px;
	flex-wrap: wrap;
	margin-top: 24px;
}

.hp-adhd-mini-grid span {
	display: inline-flex;
	align-items: center;
	padding: 8px 12px;
	border-radius: 999px;
	background: #ffffff;
	border: 1px solid var(--hp-border);
	color: var(--hp-navy);
	font-size: 13px;
	font-weight: 800;
}

.hp-adhd-strategy-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin-top: 32px;
}

.hp-adhd-strategy-grid article {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 20px;
	padding: 22px;
	box-shadow: 0 10px 28px rgba(16, 42, 67, 0.045);
}

.hp-adhd-strategy-grid article > span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 12px;
	background: var(--hp-navy);
	color: #ffffff;
	font-weight: 950;
	margin-bottom: 14px;
}

.hp-adhd-school-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 15px;
	margin-top: 30px;
}

.hp-adhd-school-grid details {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 18px;
	padding: 0 20px;
	box-shadow: 0 8px 24px rgba(16, 42, 67, 0.04);
}

.hp-adhd-school-grid summary {
	cursor: pointer;
	list-style: none;
	padding: 18px 30px 18px 0;
	position: relative;
	color: var(--hp-navy);
	font-weight: 900;
}

.hp-adhd-school-grid summary::-webkit-details-marker {
	display: none;
}

.hp-adhd-school-grid summary::after {
	content: "+";
	position: absolute;
	right: 0;
	top: 14px;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	font-size: 18px;
}

.hp-adhd-school-grid details[open] summary::after {
	content: "−";
}

.hp-adhd-school-grid details p {
	margin: 0;
	padding: 0 0 20px;
	color: var(--hp-muted);
}

.hp-adhd-exam-box {
	margin-top: 26px;
	background: linear-gradient(145deg, #fffaf0 0%, #ffffff 100%);
	border-color: #ead7a7;
}

.hp-adhd-resource-links {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	margin-top: 32px;
}

.hp-adhd-resource-links article {
	background: #ffffff;
	border: 1px solid var(--hp-border);
	border-radius: 20px;
	padding: 22px;
	box-shadow: 0 10px 28px rgba(16, 42, 67, 0.045);
}

.hp-adhd-resource-links article > span {
	display: inline-block;
	margin-bottom: 10px;
	color: var(--hp-teal-dark);
	font-size: 12px;
	font-weight: 950;
	text-transform: uppercase;
	letter-spacing: .05em;
}

.hp-resource-link-row {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.hp-resource-link-row a {
	display: inline-flex;
	padding: 7px 10px;
	border-radius: 999px;
	background: var(--hp-soft-teal);
	font-size: 13px;
}

.hp-adhd-reading {
	margin-top: 28px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
}

.hp-adhd-reading > div {
	max-width: 760px;
}

.hp-small-text {
	font-size: 13px;
}

.hp-adhd-assessment-cta {
	background: linear-gradient(135deg, #102a43 0%, #183b56 58%, #15736f 100%);
	border-radius: 28px;
	padding: 42px;
	color: #ffffff;
	box-shadow: 0 24px 54px rgba(16, 42, 67, 0.16);
}

.hp-adhd-assessment-cta .hp-kicker,
.hp-adhd-assessment-cta h2,
.hp-adhd-assessment-cta p,
.hp-adhd-assessment-cta .hp-text-link {
	color: #ffffff;
}

.hp-adhd-assessment-cta p {
	opacity: .88;
}

.hp-adhd-assessment-actions {
	display: grid;
	gap: 11px;
	align-content: center;
}

.hp-adhd-assessment-actions .hp-button {
	width: 100%;
	justify-content: center;
}

.hp-adhd-assessment-actions .hp-button-secondary,
.hp-adhd-assessment-actions .hp-button-ghost {
	background: rgba(255, 255, 255, .1);
	border-color: rgba(255, 255, 255, .35);
	color: #ffffff;
}

.hp-adhd-assessment-actions .hp-text-link {
	text-align: center;
	padding-top: 5px;
}

.hp-adhd-final-note {
	padding-top: 32px;
}

.hp-adhd-learning-note {
	margin: 22px 0 0;
}

@media (max-width: 1050px) {
	.hp-executive-grid,
	.hp-adhd-resource-links {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.hp-adhd-resource-intro-grid,
	.hp-adhd-two-col,
	.hp-adhd-audience-grid,
	.hp-adhd-audience-grid-reverse,
	.hp-adhd-assessment-cta {
		grid-template-columns: 1fr;
	}

	.hp-adhd-strategy-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hp-adhd-assessment-cta {
		padding: 32px;
	}
}

@media (max-width: 680px) {
	.hp-executive-grid,
	.hp-adhd-resource-links,
	.hp-adhd-strategy-grid,
	.hp-adhd-school-grid {
		grid-template-columns: 1fr;
	}

	.hp-adhd-resource-nav {
		padding: 13px;
	}

	.hp-adhd-resource-nav > span {
		width: 100%;
	}

	.hp-adhd-reading {
		align-items: stretch;
		flex-direction: column;
	}

	.hp-adhd-resource-note,
	.hp-adhd-callout,
	.hp-adhd-reading,
	.hp-adhd-exam-box {
		border-radius: 18px;
		padding: 20px;
	}

	.hp-adhd-assessment-cta {
		border-radius: 22px;
		padding: 24px;
	}
}

/* v1.3.2 Homepage ACP360 feedback polish + Understanding ADHD preview */
.hp-home-feedback-section {
	position: relative;
	overflow: hidden;
	background: linear-gradient(135deg, #102a43 0%, #173b55 58%, #156f6c 100%);
	color: #ffffff;
}

.hp-home-feedback-section::before {
	content: "";
	position: absolute;
	width: 420px;
	height: 420px;
	right: -150px;
	top: -180px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .055);
	pointer-events: none;
}

.hp-home-feedback-heading {
	position: relative;
	margin-bottom: 30px;
}

.hp-home-feedback-heading > div {
	max-width: 900px;
}

.hp-home-feedback-section .hp-kicker,
.hp-home-feedback-section h2,
.hp-home-feedback-heading p {
	color: #ffffff;
}

.hp-home-feedback-section .hp-kicker {
	opacity: 1;
	background: #dff4f2;
	color: #126f6b;
	box-shadow: inset 0 0 0 1px rgba(31, 143, 138, .08);
}

.hp-home-feedback-section .hp-kicker::before {
	background: #1f8f8a;
}

.hp-home-feedback-heading h2 {
	margin: 7px 0 10px;
	font-size: clamp(30px, 4vw, 45px);
	line-height: 1.12;
}

.hp-home-feedback-heading p {
	margin: 0;
	opacity: .86;
	max-width: 760px;
}


.hp-home-feedback-grid {
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.hp-home-feedback-card {
	position: relative;
	background: #ffffff;
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 22px;
	padding: 24px;
	box-shadow: 0 18px 42px rgba(4, 24, 36, .18);
	min-width: 0;
	min-height: 300px;
}

.hp-home-feedback-card::after {
	content: "“";
	position: absolute;
	right: 20px;
	bottom: -10px;
	font-family: Georgia, serif;
	font-size: 92px;
	line-height: 1;
	color: rgba(31, 143, 138, .10);
	pointer-events: none;
}

.hp-home-feedback-card-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 17px;
}

.hp-home-feedback-card .hp-feedback-acp-label {
	background: #e1f5f3;
	color: #126f6b;
	border: 1px solid rgba(31, 143, 138, .08);
}

.hp-home-feedback-patient {
	font-size: 12px;
	font-weight: 900;
	color: var(--hp-muted);
	white-space: nowrap;
}

.hp-home-feedback-card blockquote {
	margin: 0;
	padding: 0;
	border: 0;
}

.hp-home-feedback-card blockquote p {
	position: relative;
	z-index: 1;
	margin: 0;
	color: #314947;
	font-size: 15px;
	line-height: 1.72;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 8;
	overflow: hidden;
}

.hp-home-feedback-footer {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-top: 22px;
	font-size: 13px;
	color: rgba(255, 255, 255, .76);
}

.hp-home-feedback-footer a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 10px 16px;
	border: 1px solid rgba(255, 255, 255, .34);
	border-radius: 999px;
	background: rgba(255, 255, 255, .09);
	color: #ffffff !important;
	font-weight: 900;
	line-height: 1.25;
	transition: .2s ease;
}

.hp-home-feedback-footer a:hover {
	background: #ffffff;
	border-color: #ffffff;
	color: var(--hp-navy) !important;
	transform: translateY(-1px);
}

.hp-home-adhd-section {
	background:
		radial-gradient(circle at 88% 10%, rgba(31, 143, 138, .10), transparent 31%),
		linear-gradient(145deg, #f4fbfa 0%, #ffffff 62%, #f8fbfd 100%);
}

.hp-home-adhd-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.12fr) minmax(340px, .88fr);
	gap: 46px;
	align-items: center;
}

.hp-home-adhd-content h2 {
	margin: 7px 0 14px;
	font-size: clamp(30px, 4vw, 45px);
	line-height: 1.12;
	color: var(--hp-navy);
}

.hp-home-adhd-content > p:not(.hp-large-text) {
	color: var(--hp-muted);
}

.hp-home-adhd-points {
	display: grid;
	gap: 15px;
}

.hp-home-adhd-card {
	display: grid;
	grid-template-columns: 52px minmax(0, 1fr);
	gap: 15px;
	align-items: start;
	background: rgba(255, 255, 255, .92);
	border: 1px solid var(--hp-border);
	border-radius: 20px;
	padding: 20px;
	box-shadow: 0 12px 30px rgba(16, 42, 67, .055);
}

.hp-home-adhd-card > span {
	width: 52px;
	height: 52px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 16px;
	background: var(--hp-soft-teal);
	color: var(--hp-teal-dark);
	font-size: 22px;
	font-weight: 950;
}

.hp-home-adhd-card h3 {
	margin: 1px 0 6px;
	color: var(--hp-navy);
	font-size: 18px;
}

.hp-home-adhd-card p {
	margin: 0;
	color: var(--hp-muted);
	font-size: 14px;
	line-height: 1.65;
}

@media (max-width: 980px) {
	.hp-home-feedback-grid {
		grid-template-columns: 1fr;
	}

	.hp-home-feedback-card blockquote p {
		-webkit-line-clamp: 6;
	}

	.hp-home-adhd-grid {
		grid-template-columns: 1fr;
		gap: 30px;
	}
}

@media (max-width: 680px) {
	.hp-home-feedback-heading h2,
	.hp-home-adhd-content h2 {
		font-size: 31px;
	}


	.hp-home-feedback-card {
		border-radius: 18px;
		padding: 20px;
	}

	.hp-home-feedback-card-top,
	.hp-home-feedback-footer {
		align-items: flex-start;
		flex-direction: column;
	}

	.hp-home-feedback-footer a {
		width: 100%;
		text-align: center;
	}

	.hp-home-feedback-card blockquote p {
		-webkit-line-clamp: 8;
	}

	.hp-home-adhd-card {
		grid-template-columns: 44px minmax(0, 1fr);
		padding: 18px;
	}

	.hp-home-adhd-card > span {
		width: 44px;
		height: 44px;
		border-radius: 14px;
		font-size: 19px;
	}
}



/* v1.3.3 Dr Hashmi profile career update */
.hp-profile-current-role {
	margin: -4px 0 18px;
	color: var(--hp-teal-dark);
	font-size: 15px;
	font-weight: 800;
	line-height: 1.55;
}

.hp-profile-detail-card li strong {
	color: var(--hp-navy);
}

@media (max-width: 680px) {
	.hp-profile-current-role {
		font-size: 14px;
	}
}


/* v1.3.5 Dr Hashmi flagship profile polish */
.hp-doctor-feature-card {
    grid-template-columns: minmax(330px, .76fr) minmax(0, 1.24fr);
    gap: 38px;
    align-items: stretch;
    padding: 34px;
    border-radius: 36px;
    background:
        radial-gradient(circle at 6% 8%, rgba(31, 143, 138, .12), transparent 24%),
        linear-gradient(135deg, #ffffff 0%, #fbfdfe 58%, #f5fafc 100%);
    box-shadow: 0 28px 78px rgba(16, 42, 67, .10);
}

.hp-doctor-image-panel {
    min-height: 100%;
    height: 100%;
    padding: 34px 28px 0;
    align-items: flex-end;
    border-radius: 30px;
    background:
        radial-gradient(circle at 78% 12%, rgba(201, 162, 77, .22), transparent 28%),
        radial-gradient(circle at 18% 88%, rgba(31, 143, 138, .20), transparent 34%),
        linear-gradient(145deg, #0f2d47, #173f54 62%, #145765);
}

.hp-doctor-image-panel::before {
    content: "";
    position: absolute;
    inset: 18px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 24px;
    pointer-events: none;
}

.hp-doctor-feature-photo {
    width: min(94%, 382px);
    max-height: 535px;
    object-position: center bottom;
    border-radius: 8px 8px 0 0;
    filter: drop-shadow(0 24px 34px rgba(0, 0, 0, .24));
}

.hp-doctor-feature-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: 8px 4px 8px 0;
}

.hp-doctor-feature-content h2 {
    margin-bottom: 6px;
    font-size: clamp(40px, 4.1vw, 58px);
}

.hp-doctor-role-large {
    margin-bottom: 8px;
    font-size: 19px;
}

.hp-profile-current-role {
    margin: 0 0 16px;
    max-width: 760px;
    color: var(--hp-teal-dark);
    font-size: 15px;
    font-weight: 850;
    line-height: 1.55;
}

.hp-doctor-feature-content .hp-bupa-status-stack {
    margin: 2px 0 18px;
}

.hp-doctor-feature-content .hp-large-text {
    max-width: 790px;
    margin: 0 0 18px;
    line-height: 1.72;
}

.hp-doctor-tags-light {
    margin: 2px 0 4px;
    gap: 9px;
}

.hp-doctor-tags-light span {
    padding: 9px 13px;
}

.hp-profile-hero-highlights {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
}

.hp-profile-hero-highlight {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    min-width: 0;
    padding: 15px 14px;
    background: rgba(255,255,255,.92);
    border: 1px solid rgba(31, 143, 138, .16);
    border-radius: 18px;
    box-shadow: 0 10px 28px rgba(16, 42, 67, .045);
}

.hp-profile-hero-highlight-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--hp-soft-teal), #dff6f4);
    color: var(--hp-teal-dark);
    font-size: 13px;
    font-weight: 950;
}

.hp-profile-hero-highlight strong,
.hp-profile-hero-highlight div > span {
    display: block;
}

.hp-profile-hero-highlight strong {
    margin: 1px 0 5px;
    color: var(--hp-navy);
    font-size: 13.5px;
    line-height: 1.3;
}

.hp-profile-hero-highlight div > span {
    color: var(--hp-muted);
    font-size: 12.25px;
    line-height: 1.48;
}

.hp-profile-details-section .hp-section-heading {
    max-width: 920px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 42px;
}

.hp-profile-details-section .hp-section-heading h2 {
    max-width: 830px;
    margin-left: auto;
    margin-right: auto;
}

.hp-profile-detail-grid {
    align-items: start;
}

.hp-profile-qualifications-card,
.hp-current-practice-card,
.hp-registration-card {
    padding: 34px;
}

.hp-profile-card-heading {
    display: grid;
    grid-template-columns: minmax(280px, .9fr) minmax(0, 1.1fr);
    gap: 34px;
    align-items: end;
    margin-bottom: 26px;
}

.hp-profile-card-heading-compact {
    margin-bottom: 22px;
}

.hp-profile-card-heading h3 {
    margin: 12px 0 0;
}

.hp-profile-card-heading p {
    margin: 0;
    color: var(--hp-muted);
    line-height: 1.68;
}

.hp-qualification-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px;
}

.hp-qualification-item {
    position: relative;
    min-width: 0;
    min-height: 168px;
    padding: 21px;
    overflow: hidden;
    border: 1px solid var(--hp-border);
    border-radius: 20px;
    background: rgba(255,255,255,.96);
    box-shadow: 0 9px 24px rgba(16, 42, 67, .035);
}

.hp-qualification-item::after {
    content: "";
    position: absolute;
    right: -32px;
    bottom: -38px;
    width: 92px;
    height: 92px;
    border-radius: 50%;
    background: rgba(31, 143, 138, .055);
}

.hp-qualification-item-featured {
    border-color: rgba(31,143,138,.32);
    background: linear-gradient(145deg, #ffffff, #f1fbfa);
}

.hp-qualification-item > span {
    display: inline-flex;
    position: relative;
    z-index: 1;
    padding: 5px 10px;
    margin-bottom: 13px;
    border-radius: 999px;
    background: var(--hp-soft-teal);
    color: var(--hp-teal-dark);
    font-size: 12px;
    font-weight: 950;
    letter-spacing: .02em;
}

.hp-qualification-item strong,
.hp-qualification-item small {
    display: block;
    position: relative;
    z-index: 1;
}

.hp-qualification-item strong {
    margin-bottom: 9px;
    color: var(--hp-navy);
    font-size: 16px;
    line-height: 1.38;
}

.hp-qualification-item small {
    color: var(--hp-muted);
    font-size: 13px;
    line-height: 1.55;
}

.hp-current-position-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px;
}

.hp-current-position-item {
    position: relative;
    min-width: 0;
    padding: 20px;
    border: 1px solid var(--hp-border);
    border-radius: 20px;
    background: #fff;
}

.hp-current-position-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin-bottom: 13px;
    border-radius: 12px;
    background: var(--hp-soft-teal);
    color: var(--hp-teal-dark);
    font-size: 11px;
    font-weight: 950;
    letter-spacing: .04em;
}

.hp-current-position-item strong {
    display: block;
    margin-bottom: 7px;
    color: var(--hp-navy);
    font-size: 16px;
    line-height: 1.35;
}

.hp-current-position-item p {
    margin: 0;
    color: var(--hp-muted);
    font-size: 14px;
    line-height: 1.6;
}

.hp-registration-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px 22px !important;
}

.hp-registration-grid li {
    padding: 13px 14px 13px 42px;
    border: 1px solid rgba(31,143,138,.11);
    border-radius: 15px;
    background: rgba(255,255,255,.78);
}

.hp-registration-grid li::before {
    left: 13px;
    top: 13px;
}

@media (max-width: 1180px) {
    .hp-profile-hero-highlights,
    .hp-current-position-grid {
        grid-template-columns: 1fr;
    }

    .hp-profile-hero-highlight {
        padding: 13px 14px;
    }
}

@media (max-width: 1050px) {
    .hp-doctor-feature-card {
        grid-template-columns: minmax(280px, .82fr) minmax(0, 1.18fr);
        gap: 28px;
    }

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

@media (max-width: 900px) {
    .hp-doctor-feature-card {
        grid-template-columns: 1fr;
    }

    .hp-doctor-image-panel {
        min-height: 470px;
        height: auto;
    }

    .hp-doctor-feature-photo {
        width: min(88%, 360px);
        max-height: 440px;
    }

    .hp-profile-card-heading {
        grid-template-columns: 1fr;
        gap: 10px;
        align-items: start;
    }

    .hp-current-position-grid,
    .hp-registration-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 680px) {
    .hp-doctor-feature-card {
        padding: 20px;
        gap: 24px;
        border-radius: 26px;
    }

    .hp-doctor-image-panel {
        min-height: 340px;
        padding: 24px 18px 0;
        border-radius: 23px;
    }

    .hp-doctor-feature-photo {
        width: min(90%, 290px);
        max-height: 320px;
    }

    .hp-doctor-feature-content h2 {
        font-size: 36px;
    }

    .hp-profile-hero-highlights,
    .hp-qualification-grid {
        grid-template-columns: 1fr;
    }

    .hp-profile-qualifications-card,
    .hp-current-practice-card,
    .hp-registration-card {
        padding: 22px;
    }

    .hp-qualification-item {
        min-height: 0;
    }

    .hp-profile-details-section .hp-section-heading {
        margin-bottom: 30px;
    }
}


/* v1.3.6 Dr Hashmi portrait frame refinement */
.hp-doctor-image-panel {
    position: relative;
    min-height: 560px;
    padding: 20px;
    align-items: stretch;
    justify-content: stretch;
}

.hp-doctor-image-panel::before {
    inset: 9px;
    z-index: 4;
    border-color: rgba(255,255,255,.13);
    border-radius: 26px;
}

.hp-doctor-feature-photo {
    position: absolute;
    z-index: 2;
    inset: 20px;
    width: calc(100% - 40px);
    height: calc(100% - 40px);
    max-height: none;
    object-fit: cover;
    object-position: center 20%;
    border-radius: 22px;
    background: #ffffff;
    box-shadow: 0 18px 38px rgba(0,0,0,.20);
    filter: none;
}

.hp-doctor-image-panel::after {
    z-index: 1;
}

@media (max-width: 1050px) {
    .hp-doctor-image-panel {
        min-height: 540px;
    }
}

@media (max-width: 900px) {
    .hp-doctor-image-panel {
        min-height: 520px;
        max-width: 520px;
        width: 100%;
        margin-inline: auto;
    }

    .hp-doctor-feature-photo {
        object-position: center 18%;
    }
}

@media (max-width: 680px) {
    .hp-doctor-image-panel {
        min-height: 390px;
        padding: 14px;
    }

    .hp-doctor-image-panel::before {
        inset: 7px;
        border-radius: 21px;
    }

    .hp-doctor-feature-photo {
        inset: 14px;
        width: calc(100% - 28px);
        height: calc(100% - 28px);
        border-radius: 18px;
        object-position: center 18%;
    }
}

/* v1.3.8 Dr Hashmi portrait centred within full-height panel */
.hp-doctor-image-panel {
    align-self: stretch;
    height: 100%;
    min-height: 560px;
    padding: 20px;
    align-items: center;
    justify-content: center;
}

.hp-doctor-feature-photo {
    position: relative;
    inset: auto;
    align-self: center;
    width: calc(100% - 0px);
    height: auto;
    max-height: calc(100% - 0px);
    object-fit: contain;
    object-position: center center;
    border-radius: 22px;
    background: #ffffff;
    box-shadow: 0 18px 38px rgba(0,0,0,.20);
    filter: none;
}

@media (max-width: 1050px) {
    .hp-doctor-image-panel {
        min-height: 540px;
    }
}

@media (max-width: 900px) {
    .hp-doctor-image-panel {
        align-self: auto;
        height: auto;
        min-height: 520px;
        max-width: 520px;
        width: 100%;
        margin-inline: auto;
    }

    .hp-doctor-feature-photo {
        width: 100%;
        max-height: 480px;
    }
}

@media (max-width: 680px) {
    .hp-doctor-image-panel {
        min-height: 390px;
        padding: 14px;
    }

    .hp-doctor-feature-photo {
        width: 100%;
        max-height: 360px;
        border-radius: 18px;
    }
}

/* =========================================================
   v1.3.9 - PHQ-9 & GAD-7 free screening tools
   ========================================================= */
.hp-screening-hero .hp-page-hero-inner {
	max-width: 1040px;
}

.hp-screening-privacy-pill {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-top: 18px;
	padding: 11px 15px;
	border: 1px solid rgba(10, 126, 122, 0.18);
	border-radius: 999px;
	background: rgba(224, 246, 244, 0.8);
	color: #36556d;
	font-size: 14px;
	line-height: 1.45;
}

.hp-screening-privacy-pill span {
	display: inline-grid;
	place-items: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #0f8b86;
	color: #fff;
	font-weight: 800;
	flex: 0 0 auto;
}

.hp-screening-intro-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(300px, 0.65fr);
	gap: 24px;
	align-items: stretch;
}

.hp-screening-info-card,
.hp-screening-safety-card {
	padding: 34px;
	border: 1px solid #d8e6ee;
	border-radius: 28px;
	background: #fff;
	box-shadow: 0 18px 45px rgba(18, 47, 70, 0.07);
}

.hp-screening-safety-card {
	background: linear-gradient(145deg, #fff9ed, #fffdf7);
	border-color: #efcf91;
}

.hp-screening-info-card h2,
.hp-screening-safety-card h2 {
	margin: 14px 0 12px;
	font-size: clamp(26px, 2.4vw, 36px);
	line-height: 1.12;
	color: #102f4c;
}

.hp-screening-info-card p,
.hp-screening-safety-card p {
	color: #61778c;
	line-height: 1.75;
}

.hp-screening-check-list {
	list-style: none;
	padding: 0;
	margin: 22px 0 0;
	display: grid;
	gap: 11px;
}

.hp-screening-check-list li {
	position: relative;
	padding-left: 28px;
	color: #3f586d;
	line-height: 1.6;
}

.hp-screening-check-list li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 1px;
	font-weight: 900;
	color: #0f8b86;
}

.hp-screening-container {
	max-width: 1180px;
}

.hp-screening-app {
	margin-top: 34px;
	border: 1px solid #d9e6ed;
	border-radius: 30px;
	background: #fff;
	box-shadow: 0 24px 60px rgba(18, 47, 70, 0.08);
	overflow: hidden;
}

.hp-screening-scale-head {
	display: grid;
	grid-template-columns: minmax(300px, 1.6fr) repeat(4, minmax(120px, 0.6fr));
	align-items: center;
	gap: 8px;
	padding: 17px 20px;
	background: #12344f;
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	text-align: center;
}

.hp-screening-scale-head span:first-child {
	text-align: left;
}

.hp-screening-question {
	margin: 0;
	padding: 20px;
	border: 0;
	border-bottom: 1px solid #e6eef3;
	display: grid;
	grid-template-columns: minmax(300px, 1.6fr) minmax(0, 2.4fr);
	gap: 16px;
	align-items: center;
}

.hp-screening-question:nth-child(even) {
	background: #fbfdfe;
}

.hp-screening-question legend {
	float: left;
	width: 100%;
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 0;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.55;
	color: #203d56;
}

.hp-screening-question legend + * {
	clear: none;
}

.hp-screening-number {
	display: inline-grid;
	place-items: center;
	min-width: 30px;
	height: 30px;
	border-radius: 50%;
	background: #e5f6f4;
	color: #0a7773;
	font-size: 13px;
	font-weight: 900;
}

.hp-screening-options {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 8px;
}

.hp-screening-option {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 64px;
	padding: 9px 8px;
	border: 1px solid #d4e4ea;
	border-radius: 14px;
	background: #fff;
	cursor: pointer;
	text-align: center;
	transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease, background .2s ease;
}

.hp-screening-option:hover {
	border-color: #68b8b4;
	transform: translateY(-1px);
	box-shadow: 0 8px 20px rgba(16, 87, 91, .08);
}

.hp-screening-option input {
	position: absolute;
	op: 0;
	left: 0;
	opacity: 0;
	pointer-events: none;
}

.hp-screening-radio-ui {
	display: inline-grid;
	place-items: center;
	width: 18px;
	height: 18px;
	border: 2px solid #94acba;
	border-radius: 50%;
	flex: 0 0 auto;
}

.hp-screening-option input:checked + .hp-screening-radio-ui {
	border-color: #0b8581;
	box-shadow: inset 0 0 0 4px #fff;
	background: #0b8581;
}

.hp-screening-option:has(input:checked) {
	border-color: #0b8581;
	background: #effaf9;
	box-shadow: 0 8px 20px rgba(11, 133, 129, .1);
}

.hp-screening-option-copy {
	display: none;
}

.hp-screening-question-sensitive {
	background: #fffaf0 !important;
}

.hp-screening-impact {
	margin: 20px;
	padding: 24px;
	border: 1px solid #d9e6ed;
	border-radius: 20px;
	background: #f8fbfc;
}

.hp-screening-impact legend {
	padding: 0 8px;
	font-weight: 800;
	color: #203d56;
}

.hp-screening-impact-options {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
	margin-top: 16px;
}

.hp-screening-impact-options label {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 12px;
	border: 1px solid #d9e6ed;
	border-radius: 14px;
	background: #fff;
	color: #415b70;
	cursor: pointer;
}

.hp-screening-impact small {
	display: block;
	margin-top: 12px;
	color: #6c8092;
}

.hp-screening-safety-inline,
.hp-screening-validation {
	margin: 20px;
	padding: 18px 20px;
	border-radius: 16px;
}

.hp-screening-safety-inline {
	border: 1px solid #e7ad58;
	background: #fff5df;
	color: #66430c;
}

.hp-screening-safety-inline strong {
	display: block;
	margin-bottom: 7px;
	color: #5b3905;
}

.hp-screening-safety-inline p {
	margin: 0;
	line-height: 1.6;
}

.hp-screening-validation {
	border: 1px solid #e0a8a8;
	background: #fff3f3;
	color: #8c3434;
	font-weight: 700;
}

.hp-screening-actions {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px;
	padding: 26px 20px 30px;
}

.hp-screening-result {
	display: grid;
	grid-template-columns: 220px minmax(0, 1fr);
	gap: 28px;
	align-items: center;
	margin: 0 20px 28px;
	padding: 28px;
	border: 1px solid #b9dfdc;
	border-radius: 24px;
	background: linear-gradient(135deg, #edf9f8, #ffffff);
}

.hp-screening-result-score {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 180px;
	padding: 18px;
	border-radius: 20px;
	background: #12344f;
	color: #fff;
	text-align: center;
}

.hp-screening-result-score span {
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .04em;
}

.hp-screening-result-score strong {
	font-size: 66px;
	line-height: 1;
	margin: 10px 0 5px;
}

.hp-screening-result-score small {
	opacity: .82;
}

.hp-screening-result-copy h3 {
	margin: 10px 0 10px;
	font-size: clamp(28px, 3vw, 40px);
	color: #102f4c;
}

.hp-screening-result-copy > p {
	color: #526b80;
	font-size: 17px;
	line-height: 1.7;
}

.hp-screening-result-note {
	margin-top: 16px;
	padding: 14px 16px;
	border-left: 4px solid #0f8b86;
	border-radius: 0 12px 12px 0;
	background: #fff;
	color: #51697d;
	line-height: 1.6;
}

.hp-screening-range-grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 14px;
	margin-top: 30px;
}

.hp-screening-range-grid-four {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.hp-screening-range-grid article {
	padding: 24px 20px;
	border: 1px solid #d9e6ed;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 14px 34px rgba(18, 47, 70, .06);
}

.hp-screening-range-grid article > strong {
	display: inline-block;
	margin-bottom: 12px;
	font-size: 24px;
	color: #0c8580;
}

.hp-screening-range-grid h3 {
	margin: 0 0 9px;
	font-size: 20px;
	color: #12344f;
}

.hp-screening-range-grid p {
	margin: 0;
	color: #667c8f;
	line-height: 1.6;
}

.hp-screening-attribution {
	margin-top: 22px;
	padding: 17px 20px;
	border: 1px solid #dbe6ec;
	border-radius: 16px;
	background: #fff;
	color: #687d90;
	font-size: 13px;
	line-height: 1.6;
}

.hp-screening-attribution strong {
	color: #2a475e;
}

.hp-screening-tool-cards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	max-width: 980px;
	margin: 30px auto 0;
}

.hp-screening-tool-card {
	padding: 30px;
	border: 1px solid #d9e6ed;
	border-radius: 24px;
	background: linear-gradient(145deg, #fff, #f4fbfa);
	box-shadow: 0 16px 40px rgba(18, 47, 70, .06);
}

.hp-screening-tool-code {
	display: inline-flex;
	padding: 7px 11px;
	border-radius: 999px;
	background: #e5f6f4;
	color: #0b7b77;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: .03em;
}

.hp-screening-tool-card h3 {
	margin: 15px 0 8px;
	font-size: 27px;
	color: #12344f;
}

.hp-screening-tool-card p {
	margin: 0 0 20px;
	color: #667c8f;
	line-height: 1.65;
}

@media (max-width: 1050px) {
	.hp-screening-scale-head {
		display: none;
	}

	.hp-screening-question {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.hp-screening-question legend {
		float: none;
	}

	.hp-screening-option-copy {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		text-align: left;
	}

	.hp-screening-option-copy strong {
		font-size: 13px;
		color: #26475f;
	}

	.hp-screening-option-copy small {
		font-size: 11px;
		color: #7b8f9f;
	}

	.hp-screening-options {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hp-screening-option {
		justify-content: flex-start;
		padding: 11px 12px;
	}

	.hp-screening-range-grid,
	.hp-screening-range-grid-four {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.hp-screening-intro-grid,
	.hp-screening-tool-cards,
	.hp-screening-result {
		grid-template-columns: 1fr;
	}

	.hp-screening-info-card,
	.hp-screening-safety-card,
	.hp-screening-tool-card {
		padding: 24px;
		border-radius: 22px;
	}

	.hp-screening-privacy-pill {
		align-items: flex-start;
		border-radius: 18px;
	}

	.hp-screening-app {
		border-radius: 22px;
	}

	.hp-screening-question {
		padding: 18px 16px;
	}

	.hp-screening-options,
	.hp-screening-impact-options,
	.hp-screening-range-grid,
	.hp-screening-range-grid-four {
		grid-template-columns: 1fr;
	}

	.hp-screening-result {
		margin: 0 14px 20px;
		padding: 18px;
	}

	.hp-screening-result-score {
		min-height: 150px;
	}

	.hp-screening-actions .hp-button {
		width: 100%;
	}
}
