/*
Theme Name: CODXN Clinic Theme
Theme URI: https://codxn.com
Author: CODXN
Author URI: https://codxn.com
Description: Arabic-first RTL block theme for clinics with responsive layouts, semantic Light/Dark styles, reduced-motion support, native FAQ accordions, reusable backgrounds, and a unified Header/Footer system.
Requires at least: 7.0
Tested up to: 7.0
Requires PHP: 7.4
Version: 1.1.0
License: GPL-2.0-or-later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: codxn-clinic-theme
Tags: full-site-editing, block-styles, custom-colors, custom-logo, editor-style, rtl-language-support, translation-ready, wide-blocks
*/

/* IBM Plex Sans Arabic 1.005 — locally self-hosted under SIL OFL 1.1.
   Upstream license and attribution are retained beside the font files at
   assets/fonts/ibm-plex-sans-arabic/license.txt. */
@font-face {
	font-family: "IBM Plex Sans Arabic";
	src: url("assets/fonts/ibm-plex-sans-arabic/IBMPlexSansArabic-Regular.woff2") format("woff2");
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}

/* -----------------------------------------------------------------------
   Unified appointment and contact page
   Presentation only: shared Client Core form, homepage calendar, and
   validated clinic-location patterns remain authoritative.
----------------------------------------------------------------------- */

.codxn-unified-appointment-page {
	overflow: clip;
}

.codxn-unified-appointment-page > *,
.codxn-unified-hours > *,
.codxn-unified-location > * {
	margin-block-start: 0;
}

.codxn-unified-hero {
	position: relative;
	isolation: isolate;
	overflow: clip;
	min-block-size: auto;
	padding-block: clamp(1.5rem, 4vw, 3.5rem) !important;
	background-color: var(--wp--preset--color--background) !important;
	background-image: none !important;
}

.codxn-unified-hero__layout {
	overflow: hidden;
	display: grid !important;
	grid-template-columns: minmax(0, 44fr) minmax(0, 56fr);
	align-items: stretch !important;
	box-sizing: border-box;
	inline-size: min(100%, 84rem);
	max-inline-size: 84rem !important;
	margin-inline: auto;
	gap: clamp(1.75rem, 4vw, 4rem) !important;
	padding: clamp(1.25rem, 3.5vw, 3.5rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 20%, var(--wp--preset--color--border));
	border-radius: 2rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 92%, var(--wp--preset--color--accent-soft));
	box-shadow: 0 1.25rem 3rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 9%, transparent);
	color: var(--wp--preset--color--foreground);
}

.codxn-unified-hero__content {
	min-inline-size: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	padding-block: clamp(0.75rem, 2vw, 1.75rem);
	text-align: start;
}

.codxn-unified-hero h1 {
	max-inline-size: 14ch;
	margin-block: 0;
	margin-inline: 0;
	background: none !important;
	color: var(--wp--preset--color--foreground) !important;
	font-weight: 700;
	text-align: start;
	-webkit-text-fill-color: currentColor !important;
	text-wrap: balance;
}

.codxn-unified-hero__content > .codxn-eyebrow {
	margin-block: 0 0.65rem;
	margin-inline: 0;
	color: var(--wp--preset--color--brand-text) !important;
	text-align: start;
}

.codxn-unified-hero__lead {
	max-inline-size: 42rem;
	margin-block: clamp(1rem, 2vw, 1.4rem) 0;
	margin-inline: 0;
	color: var(--wp--preset--color--text-muted) !important;
	font-size: clamp(1rem, 1.4vw, 1.125rem) !important;
	line-height: 1.85;
	text-align: start;
	text-wrap: pretty;
}

.codxn-unified-hero .codxn-unified-actions {
	justify-content: flex-start;
	gap: var(--wp--preset--spacing--sm);
	margin-block-start: var(--wp--preset--spacing--lg);
}

.codxn-unified-hero__media {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
	min-block-size: clamp(25rem, 36vw, 36rem);
	padding: clamp(1rem, 2.5vw, 1.5rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 20%, var(--wp--preset--color--border));
	border-radius: 1.5rem;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 46%, var(--wp--preset--color--surface));
	box-shadow: 0 0.85rem 2rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 12%, transparent);
}

.codxn-unified-hero__media figure {
	overflow: hidden;
	margin: 0;
	border-radius: 1.25rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 88%, var(--wp--preset--color--accent-soft));
}

.codxn-unified-hero__media img {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	max-block-size: clamp(22rem, 36vw, 31rem);
	object-fit: contain;
}

.codxn-unified-hero__signal {
	position: relative;
	z-index: 1;
	inline-size: 100%;
	box-sizing: border-box;
	margin: 1rem 0 0;
	padding: 0.85rem 1rem;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 18%, var(--wp--preset--color--border));
	border-radius: 1rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 92%, var(--wp--preset--color--accent-soft));
	box-shadow: none;
}

.codxn-unified-hero__signal p {
	margin: 0;
	color: var(--wp--preset--color--text-muted);
	font-size: var(--wp--preset--font-size--sm);
	line-height: 1.65;
}

.codxn-unified-hero__signal-icon {
	--codxn-icon-stage-size: calc(var(--codxn-icon-size, 26px) + 1rem);
	display: grid;
	flex: 0 0 var(--codxn-icon-stage-size);
	place-items: center;
	inline-size: var(--codxn-icon-stage-size);
	block-size: var(--codxn-icon-stage-size);
	box-sizing: border-box;
	padding: 0.5rem;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 20%, var(--wp--preset--color--border));
	border-radius: 0.8rem;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 62%, var(--wp--preset--color--surface));
	color: var(--wp--preset--color--brand-text);
}

.codxn-unified-request {
	position: relative;
	isolation: isolate;
}

.codxn-unified-request__shell {
	max-inline-size: 72rem;
}

.codxn-unified-request .codxn-whatsapp-request {
	box-sizing: border-box;
	padding: clamp(1.5rem, 4vw, 3rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 20%, var(--wp--preset--color--border));
	border-radius: 1.75rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 96%, var(--wp--preset--color--accent-soft));
	box-shadow: 0 1.25rem 3rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 9%, transparent);
}

.codxn-unified-request .codxn-whatsapp-request__intro {
	max-inline-size: 52rem;
	margin-inline: 0;
	margin-block-end: clamp(1.5rem, 3vw, 2.25rem);
	text-align: start;
}

.codxn-unified-request .codxn-whatsapp-request__intro h2 {
	max-inline-size: 22ch;
	margin-inline: 0;
	background: none !important;
	color: var(--wp--preset--color--foreground) !important;
	-webkit-text-fill-color: currentColor !important;
}

.codxn-unified-request .codxn-whatsapp-request__eyebrow {
	display: inline-flex;
	inline-size: fit-content;
	align-items: center;
	justify-content: center;
	margin-inline: auto;
	padding: 0.35rem 0.8rem;
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 32%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 78%, var(--wp--preset--color--surface));
}

.codxn-unified-request .codxn-whatsapp-request__form {
	display: grid;
	max-inline-size: 68rem;
	margin-inline: auto;
	gap: 1.25rem;
	text-align: start;
	color: var(--wp--preset--color--foreground);
}

.codxn-unified-request .codxn-whatsapp-request__grid,
.codxn-unified-request .codxn-whatsapp-request__conditional {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.125rem clamp(1rem, 2vw, 1.5rem);
}

.codxn-unified-request .codxn-whatsapp-request__field {
	gap: 0.5rem;
}

.codxn-unified-request .codxn-whatsapp-request__field :is(label, legend) {
	color: var(--wp--preset--color--foreground);
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.5;
}

.codxn-unified-request .codxn-whatsapp-request__field :is(input, select, textarea) {
	min-block-size: 50px;
	padding-block: 0.75rem;
	padding-inline: 0.95rem;
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 16%, var(--wp--preset--color--control-border));
	border-radius: 0.75rem;
	background: var(--wp--preset--color--surface);
	box-shadow: inset 0 1px 2px color-mix(in srgb, var(--wp--preset--color--medical-navy) 4%, transparent);
}

.codxn-unified-request .codxn-whatsapp-request__field textarea {
	min-block-size: 9rem;
	line-height: 1.7;
	resize: vertical;
}

.codxn-unified-request .codxn-whatsapp-request__field :is(input, select, textarea):focus-visible {
	border-color: var(--wp--preset--color--brand-fill);
	outline: 3px solid color-mix(in srgb, var(--wp--preset--color--control-focus) 72%, transparent);
	outline-offset: 2px;
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--wp--preset--color--medical-teal) 13%, transparent);
}

.codxn-unified-request .codxn-whatsapp-request__date-parts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.5rem;
	direction: rtl;
}

.codxn-unified-request .codxn-whatsapp-request__date-parts label {
	display: grid;
	gap: 0.3rem;
}

.codxn-unified-request .codxn-whatsapp-request__date-parts input {
	inline-size: 100%;
	min-inline-size: 0;
	text-align: center;
}

.codxn-unified-request .codxn-whatsapp-request__period {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
}

.codxn-unified-request .codxn-whatsapp-request__period label {
	min-block-size: 50px;
	padding-block: 0.7rem;
	padding-inline: 0.85rem;
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 18%, var(--wp--preset--color--border));
	border-radius: 0.75rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 94%, var(--wp--preset--color--accent-soft));
	font-weight: 600;
}

.codxn-unified-request .codxn-whatsapp-request__period input,
.codxn-unified-request .codxn-whatsapp-request__consent input {
	accent-color: var(--wp--preset--color--control-accent);
}

.codxn-unified-request :is(
	.codxn-whatsapp-request__hint,
	.codxn-whatsapp-request__privacy,
	.codxn-whatsapp-request__notice,
	.codxn-whatsapp-request__status
) {
	line-height: 1.7;
}

.codxn-unified-request .codxn-whatsapp-request__hint {
	color: var(--wp--preset--color--text-muted);
	font-size: 0.825rem;
}

.codxn-unified-request :is(.codxn-whatsapp-request__privacy, .codxn-whatsapp-request__notice) {
	padding-block: 0.9rem;
	padding-inline: 1rem;
	border-radius: 0.75rem;
}

.codxn-unified-request .codxn-whatsapp-request__privacy {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 14%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--surface) 72%, var(--wp--preset--color--background));
}

.codxn-unified-request .codxn-whatsapp-request__notice {
	border-inline-start-width: 3px;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 64%, var(--wp--preset--color--surface));
	color: var(--wp--preset--color--foreground);
}

.codxn-unified-request .codxn-whatsapp-request__consent {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	padding-block: 0.9rem;
	padding-inline: 1rem;
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 16%, var(--wp--preset--color--border));
	border-radius: 0.75rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 96%, var(--wp--preset--color--accent-soft));
	line-height: 1.65;
}

.codxn-unified-request .codxn-whatsapp-request__consent > span {
	min-inline-size: 0;
}

.codxn-unified-request .codxn-whatsapp-request__submit {
	display: inline-flex;
	justify-self: center;
	align-items: center;
	justify-content: center;
	min-block-size: 54px;
	max-inline-size: 100%;
	margin-block: 0.25rem 0.5rem;
	padding-block: 0.875rem;
	padding-inline: 1.75rem;
	border: 1px solid var(--wp--custom--semantic--primary-brand);
	border-radius: 0.875rem;
	background: var(--wp--custom--semantic--primary-brand);
	color: var(--wp--custom--semantic--text-on-dark);
	font: inherit;
	font-weight: 700;
	line-height: 1.35;
	text-align: center;
	box-shadow: 0 0.65rem 1.35rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 18%, transparent);
	transition:
		background-color var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard),
		border-color var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard),
		box-shadow var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard),
		transform var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard);
	cursor: pointer;
}

@media (hover: hover) and (pointer: fine) {
	.codxn-unified-request .codxn-whatsapp-request__submit:hover:not(:disabled) {
		border-color: var(--wp--custom--semantic--hover-brand);
		background: var(--wp--custom--semantic--hover-brand);
		box-shadow: 0 0.85rem 1.6rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 22%, transparent);
		transform: translateY(-1px);
	}
}

.codxn-unified-request .codxn-whatsapp-request__submit:active:not(:disabled) {
	transform: translateY(0);
}

.codxn-unified-request .codxn-whatsapp-request__submit:disabled {
	cursor: not-allowed;
	opacity: 0.65;
	box-shadow: none;
}

.codxn-unified-request .codxn-whatsapp-request__submit:focus-visible {
	outline: 3px solid var(--wp--preset--color--control-focus);
	outline-offset: 3px;
}

.codxn-unified-request .codxn-whatsapp-request__status {
	min-block-size: 1.7em;
}


html[data-codxn-color-scheme="dark"] .codxn-unified-hero__layout {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 24%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--surface) 94%, var(--wp--preset--color--medical-navy));
	box-shadow: 0 1.5rem 3.5rem color-mix(in srgb, var(--wp--preset--color--black) 25%, transparent);
}

html[data-codxn-color-scheme="dark"] .codxn-unified-hero__media {
	box-shadow: 0 1rem 2.25rem color-mix(in srgb, var(--wp--preset--color--black) 28%, transparent);
}

html[data-codxn-color-scheme="dark"] .codxn-unified-hero__signal {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 22%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--surface) 96%, var(--wp--preset--color--medical-navy));
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) .codxn-unified-hero__layout {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 24%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--surface) 94%, var(--wp--preset--color--medical-navy));
		box-shadow: 0 1.5rem 3.5rem color-mix(in srgb, var(--wp--preset--color--black) 25%, transparent);
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-unified-hero__media {
		box-shadow: 0 1rem 2.25rem color-mix(in srgb, var(--wp--preset--color--black) 28%, transparent);
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-unified-hero__signal {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 22%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--surface) 96%, var(--wp--preset--color--medical-navy));
	}

}

@media (max-width: 1100px) {
	.codxn-unified-hero {
		min-block-size: auto;
	}

	.codxn-unified-hero__layout {
		grid-template-columns: minmax(0, 1fr);
		inline-size: min(100%, 48rem);
		gap: clamp(1.5rem, 5vw, 2.5rem) !important;
	}

	.codxn-unified-hero__content {
		flex-basis: 100% !important;
	}

	.codxn-unified-hero__media {
		min-block-size: 0;
		max-inline-size: none;
		inline-size: 100%;
		margin-inline: auto;
	}

}

@media (max-width: 781px) {
	.codxn-unified-request .codxn-whatsapp-request__grid,
	.codxn-unified-request .codxn-whatsapp-request__conditional {
		grid-template-columns: minmax(0, 1fr);
	}

	.codxn-unified-request .codxn-whatsapp-request__submit {
		justify-self: center;
		inline-size: fit-content;
		max-inline-size: 100%;
	}

	.codxn-unified-hero__layout {
		gap: var(--wp--preset--spacing--xl) !important;
	}

	.codxn-unified-hero__content {
		flex-basis: 100% !important;
	}

	.codxn-unified-hero__media {
		max-inline-size: 34rem;
		margin-inline: auto;
	}

}

@media (max-width: 600px) {
	.codxn-unified-hero,
	.codxn-unified-request {
		padding-inline: 0;
	}

	.codxn-unified-hero {
		padding-inline: var(--wp--preset--spacing--sm) !important;
	}

	.codxn-unified-request {
		padding-inline: var(--wp--preset--spacing--sm) !important;
	}

	.codxn-unified-hero__layout {
		gap: 1.5rem !important;
		padding: 1rem;
		border-radius: 1.375rem;
	}

	.codxn-unified-hero__content {
		align-items: center;
		padding: 0.75rem 0.25rem 0;
		text-align: center;
	}

	.codxn-unified-hero h1 {
		max-inline-size: 100%;
		margin-inline: auto;
		font-size: clamp(2rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
		text-align: center;
	}

	.codxn-unified-hero__content > .codxn-eyebrow,
	.codxn-unified-hero__lead {
		margin-inline: auto;
		text-align: center;
	}

	.codxn-unified-hero__lead {
		font-size: clamp(1rem, 4.6vw, 1.18rem) !important;
	}

	.codxn-unified-hero__media {
		padding: 0.75rem;
		border-radius: 1.25rem;
	}

	.codxn-unified-hero__media img {
		max-block-size: 27rem;
	}

	.codxn-unified-hero__signal {
		inline-size: 100%;
		align-items: center;
		text-align: start;
	}

	.codxn-unified-hero .codxn-unified-actions {
		justify-content: center;
	}

	.codxn-unified-actions {
		inline-size: 100%;
	}

	.codxn-unified-actions .wp-block-button,
	.codxn-unified-actions .wp-block-button__link {
		inline-size: fit-content;
		max-inline-size: 100%;
	}

	.codxn-unified-actions .wp-block-button__link {
		justify-content: center;
		text-align: center;
	}


	.codxn-unified-request .codxn-whatsapp-request {
		padding: 1.25rem;
		border-radius: 1.375rem;
		box-shadow: 0 0.8rem 2rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 8%, transparent);
	}

	.codxn-unified-request .codxn-whatsapp-request__intro {
		text-align: start;
	}

	.codxn-unified-request .codxn-whatsapp-request__form,
	.codxn-unified-request .codxn-whatsapp-request__form :is(label, input, select, textarea, fieldset) {
		text-align: start;
	}

	.codxn-unified-request .codxn-whatsapp-request__form {
		gap: 1rem;
	}

	.codxn-unified-request .codxn-whatsapp-request__grid,
	.codxn-unified-request .codxn-whatsapp-request__conditional {
		gap: 1rem;
	}

	.codxn-unified-request .codxn-whatsapp-request__field textarea {
		min-block-size: 8rem;
	}

}

@media (prefers-reduced-motion: reduce) {
	.codxn-unified-hero__media,
	.codxn-unified-hours .codxn-calendar-panel,
	.codxn-unified-request .codxn-whatsapp-request {
		scroll-behavior: auto;
		transition: none;
	}
}

@media (forced-colors: active) {
	:is(
		.codxn-unified-hero__layout,
		.codxn-unified-hero__media,
		.codxn-unified-hero__signal,
		.codxn-unified-hours .codxn-calendar-panel,
		.codxn-unified-request .codxn-whatsapp-request
	) {
		border-color: CanvasText;
		background: Canvas;
		color: CanvasText;
		box-shadow: none;
	}

	.codxn-unified-hero :is(.codxn-eyebrow, h1, .codxn-unified-hero__lead, .codxn-unified-hero__signal p) {
		color: CanvasText !important;
	}
}

@font-face {
	font-family: "IBM Plex Sans Arabic";
	src: url("assets/fonts/ibm-plex-sans-arabic/IBMPlexSansArabic-Medium.woff2") format("woff2");
	font-style: normal;
	font-weight: 500;
	font-display: swap;
}

@font-face {
	font-family: "IBM Plex Sans Arabic";
	src: url("assets/fonts/ibm-plex-sans-arabic/IBMPlexSansArabic-SemiBold.woff2") format("woff2");
	font-style: normal;
	font-weight: 600;
	font-display: swap;
}

@font-face {
	font-family: "IBM Plex Sans Arabic";
	src: url("assets/fonts/ibm-plex-sans-arabic/IBMPlexSansArabic-Bold.woff2") format("woff2");
	font-style: normal;
	font-weight: 700;
	font-display: swap;
}

body {
	/* All production weights are local; avoid browser-generated faux weight
	   while leaving style synthesis and system fallbacks otherwise intact. */
	font-synthesis-weight: none;
}

/* -----------------------------------------------------------------------
   Appearance Tokens (Light fallback + Dark system-preference override)
   Palette-owned mode values come from theme.json / the selected Global Style
   Variation. The aliases keep existing preset consumers mode-aware without
   making component CSS depend on a specific variation.
----------------------------------------------------------------------- */

:root {
	--wp--preset--color--background: var(--wp--custom--semantic--mode--light--background);
	--wp--preset--color--surface: var(--wp--custom--semantic--mode--light--surface);
	--wp--preset--color--brand-text: var(--wp--preset--color--brand-text-light);
	--wp--preset--color--brand-text-hover: var(--wp--preset--color--brand-text-light);
	--wp--preset--color--foreground: var(--wp--custom--semantic--mode--light--foreground);
	--wp--preset--color--text-muted: var(--wp--custom--semantic--mode--light--text-muted);
	--wp--preset--color--border: var(--wp--custom--semantic--mode--light--border);
	--wp--preset--color--control-border: var(--wp--custom--semantic--mode--light--control-border);
	--wp--preset--color--success: var(--wp--custom--semantic--mode--light--success);
	--wp--preset--color--warning: var(--wp--custom--semantic--mode--light--warning);
	--wp--preset--color--error: var(--wp--custom--semantic--mode--light--error);
	--wp--custom--semantic--canvas-background: var(--wp--preset--color--background);
	--wp--custom--semantic--subtle-background: color-mix(in srgb, var(--wp--preset--color--background) 84%, var(--wp--preset--color--accent-soft));
	--wp--custom--semantic--default-surface: var(--wp--preset--color--surface);
	--wp--custom--semantic--elevated-surface: var(--wp--preset--color--surface);
	--wp--custom--semantic--muted-surface: color-mix(in srgb, var(--wp--preset--color--border) 62%, var(--wp--preset--color--accent-soft));
	--wp--custom--semantic--dark-surface: var(--wp--preset--color--medical-navy);
	--wp--custom--semantic--primary-text: var(--wp--preset--color--foreground);
	--wp--custom--semantic--secondary-text: var(--wp--preset--color--text-muted);
	--wp--custom--semantic--accent-text: var(--wp--preset--color--medical-teal);
	--wp--custom--semantic--icon-foreground: var(--wp--preset--color--medical-teal);
	--wp--custom--semantic--text-on-dark: var(--wp--preset--color--white);
	--wp--custom--semantic--subtle-border: var(--wp--preset--color--border);
	--wp--custom--semantic--emphasized-border: var(--wp--preset--color--brand-text);
	--wp--custom--semantic--primary-brand: var(--wp--preset--color--brand-fill);
	--wp--custom--semantic--hover-brand: var(--wp--preset--color--brand-fill-hover);
	--wp--custom--semantic--medical-accent: var(--wp--preset--color--accent);
	--wp--custom--semantic--focus-ring: var(--wp--preset--color--control-focus);
	--wp--custom--semantic--soft-overlay: var(--wp--preset--color--accent-soft);
	--codxn-palette-level-1: var(--wp--preset--color--accent-soft);
	--codxn-palette-level-2: var(--wp--preset--color--border);
	--codxn-palette-level-3: var(--wp--preset--color--accent);
	--codxn-palette-level-4: var(--wp--preset--color--brand-fill);
	--codxn-palette-level-5: var(--wp--preset--color--medical-navy);
	--codxn-palette-deep: var(--codxn-palette-level-5);
	--codxn-palette-primary: var(--codxn-palette-level-4);
	--codxn-palette-accent: var(--codxn-palette-level-3);
	--codxn-palette-soft: var(--codxn-palette-level-1);
	--codxn-palette-surface: var(--wp--preset--color--surface);
	--codxn-depth-0: none;
	--codxn-depth-1: 0 0.4rem 0.9rem color-mix(in srgb, var(--codxn-palette-deep) 8%, transparent);
	--codxn-depth-2: 0 0.8rem 1.6rem color-mix(in srgb, var(--codxn-palette-deep) 11%, transparent);
	--codxn-depth-3: 0 1.25rem 2.5rem color-mix(in srgb, var(--codxn-palette-deep) 14%, transparent);
	--codxn-depth-border: color-mix(in srgb, var(--codxn-palette-level-2) 62%, var(--wp--preset--color--border));
	--codxn-depth-border-elevated: color-mix(in srgb, var(--codxn-palette-level-3) 38%, var(--wp--preset--color--border));
	--codxn-card-edge-base: var(--codxn-depth-border);
	--codxn-card-edge-core: color-mix(in srgb, var(--codxn-palette-accent) 32%, var(--wp--preset--color--surface));
	--codxn-card-edge-comet-length: clamp(6px, 1vw, 8px);
	--codxn-card-edge-duration: 5.6s;
}

@media (prefers-color-scheme: dark) {
	:root {
		--wp--preset--color--background: var(--wp--custom--semantic--mode--dark--background);
		--wp--preset--color--surface: var(--wp--custom--semantic--mode--dark--surface);
		--wp--preset--color--brand-text: var(--wp--preset--color--brand-text-dark);
		--wp--preset--color--brand-text-hover: var(--wp--preset--color--brand-text-dark);
		--wp--preset--color--foreground: var(--wp--custom--semantic--mode--dark--foreground);
		--wp--preset--color--text-muted: var(--wp--custom--semantic--mode--dark--text-muted);
		--wp--preset--color--border: var(--wp--custom--semantic--mode--dark--border);
		--wp--preset--color--control-border: var(--wp--custom--semantic--mode--dark--control-border);
		--wp--preset--color--success: var(--wp--custom--semantic--mode--dark--success);
		--wp--preset--color--warning: var(--wp--custom--semantic--mode--dark--warning);
		--wp--preset--color--error: var(--wp--custom--semantic--mode--dark--error);
		--wp--custom--bg--gradient-opacity: 10%;
		--wp--custom--semantic--canvas-background: var(--wp--preset--color--background);
		--wp--custom--semantic--subtle-background: color-mix(in srgb, var(--wp--preset--color--background) 84%, var(--wp--preset--color--accent-soft));
		--wp--custom--semantic--default-surface: var(--wp--preset--color--surface);
		--wp--custom--semantic--elevated-surface: var(--wp--preset--color--surface);
		--wp--custom--semantic--muted-surface: color-mix(in srgb, var(--wp--preset--color--border) 62%, var(--wp--preset--color--accent-soft));
		--wp--custom--semantic--dark-surface: var(--wp--preset--color--medical-navy);
		--wp--custom--semantic--primary-text: var(--wp--preset--color--foreground);
		--wp--custom--semantic--secondary-text: var(--wp--preset--color--text-muted);
		--wp--custom--semantic--accent-text: var(--wp--preset--color--brand-text);
		--wp--custom--semantic--icon-foreground: var(--wp--preset--color--brand-text);
		--wp--custom--semantic--text-on-dark: var(--wp--preset--color--white);
		--wp--custom--semantic--subtle-border: var(--wp--preset--color--border);
		--wp--custom--semantic--emphasized-border: var(--wp--preset--color--brand-text);
		--wp--custom--semantic--primary-brand: var(--wp--preset--color--brand-fill);
		--wp--custom--semantic--hover-brand: var(--wp--preset--color--brand-fill-hover);
		--wp--custom--semantic--medical-accent: var(--wp--preset--color--accent);
		--wp--custom--semantic--focus-ring: var(--wp--preset--color--control-focus);
		--wp--custom--semantic--soft-overlay: var(--wp--preset--color--accent-soft);
	}
}

/* -----------------------------------------------------------------------
   Manual Appearance Overrides
   Explicit Light/Dark selections via html[data-codxn-color-scheme] set by
   the head bootstrap / appearance control. These reuse the EXACT existing
   Light (:root) and Dark (prefers-color-scheme) token values above — no new
   palette, no third color system. The html[...] attribute selector has
   higher specificity than :root, so an explicit choice always beats the
   OS preference. An absent attribute follows prefers-color-scheme; the
   head bootstrap migrates old or invalid stored values to Light or Dark.
----------------------------------------------------------------------- */

html[data-codxn-color-scheme="light"] {
	--wp--preset--color--background: var(--wp--custom--semantic--mode--light--background);
	--wp--preset--color--surface: var(--wp--custom--semantic--mode--light--surface);
	--wp--preset--color--brand-text: var(--wp--preset--color--brand-text-light);
	--wp--preset--color--brand-text-hover: var(--wp--preset--color--brand-text-light);
	--wp--preset--color--foreground: var(--wp--custom--semantic--mode--light--foreground);
	--wp--preset--color--text-muted: var(--wp--custom--semantic--mode--light--text-muted);
	--wp--preset--color--border: var(--wp--custom--semantic--mode--light--border);
	--wp--preset--color--control-border: var(--wp--custom--semantic--mode--light--control-border);
	--wp--preset--color--success: var(--wp--custom--semantic--mode--light--success);
	--wp--preset--color--warning: var(--wp--custom--semantic--mode--light--warning);
	--wp--preset--color--error: var(--wp--custom--semantic--mode--light--error);
	/* Background opacity light defaults — mirror theme.json settings.custom.bg
	   so an explicit Light choice under a dark OS resets the dark overrides. */
	--wp--custom--bg--gradient-opacity: 6%;
	--wp--custom--semantic--canvas-background: var(--wp--preset--color--background);
	--wp--custom--semantic--subtle-background: color-mix(in srgb, var(--wp--preset--color--background) 84%, var(--wp--preset--color--accent-soft));
	--wp--custom--semantic--default-surface: var(--wp--preset--color--surface);
	--wp--custom--semantic--elevated-surface: var(--wp--preset--color--surface);
	--wp--custom--semantic--muted-surface: color-mix(in srgb, var(--wp--preset--color--border) 62%, var(--wp--preset--color--accent-soft));
	--wp--custom--semantic--dark-surface: var(--wp--preset--color--medical-navy);
	--wp--custom--semantic--primary-text: var(--wp--preset--color--foreground);
	--wp--custom--semantic--secondary-text: var(--wp--preset--color--text-muted);
	--wp--custom--semantic--accent-text: var(--wp--preset--color--medical-teal);
	--wp--custom--semantic--icon-foreground: var(--wp--preset--color--medical-teal);
	--wp--custom--semantic--text-on-dark: var(--wp--preset--color--white);
	--wp--custom--semantic--subtle-border: var(--wp--preset--color--border);
	--wp--custom--semantic--emphasized-border: var(--wp--preset--color--brand-text);
	--wp--custom--semantic--primary-brand: var(--wp--preset--color--brand-fill);
	--wp--custom--semantic--hover-brand: var(--wp--preset--color--brand-fill-hover);
	--wp--custom--semantic--medical-accent: var(--wp--preset--color--accent);
	--wp--custom--semantic--focus-ring: var(--wp--preset--color--control-focus);
	--wp--custom--semantic--soft-overlay: var(--wp--preset--color--accent-soft);
}

html[data-codxn-color-scheme="dark"] {
	--wp--preset--color--background: var(--wp--custom--semantic--mode--dark--background);
	--wp--preset--color--surface: var(--wp--custom--semantic--mode--dark--surface);
	--wp--preset--color--brand-text: var(--wp--preset--color--brand-text-dark);
	--wp--preset--color--brand-text-hover: var(--wp--preset--color--brand-text-dark);
	--wp--preset--color--foreground: var(--wp--custom--semantic--mode--dark--foreground);
	--wp--preset--color--text-muted: var(--wp--custom--semantic--mode--dark--text-muted);
	--wp--preset--color--border: var(--wp--custom--semantic--mode--dark--border);
	--wp--preset--color--control-border: var(--wp--custom--semantic--mode--dark--control-border);
	--wp--preset--color--success: var(--wp--custom--semantic--mode--dark--success);
	--wp--preset--color--warning: var(--wp--custom--semantic--mode--dark--warning);
	--wp--preset--color--error: var(--wp--custom--semantic--mode--dark--error);
	--wp--custom--bg--gradient-opacity: 10%;
	--wp--custom--semantic--canvas-background: var(--wp--preset--color--background);
	--wp--custom--semantic--subtle-background: color-mix(in srgb, var(--wp--preset--color--background) 84%, var(--wp--preset--color--accent-soft));
	--wp--custom--semantic--default-surface: var(--wp--preset--color--surface);
	--wp--custom--semantic--elevated-surface: var(--wp--preset--color--surface);
	--wp--custom--semantic--muted-surface: color-mix(in srgb, var(--wp--preset--color--border) 62%, var(--wp--preset--color--accent-soft));
	--wp--custom--semantic--dark-surface: var(--wp--preset--color--medical-navy);
	--wp--custom--semantic--primary-text: var(--wp--preset--color--foreground);
	--wp--custom--semantic--secondary-text: var(--wp--preset--color--text-muted);
	--wp--custom--semantic--accent-text: var(--wp--preset--color--brand-text);
	--wp--custom--semantic--icon-foreground: var(--wp--preset--color--brand-text);
	--wp--custom--semantic--text-on-dark: var(--wp--preset--color--white);
	--wp--custom--semantic--subtle-border: var(--wp--preset--color--border);
	--wp--custom--semantic--emphasized-border: var(--wp--preset--color--brand-text);
	--wp--custom--semantic--primary-brand: var(--wp--preset--color--brand-fill);
	--wp--custom--semantic--hover-brand: var(--wp--preset--color--brand-fill-hover);
	--wp--custom--semantic--medical-accent: var(--wp--preset--color--accent);
	--wp--custom--semantic--focus-ring: var(--wp--preset--color--control-focus);
	--wp--custom--semantic--soft-overlay: var(--wp--preset--color--accent-soft);
}

/* Gutenberg's fixed medical-teal utility is editorial foreground, not a
 * mode-invariant body color. Route it through the shared semantic contract. */
:where(.wp-site-blocks) .has-medical-teal-color.has-text-color {
	color: var(--wp--custom--semantic--accent-text) !important;
}

/* -----------------------------------------------------------------------
   Typography Overrides
----------------------------------------------------------------------- */

/* LTR-specific heading letter spacing */
:where(html:not([dir="rtl"])) h1 {
	letter-spacing: -0.02em;
}
:where(html:not([dir="rtl"])) :is(h2, h3, h4, h5, h6) {
	letter-spacing: -0.01em;
}

/* Arabic headings must not inherit the Latin-oriented negative tracking from
   theme.json. Balanced wrapping is a progressive enhancement; unsupported
   browsers retain their normal wrapping behavior. */
html[dir="rtl"] :is(h1, h2, h3, h4, h5, h6, .wp-block-heading) {
	letter-spacing: normal;
	text-wrap: balance;
}

/* Arabic wrapping safeguard. Restrict this to headings and named
 * prose surfaces so Arabic words retain normal boundaries without changing
 * URLs, email values, code, form controls, or general LTR content. */
html[dir="rtl"] :is(
	h1,
	h2,
	h3,
	h4,
	h5,
	h6,
	.wp-block-heading,
	.codxn-arabic-prose,
	.codxn-section-lead,
	.codxn-hero-lead,
	.wp-block-post-excerpt__excerpt,
	.codxn-testimonial-quote,
	.codxn-footer-desc
) {
	-webkit-hyphens: none;
	hyphens: none;
	overflow-wrap: normal;
	word-break: normal;
}

/* Small text fallback for theme.json */
:where(small) {
	font-size: var(--wp--preset--font-size--sm);
	line-height: 1.5;
}

/* -----------------------------------------------------------------------
   Form Controls Foundation
   Lightweight, accessible, RTL-safe global styles for native form controls.
   Uses only existing theme.json preset and custom CSS variables.
----------------------------------------------------------------------- */

/* Text-based controls, select, and textarea */
:where(
	input:not(
		[type="checkbox"],
		[type="radio"],
		[type="submit"],
		[type="button"],
		[type="reset"],
		[type="hidden"],
		[type="color"],
		[type="range"],
		[type="image"],
		[type="file"]
	),
	select,
	textarea
) {
	font: inherit;
	color: var(--wp--preset--color--foreground);
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--control-border);
	border-radius: var(--wp--custom--radius--md);
	line-height: 1.5;
	min-block-size: 44px;
	padding-block: var(--wp--preset--spacing--sm);
	padding-inline: var(--wp--preset--spacing--md);
	inline-size: 100%;
	max-inline-size: 100%;
	box-sizing: border-box;
}

/* Textarea */
:where(textarea) {
	min-block-size: 8rem;
	resize: vertical;
	max-inline-size: 100%;
}

/* Placeholder text */
:where(
	input:not(
		[type="checkbox"],
		[type="radio"],
		[type="submit"],
		[type="button"],
		[type="reset"],
		[type="hidden"],
		[type="color"],
		[type="range"],
		[type="image"],
		[type="file"]
	),
	textarea
)::placeholder {
	color: var(--wp--preset--color--text-muted);
	opacity: 1;
}

/* Focus state */
:where(
	input:not(
		[type="checkbox"],
		[type="radio"],
		[type="submit"],
		[type="button"],
		[type="reset"],
		[type="hidden"],
		[type="color"],
		[type="range"],
		[type="image"],
		[type="file"]
	),
	select,
	textarea
):focus {
	border-color: var(--wp--preset--color--control-focus);
	outline: 2px solid var(--wp--preset--color--control-focus);
	outline-offset: 2px;
}

:where(
	input:not(
		[type="checkbox"],
		[type="radio"],
		[type="submit"],
		[type="button"],
		[type="reset"],
		[type="hidden"],
		[type="color"],
		[type="range"],
		[type="image"],
		[type="file"]
	),
	select,
	textarea
):focus-visible {
	border-color: var(--wp--preset--color--control-focus);
	outline: 2px solid var(--wp--preset--color--control-focus);
	outline-offset: 2px;
}

/* FAQ accordion summary focus state */
.wp-block-details > summary:focus-visible {
	outline: 2px solid var(--wp--preset--color--accent);
	outline-offset: 4px;
}

/* FAQ accordion disclosure motion (progressive enhancement) */
@media (prefers-reduced-motion: no-preference) {
	@supports (interpolate-size: allow-keywords) {
		.wp-block-details.codxn-card {
			interpolate-size: allow-keywords;
		}

		.wp-block-details.codxn-card::details-content {
			block-size: 0;
			overflow: hidden;
			transition:
				block-size var(--wp--custom--motion--duration--normal) var(--wp--custom--motion--easing--standard),
				content-visibility var(--wp--custom--motion--duration--normal) var(--wp--custom--motion--easing--standard);
			transition-behavior: allow-discrete;
		}

		.wp-block-details.codxn-card[open]::details-content {
			block-size: auto;
		}
	}
}

/* Explicit invalid state */
:where(
	input:not(
		[type="checkbox"],
		[type="radio"],
		[type="submit"],
		[type="button"],
		[type="reset"],
		[type="hidden"],
		[type="color"],
		[type="range"],
		[type="image"],
		[type="file"]
	),
	select,
	textarea
)[aria-invalid="true"] {
	border-color: var(--wp--preset--color--error);
}

:where(
	input:not(
		[type="checkbox"],
		[type="radio"],
		[type="submit"],
		[type="button"],
		[type="reset"],
		[type="hidden"],
		[type="color"],
		[type="range"],
		[type="image"],
		[type="file"]
	),
	select,
	textarea
)[aria-invalid="true"]:focus-visible {
	border-color: var(--wp--preset--color--error);
	outline-color: var(--wp--preset--color--error);
}

/* Disabled controls */
:where(
	input:not(
		[type="checkbox"],
		[type="radio"],
		[type="submit"],
		[type="button"],
		[type="reset"],
		[type="hidden"],
		[type="color"],
		[type="range"],
		[type="image"],
		[type="file"]
	),
	select,
	textarea
):disabled {
	color: var(--wp--preset--color--text-muted);
	background: var(--wp--preset--color--background);
	border-color: var(--wp--preset--color--control-border);
	cursor: not-allowed;
}

/* Readonly controls */
:where(
	input:not(
		[type="checkbox"],
		[type="radio"],
		[type="submit"],
		[type="button"],
		[type="reset"],
		[type="hidden"],
		[type="color"],
		[type="range"],
		[type="image"],
		[type="file"]
	),
	textarea
):read-only {
	color: var(--wp--preset--color--foreground);
	background: var(--wp--preset--color--background);
	border-color: var(--wp--preset--color--control-border);
	cursor: default;
}

/* Checkbox and radio controls */
:where(input[type="checkbox"], input[type="radio"]) {
	accent-color: var(--wp--preset--color--control-accent);
	inline-size: 1.125rem;
	block-size: 1.125rem;
	vertical-align: middle;
}

/* Labels */
:where(label) {
	color: var(--wp--preset--color--foreground);
	font-family: inherit;
	font-weight: 600;
}

/* Fieldset and legend */
:where(fieldset) {
	border: 1px solid var(--wp--preset--color--control-border);
	border-radius: var(--wp--custom--radius--md);
	padding: var(--wp--preset--spacing--md);
	min-inline-size: 0;
}

:where(legend) {
	color: var(--wp--preset--color--foreground);
	font-weight: 600;
	padding-inline: var(--wp--preset--spacing--xs);
}

/* -----------------------------------------------------------------------
   Links and Buttons Motion (restrained, token-driven)
----------------------------------------------------------------------- */

/* Textual link color transition (excludes button-styled links) */
:where(a):not(.wp-element-button, .wp-block-button__link) {
	transition: color var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard);
}

/* Button transitions: background-color, color, and transform only */
.wp-element-button,
.wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	box-sizing: border-box;
	min-block-size: var(--wp--custom--component--button--min-target, 44px);
	padding: 0.625rem 1.15rem;
	border: 1px solid transparent;
	border-radius: var(--wp--custom--radius--pill, 999px);
	font-weight: 650;
	line-height: 1.2;
	text-align: center;
	transition:
		background-color var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard),
		color var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard),
		border-color var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard),
		box-shadow var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard),
		transform var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard);
	transform: translateY(0);
}

@media (hover: hover) and (pointer: fine) {
	.wp-element-button:hover,
	.wp-block-button__link:hover {
		transform: translateY(-1px);
	}
}

.wp-element-button:active,
.wp-block-button__link:active {
	transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
	:where(a):not(.wp-element-button, .wp-block-button__link),
	.wp-element-button,
	.wp-block-button__link {
		transition: none;
		transform: none;
	}
}

/* Desktop Header navigation underline reveal (excludes opened mobile overlay).
   background-position has no safely-supported logical (inline-start) keyword,
   so the sweep direction is corrected with a scoped [dir="rtl"] override
   (point 6): the underline grows from the inline-start of the link text in
   both directions — left-anchored under LTR, right-anchored under RTL —
   instead of always sweeping physically left-to-right. */
header .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation-item__content {
	background-image: linear-gradient(currentColor, currentColor);
	background-repeat: no-repeat;
	background-position: 0 100%;
	background-size: 0% 2px;
	transition: background-size var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard);
}

header .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation-item__content[aria-current="page"] {
	color: var(--codxn-palette-primary);
	background-size: 100% 2px;
	font-weight: 600;
}

[dir="rtl"] header .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation-item__content {
	background-position: 100% 100%;
}

@media (hover: hover) and (pointer: fine) {
	header .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation-item__content:hover {
		background-size: 100% 2px;
	}
}

@media (prefers-reduced-motion: reduce) {
	header .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation-item__content {
		transition: none;
	}
}

/* Button focus-visible treatment (component-specific, replaces theme.json button :focus) */
.wp-element-button:focus-visible,
.wp-block-button__link:focus-visible {
	outline: none;
	box-shadow:
		0 0 0 2px var(--wp--preset--color--surface),
		0 0 0 6px var(--wp--preset--color--foreground);
}

@media (prefers-color-scheme: dark) {
	.wp-element-button:focus-visible,
	.wp-block-button__link:focus-visible {
		box-shadow: 0 0 0 3px var(--wp--preset--color--control-focus);
	}
}

/* Mobile navigation open/close controls — accessible touch target */
.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close {
	min-inline-size: 44px;
	min-block-size: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--wp--preset--color--foreground);
	background: transparent;
}

.wp-block-navigation__responsive-container-open:focus-visible,
.wp-block-navigation__responsive-container-close:focus-visible {
	outline: 2px solid var(--wp--preset--color--control-focus);
	outline-offset: 2px;
}

/* Shared eyebrow badge primitive. Component selectors may refine color/margins. */
.codxn-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.3rem 0.8rem;
	border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 24%, transparent);
	border-radius: 999px;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 62%, var(--wp--preset--color--surface));
	color: var(--wp--preset--color--brand-text) !important;
	letter-spacing: 0.01em;
}

/* Gutenberg text-color utilities must not reduce contrast inside the shared tinted badge. */
.codxn-eyebrow:is(.has-accent-soft-color, .has-medical-teal-color) {
	color: var(--wp--preset--color--brand-text) !important;
}

/* Dark CTA surfaces retain a translucent on-dark badge beneath their light foreground. */
:where(
	.codxn-about-clinic-cta__inner,
	.codxn-services-mid-cta__inner,
	.codxn-doctors-final-cta__inner,
	.codxn-doctors-page-cta__inner,
	.codxn-unified-final-cta__inner,
	.has-medical-navy-background-color
) .codxn-eyebrow {
	background: color-mix(in srgb, var(--wp--preset--color--white) 10%, transparent);
	border-color: color-mix(in srgb, var(--wp--preset--color--white) 36%, transparent);
	color: var(--wp--custom--semantic--text-on-dark);
}

.codxn-eyebrow::before {
	content: "";
	flex: 0 0 auto;
	inline-size: 0.4rem;
	block-size: 0.4rem;
	border-radius: 50%;
	background: var(--codxn-palette-accent);
}

/* -----------------------------------------------------------------------
   Surface and Card Primitives
   Reusable, token-based visual primitives for later patterns/templates.
----------------------------------------------------------------------- */

/* Surface primitive */

/* Card primitives (shared visual language) */
.codxn-card,
.codxn-card-elevated {
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--foreground);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--radius--lg);
	padding: var(--wp--preset--spacing--lg);
	box-sizing: border-box;
	min-inline-size: 0;
	max-inline-size: 100%;
	overflow-wrap: anywhere;
}

.codxn-card {
	border-color: var(--codxn-card-edge-base);
	box-shadow: var(--codxn-depth-2);
}

@keyframes codxn-card-edge-travel {
	to {
		offset-distance: 100%;
	}
}

/* Decorative perimeter sweep. The existing border, surface, radius, and
   elevation remain the card's authoritative presentation. */
.codxn-card,
.codxn-faq-accordion__item {
	position: relative;
	isolation: isolate;
}

:is(.codxn-card, .codxn-faq-accordion__item, .codxn-patient-journey__step, .codxn-doctors-review-bubble)::after {
	content: "";
	position: absolute;
	inset: auto;
	inline-size: var(--codxn-card-edge-comet-length);
	block-size: 5px;
	border-radius: 999px;
	background: linear-gradient(
		90deg,
		transparent,
		color-mix(in srgb, var(--codxn-card-edge-core) 42%, transparent) 42%,
		var(--codxn-card-edge-core) 88%,
		var(--codxn-card-edge-core)
	);
	box-shadow: 0 0 0.4rem color-mix(in srgb, var(--codxn-card-edge-core) 58%, transparent);
	offset-path: inset(1px round var(--wp--custom--radius--lg));
	offset-distance: 0%;
	offset-rotate: auto;
	offset-anchor: center;
	pointer-events: none;
	z-index: 1;
	opacity: 0;
	animation: none;
}

:is(.codxn-card, .codxn-faq-accordion__item):nth-child(3n + 2)::after {
	animation-delay: -1.8s;
}

:is(.codxn-card, .codxn-faq-accordion__item):nth-child(3n)::after {
	animation-delay: -3.6s;
}

html[data-codxn-color-scheme="dark"] :is(.codxn-card, .codxn-faq-accordion__item, .codxn-patient-journey__step, .codxn-doctors-review-bubble)::after {
	--codxn-card-edge-core: color-mix(in srgb, var(--codxn-palette-level-2) 34%, var(--wp--preset--color--foreground));
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) :is(.codxn-card, .codxn-faq-accordion__item, .codxn-patient-journey__step, .codxn-doctors-review-bubble)::after {
		--codxn-card-edge-core: color-mix(in srgb, var(--codxn-palette-level-2) 34%, var(--wp--preset--color--foreground));
	}
}


@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
	:is(.codxn-card, .codxn-faq-accordion__item, .codxn-patient-journey__step, .codxn-doctors-review-bubble):is(:hover, :focus-within)::after {
		opacity: 1;
		animation: codxn-card-edge-travel var(--codxn-card-edge-duration) linear infinite;
	}
}

@media (hover: none), (pointer: coarse) {
	:is(.codxn-card, .codxn-faq-accordion__item, .codxn-patient-journey__step, .codxn-doctors-review-bubble)::after {
		opacity: 0.78;
		animation: codxn-card-edge-travel 21s linear infinite;
	}
}

@media (prefers-reduced-motion: reduce) {
	:is(.codxn-card, .codxn-faq-accordion__item, .codxn-patient-journey__step, .codxn-doctors-review-bubble)::after {
		animation: none;
		offset-distance: 0%;
		opacity: 0;
	}
}

.codxn-card-elevated {
	border-color: var(--codxn-depth-border-elevated);
	box-shadow: var(--codxn-depth-3);
	/* Semantic alias for the same existing surface token this selector
	   already consumed above; existing surface token kept as the CSS
	   fallback so the computed background is unchanged. */
	background: var(--wp--custom--semantic--surface-elevated, var(--wp--preset--color--surface));
}

/* Compact card modifier (combine with .codxn-card) */

/* Spacious card modifier (combine with .codxn-card) */
.codxn-card-spacious {
	padding: var(--wp--preset--spacing--xl);
}

/* Accent border modifier */
.codxn-accent-border {
	border: 1px solid var(--wp--preset--color--brand-text);
}

.codxn-card:focus-within {
	outline: 2px solid var(--wp--preset--color--control-focus);
	outline-offset: 2px;
}

/* Interactive behavior is opt-in; static cards do not lift on hover. */
.codxn-card-interactive {
	transition:
		transform 420ms cubic-bezier(0.22, 1, 0.36, 1),
		box-shadow 420ms cubic-bezier(0.22, 1, 0.36, 1),
		border-color 420ms cubic-bezier(0.22, 1, 0.36, 1);
	will-change: transform;
}

@media (hover: hover) and (pointer: fine) {
	.codxn-card-interactive:hover {
		transform: translateY(-2px);
		box-shadow: var(--codxn-depth-3);
	}

	.codxn-card-interactive.codxn-card-elevated:hover {
		box-shadow: var(--codxn-depth-3);
	}
}

@media (prefers-reduced-motion: reduce) {
	.codxn-card-interactive {
		transition: none;
		will-change: auto;
	}

	.codxn-card-interactive:hover {
		transform: none;
	}
}

/* Card and surface content flow */
:where(.codxn-card, .codxn-card-elevated) {
	overflow-wrap: anywhere;
	min-inline-size: 0;
}

/* Image safety inside card and surface primitives */
:where(.codxn-card, .codxn-card-elevated) img {
	max-inline-size: 100%;
	block-size: auto;
}

/* Shared Query Loop grid — responsive three-column grid (Doctors + Services) */
.wp-block-post-template.codxn-query-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--md);
	margin: 0;
	padding: 0;
	list-style: none;
}

.wp-block-post-template.codxn-query-grid > li {
	margin: 0;
}

@media (max-width: 900px) {
	.wp-block-post-template.codxn-query-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.wp-block-post-template.codxn-query-grid {
		grid-template-columns: 1fr;
	}
}

/* -----------------------------------------------------------------------
   Reusable Background Treatments
   Opt-in, token-driven decorative utilities. Preserve host background-color;
   decorative only. Not yet applied to any template or part markup.
----------------------------------------------------------------------- */

/* Solid — removes decorative background imagery only, keeps host fill */

/* Soft gradient — one restrained translucent brand tint over host fill */

/* Elevated — restrained palette-aware directional tint. */
.codxn-bg-elevated {
	background-image: linear-gradient(
		180deg,
		color-mix(
			in srgb,
			var(--wp--preset--color--brand-text) var(--wp--custom--bg--gradient-opacity),
			transparent
		) 0%,
		transparent 100%
	);
}

/* -----------------------------------------------------------------------
   Floating Actions (Phone / WhatsApp)
   Presentation only. Markup, hrefs, labels, SVG icons, and the two
   --codxn-fa-phone-color / --codxn-fa-whatsapp-color custom properties
   are rendered by the CODXN Client Core plugin; this theme owns layout,
   sizing, interaction states, and motion only.

   The stack is intentionally bottom-anchored, so the WordPress admin bar
   (top-anchored) never requires a vertical offset here. WordPress Core
   Navigation overlays (z-index: 100000 when open) and other critical
   modal UI must remain above this component at all times.
----------------------------------------------------------------------- */

.codxn-floating-actions {
	position: fixed;
	right: calc(1rem + env(safe-area-inset-right, 0px));
	bottom: calc(1rem + env(safe-area-inset-bottom, 0px));
	z-index: 40;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	width: max-content;
	pointer-events: none;
}

.codxn-floating-actions > .codxn-floating-action {
	pointer-events: auto;
}

.codxn-floating-action {
	--codxn-fa-ring-color: rgba(15, 23, 42, 0.16);
	--codxn-fa-elevation-shadow: 0 12px 30px rgba(15, 23, 42, 0.22);
	box-sizing: border-box;
	width: 56px;
	height: 56px;
	min-width: 56px;
	min-height: 56px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	border: 2px solid rgba(255, 255, 255, 0.94);
	text-decoration: none;
	color: #FFFFFF;
	transform: translateY(0) scale(1);
	transform-origin: center;
	box-shadow:
		0 0 0 3px var(--codxn-fa-ring-color),
		var(--codxn-fa-elevation-shadow);
	transition:
		transform var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard),
		box-shadow var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard),
		filter var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard);
}

.codxn-floating-action:visited {
	color: #FFFFFF;
}

.codxn-floating-action--phone {
	background-color: var(--codxn-fa-phone-color, var(--wp--custom--semantic--primary-brand));
}

.codxn-floating-action--whatsapp {
	background-color: var(--codxn-fa-whatsapp-color, #25D366);
}

/* Preserve clear edge separation when floating actions sit over dark
   sections. The brighter ring and layered shadow improve mobile contrast
   without changing the plugin-owned markup or configuration. */
html[data-codxn-color-scheme="dark"] .codxn-floating-action {
	--codxn-fa-ring-color: rgba(127, 176, 255, 0.34);
	--codxn-fa-elevation-shadow: 0 16px 34px rgba(0, 0, 0, 0.48);
	border-color: rgba(255, 255, 255, 0.96);
}

html[data-codxn-color-scheme="dark"] .codxn-floating-action--phone {
	background-color: var(--codxn-fa-phone-color, var(--wp--custom--semantic--primary-brand));
}

html[data-codxn-color-scheme="dark"] .codxn-floating-action--whatsapp {
	background-color: var(--codxn-fa-whatsapp-color, #25D366);
	color: #FFFFFF;
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) .codxn-floating-action {
		--codxn-fa-ring-color: rgba(127, 176, 255, 0.34);
		--codxn-fa-elevation-shadow: 0 16px 34px rgba(0, 0, 0, 0.48);
		border-color: rgba(255, 255, 255, 0.96);
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-floating-action--phone {
		background-color: var(--codxn-fa-phone-color, var(--wp--custom--semantic--primary-brand));
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-floating-action--whatsapp {
		background-color: var(--codxn-fa-whatsapp-color, #25D366);
		color: #FFFFFF;
	}
}

.codxn-floating-action__icon {
	width: 26px;
	height: 26px;
	display: block;
	flex: 0 0 auto;
	pointer-events: none;
}

.codxn-floating-action__label {
	/* Compatibility hook only; accessible-label visibility rules remain owned by .screen-reader-text. */
}

.codxn-floating-action:hover {
	transform: translateY(-2px) scale(1.05);
	box-shadow:
		0 0 0 4px var(--codxn-fa-ring-color),
		0 18px 38px rgba(15, 23, 42, 0.28);
	filter: brightness(1.05);
}

.codxn-floating-action:focus-visible {
	outline: 3px solid var(--wp--preset--color--control-focus);
	outline-offset: 3px;
	transform: translateY(-2px) scale(1.05);
	box-shadow:
		0 0 0 4px var(--codxn-fa-ring-color),
		var(--codxn-fa-elevation-shadow);
}

.codxn-floating-action:active {
	transform: translateY(0) scale(0.98);
	box-shadow:
		0 0 0 2px var(--codxn-fa-ring-color),
		0 7px 18px rgba(15, 23, 42, 0.2);
	filter: none;
}

@media (max-width: 600px) {
	.codxn-floating-actions {
		right: calc(0.75rem + env(safe-area-inset-right, 0px));
		bottom: calc(0.75rem + env(safe-area-inset-bottom, 0px));
		gap: 0.75rem;
	}
}

@media (min-width: 768px) {
	.codxn-floating-actions {
		right: calc(1rem + env(safe-area-inset-right, 0px));
		bottom: calc(1rem + env(safe-area-inset-bottom, 0px));
	}

	.codxn-floating-action {
		width: 56px;
		height: 56px;
		min-width: 56px;
		min-height: 56px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.codxn-floating-action,
	.codxn-floating-action:hover,
	.codxn-floating-action:focus-visible,
	.codxn-floating-action:active {
		transition: none;
		transform: none;
	}

	.codxn-floating-action:focus-visible {
		outline: 3px solid var(--wp--preset--color--control-focus);
		outline-offset: 3px;
	}
}

/* -----------------------------------------------------------------------
   SVG Icon Registry
   Minimal sizing/behavior for the sanitized renderer used by functional
   controls and by the single editable CODXN Icon block. The arrow icon is
   the only icon eligible for RTL mirroring, scoped strictly to [dir="rtl"].
----------------------------------------------------------------------- */

.codxn-icon {
	width: 1em;
	height: 1em;
	display: inline-block;
	flex-shrink: 0;
	vertical-align: middle;
	color: currentColor;
}

/* Imported local SVGs are wrapped by .codxn-icon. Their source files may carry
   legacy pixel dimensions, so constrain the inner root SVG to the wrapper. */
.codxn-icon > svg {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	max-inline-size: 100%;
	max-block-size: 100%;
}

.codxn-icon-library-block {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	inline-size: var(--codxn-icon-size, 32px);
	block-size: var(--codxn-icon-size, 32px);
	color: inherit;
	line-height: 1;
}

.codxn-icon-library-block > .codxn-icon,
.codxn-icon-library-block__svg {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	font-size: inherit;
}

.codxn-icon-library-block :where(svg) {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	max-inline-size: 100%;
	max-block-size: 100%;
}

[dir="rtl"] .codxn-icon--arrow {
	transform: scaleX(-1);
}

@media (prefers-reduced-motion: reduce) {
	.codxn-icon,
	[dir="rtl"] .codxn-icon--arrow {
		transition: none;
	}
}

/* -----------------------------------------------------------------------
   Appearance Control
   Canonical icon-only Light/Dark control. One source owns layout, menu,
   interaction, reduced-motion, RTL, and forced-colors behavior.
----------------------------------------------------------------------- */

.codxn-appearance {
	position: relative;
	display: inline-flex;
	align-items: center;
}

.codxn-appearance__trigger,
.codxn-appearance__option {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-inline-size: 44px;
	min-block-size: 44px;
	margin: 0;
	border: 1px solid var(--wp--preset--color--border);
	color: var(--wp--preset--color--foreground);
	font: inherit;
	line-height: 1;
	cursor: pointer;
}

.codxn-appearance__trigger {
	gap: 0;
	padding: 0.5rem;
	border-radius: var(--wp--custom--radius--pill);
	background-color: var(--wp--preset--color--surface);
	box-shadow:
		0 0 0 3px color-mix(in srgb, var(--wp--preset--color--brand-text) 8%, transparent),
		var(--wp--custom--shadow--sm);
}

.codxn-appearance__trigger-mode {
	display: inline-flex;
}

.codxn-appearance__trigger-mode--dark {
	display: none;
}

html[data-codxn-color-scheme="dark"] .codxn-appearance__trigger-mode--light {
	display: none;
}

html[data-codxn-color-scheme="dark"] .codxn-appearance__trigger-mode--dark {
	display: inline-flex;
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) .codxn-appearance__trigger-mode--light {
		display: none;
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-appearance__trigger-mode--dark {
		display: inline-flex;
	}
}

.codxn-appearance__mode-icon {
	inline-size: 1.35rem;
	block-size: 1.35rem;
	stroke-width: 1.75;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.codxn-appearance__menu {
	position: absolute;
	inset-block-start: calc(100% + 0.375rem);
	inset-inline-end: 0;
	z-index: 20;
	display: flex;
	gap: 0.375rem;
	min-inline-size: max-content;
	margin: 0;
	padding: 0.375rem;
	list-style: none;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--radius--pill);
	background-color: var(--wp--preset--color--surface);
	box-shadow: var(--wp--custom--shadow--lg);
}

.codxn-appearance__menu[hidden] {
	display: none;
}

.codxn-appearance__option {
	position: relative;
	inline-size: 44px;
	padding: 0.5rem;
	border-color: transparent;
	border-radius: 50%;
	background: transparent;
}

.codxn-appearance__option:hover {
	background-color: color-mix(in srgb, var(--wp--preset--color--brand-text) 10%, transparent);
}

.codxn-appearance__option[aria-checked="true"] {
	border-color: var(--wp--preset--color--brand-text);
	background-color: color-mix(in srgb, var(--wp--preset--color--brand-text) 14%, transparent);
	box-shadow: inset 0 0 0 2px var(--wp--preset--color--surface);
}

.codxn-appearance__option[aria-checked="true"]::after {
	content: "";
	position: absolute;
	inset-block-end: 4px;
	inset-inline-start: 50%;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background-color: currentColor;
	transform: translateX(-50%);
}

[dir="rtl"] .codxn-appearance__option[aria-checked="true"]::after {
	transform: translateX(50%);
}

.codxn-appearance__trigger:focus-visible,
.codxn-appearance__option:focus-visible {
	outline: 3px solid var(--wp--preset--color--control-focus);
	outline-offset: 3px;
}

@media (prefers-reduced-motion: no-preference) {
	.codxn-appearance__trigger,
	.codxn-appearance__option {
		transition: background-color var(--wp--custom--motion--duration--fast, 150ms) var(--wp--custom--motion--easing--standard, ease),
			border-color var(--wp--custom--motion--duration--fast, 150ms) var(--wp--custom--motion--easing--standard, ease);
	}
}

@media (prefers-reduced-motion: reduce) {
	.codxn-appearance__trigger,
	.codxn-appearance__option {
		transition: none;
	}
}

@media (forced-colors: active) {
	.codxn-appearance__trigger,
	.codxn-appearance__menu,
	.codxn-appearance__option {
		border-color: ButtonBorder;
		background-color: Canvas;
		color: CanvasText;
	}

	.codxn-appearance__trigger:focus-visible,
	.codxn-appearance__option:focus-visible {
		outline-color: Highlight;
	}

	.codxn-appearance__option[aria-checked="true"] {
		background-color: Highlight;
		color: HighlightText;
	}
}

/* -----------------------------------------------------------------------
   Shared Card BEM Child Structure
----------------------------------------------------------------------- */

.codxn-card__icon,
.codxn-card > .codxn-icon-library-block,
.codxn-about-principle > .codxn-icon-library-block {
	--codxn-icon-stage-size: calc(var(--codxn-icon-size, 28px) + 1.25rem);
	inline-size: var(--codxn-icon-stage-size);
	block-size: var(--codxn-icon-stage-size);
	box-sizing: border-box;
	padding: 0.625rem;
	display: grid;
	place-items: center;
	background-color: color-mix(in srgb, var(--codxn-palette-level-2) 58%, var(--wp--preset--color--surface));
	color: var(--wp--custom--semantic--icon-foreground);
	border: 1px solid var(--codxn-depth-border);
	border-radius: var(--wp--custom--radius--md);
	box-shadow: var(--codxn-depth-1);
	flex-shrink: 0;
}

/* -----------------------------------------------------------------------
   Shared Gutenberg Button Variants
----------------------------------------------------------------------- */

.wp-block-button:not(.is-style-outline):not(.codxn-btn-secondary) .wp-block-button__link,
.codxn-btn-primary .wp-block-button__link {
	background-color: var(--wp--preset--color--brand-fill);
	color: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--brand-fill);
	box-shadow: var(--codxn-depth-1);
}

.wp-block-button:not(.is-style-outline):not(.codxn-btn-secondary) .wp-block-button__link:hover,
.wp-block-button:not(.is-style-outline):not(.codxn-btn-secondary) .wp-block-button__link:focus-visible,
.codxn-btn-primary .wp-block-button__link:hover,
.codxn-btn-primary .wp-block-button__link:focus-visible {
	background-color: var(--wp--preset--color--brand-fill-hover);
	border-color: var(--wp--preset--color--brand-fill-hover);
	color: var(--wp--preset--color--white);
	box-shadow: var(--codxn-depth-2);
}

.codxn-btn-secondary .wp-block-button__link {
	background-color: color-mix(in srgb, var(--codxn-palette-level-2) 42%, var(--wp--preset--color--surface));
	color: var(--wp--preset--color--brand-text);
	border-color: var(--codxn-depth-border-elevated);
	box-shadow: var(--codxn-depth-0);
}

.codxn-btn-secondary .wp-block-button__link:hover,
.codxn-btn-secondary .wp-block-button__link:focus-visible {
	background-color: color-mix(in srgb, var(--codxn-palette-level-3) 48%, var(--wp--preset--color--surface));
	border-color: var(--wp--preset--color--brand-fill-hover);
	box-shadow: var(--codxn-depth-1);
}

.wp-block-button.is-style-outline .wp-block-button__link {
	background-color: transparent;
	color: var(--wp--preset--color--brand-text);
	border-color: var(--codxn-depth-border-elevated);
	box-shadow: var(--codxn-depth-0);
}

.wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:focus-visible {
	background-color: color-mix(in srgb, var(--codxn-palette-level-2) 48%, var(--wp--preset--color--surface));
	border-color: var(--wp--preset--color--brand-fill-hover);
	box-shadow: var(--codxn-depth-1);
}

/* Secondary actions need an on-dark foreground only when their immediate surface is dark. */
:where(
	.codxn-about-clinic-cta__inner,
	.codxn-services-mid-cta__inner,
	.codxn-doctors-final-cta__inner,
	.codxn-doctors-page-cta__inner,
	.codxn-unified-final-cta__inner,
	.has-medical-navy-background-color
) :is(.codxn-btn-secondary, .wp-block-button.is-style-outline) .wp-block-button__link {
	background-color: transparent;
	color: var(--wp--custom--semantic--text-on-dark);
	border-color: color-mix(in srgb, var(--wp--preset--color--white) 42%, transparent);
}

/* Premium commercial CTA modifier.
   Opt-in only: layer on an existing primary Gutenberg button
   variant for high-value conversion actions. */
.wp-block-button.codxn-cta-premium .wp-block-button__link {
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--brand-fill) 78%, var(--wp--preset--color--surface));
	box-shadow: var(--codxn-depth-2);
}

@media (hover: hover) and (pointer: fine) {
	.wp-block-button.codxn-cta-premium .wp-block-button__link:hover {
		border-color: color-mix(in srgb, var(--wp--preset--color--brand-fill) 58%, var(--wp--preset--color--accent));
		box-shadow: var(--codxn-depth-3);
		transform: translateY(-2px);
	}
}

.wp-block-button.codxn-cta-premium .wp-block-button__link:active {
	box-shadow: var(--codxn-depth-1);
	transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
	.wp-block-button.codxn-cta-premium .wp-block-button__link {
		transition: none;
	}

	.wp-block-button.codxn-cta-premium .wp-block-button__link:hover,
	.wp-block-button.codxn-cta-premium .wp-block-button__link:active,
	.wp-block-button.codxn-cta-premium .wp-block-button__link:focus-visible {
		transform: none;
	}
}

/* -----------------------------------------------------------------------
   Shared Illustration Foundation
----------------------------------------------------------------------- */

.codxn-illustration {
	display: block;
	max-width: 100%;
	height: auto;
	color: var(--wp--preset--color--brand-fill);
}

.codxn-illustration--hero {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: contain;
}

/* -----------------------------------------------------------------------
   Shared Motion and Interaction Foundation (Opt-in)
----------------------------------------------------------------------- */

/* Hover elevation used only by explicitly opted-in cards. */
.codxn-motion-elevate {
	transition:
		transform var(--wp--custom--motion--duration--normal) var(--wp--custom--motion--easing--standard),
		box-shadow var(--wp--custom--motion--duration--normal) var(--wp--custom--motion--easing--standard);
}
@media (hover: hover) and (pointer: fine) {
	.codxn-motion-elevate:hover {
		transform: translateY(-2px);
		box-shadow: var(--codxn-depth-3);
	}
}

/* 6. Accordion Open/Close (Native Details) */

/* 7. Reduced Motion Overrides */
@media (prefers-reduced-motion: reduce) {
	.codxn-motion-elevate,
	.codxn-motion-elevate:hover {
		transition: none !important;
	}
}

/* -----------------------------------------------------------------------
   About Clinic Cinematic Page
   About-template-only composition using the existing semantic palette,
   local icon system, and shared reveal architecture.
----------------------------------------------------------------------- */

.codxn-about-cinematic {
	position: relative;
	isolation: isolate;
	overflow: clip;
	min-block-size: auto;
	padding-block: clamp(1.5rem, 4vw, 3.5rem) !important;
	background-color: var(--wp--preset--color--background) !important;
	background-image: none !important;
}

.codxn-about-cinematic__layout {
	position: relative;
	overflow: hidden;
	display: grid !important;
	grid-template-columns: minmax(0, 46fr) minmax(0, 54fr);
	align-items: stretch !important;
	box-sizing: border-box;
	inline-size: min(100%, 84rem);
	max-inline-size: 84rem !important;
	margin-block: 0;
	margin-inline: auto;
	gap: clamp(1.75rem, 4vw, 4rem) !important;
	padding: clamp(1.25rem, 3.5vw, 3.5rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 20%, var(--wp--preset--color--border));
	border-radius: 2rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 92%, var(--wp--preset--color--accent-soft));
	box-shadow: 0 1.25rem 3rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 9%, transparent);
	color: var(--wp--preset--color--foreground);
}

.codxn-about-cinematic__content,
.codxn-about-cinematic__media {
	min-inline-size: 0;
}

.codxn-about-cinematic__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	align-self: stretch !important;
	box-sizing: border-box;
	padding-block: clamp(0.75rem, 2vw, 1.75rem);
	text-align: start;
}

.codxn-about-cinematic__content > * {
	margin-inline: 0;
	text-align: start;
}

.codxn-about-cinematic__content > .codxn-eyebrow {
	margin-block: 0 0.65rem;
	color: var(--wp--preset--color--brand-text) !important;
}

.codxn-about-cinematic__content h1 {
	max-inline-size: 14ch;
	margin-block: 0;
	font-weight: 700;
	text-wrap: balance;
}

.codxn-about-cinematic .codxn-about-cinematic__content h1,
body:not(.wp-admin):not(.block-editor-page):not(.editor-styles-wrapper) > .wp-site-blocks .codxn-about-cinematic .codxn-about-cinematic__content h1 {
	background: none !important;
	color: var(--wp--preset--color--foreground) !important;
	-webkit-text-fill-color: currentColor !important;
}

.codxn-about-cinematic__content > p:not(.codxn-eyebrow) {
	max-inline-size: 42rem;
	margin-block: clamp(1rem, 2vw, 1.4rem) 0;
	color: var(--wp--preset--color--text-muted) !important;
	font-size: clamp(1rem, 1.4vw, 1.125rem) !important;
	line-height: 1.85;
	text-wrap: pretty;
}

.codxn-about-cinematic__media {
	display: flex;
	align-items: stretch;
	align-self: stretch !important;
	min-inline-size: 0;
	padding: 0;
}

.codxn-about-cinematic__media::before {
	display: none;
}

.codxn-about-cinematic__image {
	overflow: hidden;
	inline-size: 100%;
	min-block-size: clamp(27rem, 38vw, 36rem);
	aspect-ratio: 5 / 4;
	margin: 0;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 20%, var(--wp--preset--color--border));
	border-radius: 1.5rem;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 46%, var(--wp--preset--color--surface));
	box-shadow: 0 0.85rem 2rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 12%, transparent);
}

.codxn-about-cinematic__image img {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	object-fit: cover;
}

.codxn-about-clinic__actions {
	gap: var(--wp--preset--spacing--sm);
	margin-block-start: var(--wp--preset--spacing--lg);
}

.codxn-about-cinematic .codxn-about-clinic__actions {
	justify-content: flex-start;
}

.codxn-about-cinematic .codxn-about-clinic__actions .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-block-size: 3rem;
	padding: 0.75rem 1.4rem;
	border-radius: 0.875rem;
	font-weight: 700;
	text-align: center;
}

.codxn-about-cinematic .codxn-btn-secondary .wp-block-button__link {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 36%, var(--wp--preset--color--border));
	background: transparent;
	color: var(--wp--preset--color--foreground);
}

.codxn-about-section-intro {
	inline-size: min(100%, 54rem);
	max-inline-size: 54rem;
	margin-inline: auto;
	margin-block-end: clamp(1.75rem, 4vw, 2.75rem);
	text-align: center;
}

.codxn-about-section-intro > * {
	margin-inline: auto;
}

.codxn-about-section-intro > .codxn-eyebrow {
	margin-block: 0 0.65rem;
}

.codxn-about-section-intro h2 {
	margin-block: 0;
	text-wrap: balance;
}

.codxn-about-section-intro > p:not(.codxn-eyebrow) {
	max-inline-size: 44rem;
	margin-block: 1rem 0;
	line-height: 1.8;
}

.codxn-about-care-grid,
.codxn-about-principles {
	padding-block: clamp(3.75rem, 7vw, 5.5rem) !important;
}

.codxn-about-care-grid__items {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
	gap: clamp(1rem, 2vw, 1.5rem);
	inline-size: min(100%, var(--wp--style--global--wide-size));
	margin-inline: auto;
}

.codxn-about-care-grid__items > .codxn-about-care-card {
	margin-block-start: 0;
}

.codxn-about-care-card {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	align-items: center;
	box-sizing: border-box;
	min-inline-size: 0;
	min-block-size: 100%;
	padding: clamp(1.375rem, 2vw, 1.625rem) !important;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 15%, var(--wp--preset--color--border));
	border-radius: 1.375rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 96%, var(--wp--preset--color--accent-soft));
	box-shadow: 0 0.55rem 1.4rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 6%, transparent);
	text-align: center;
}

.codxn-about-care-card::before {
	display: none;
}

.codxn-about-care-card > .codxn-icon-library-block,
.codxn-about-principle > .codxn-icon-library-block {
	flex: 0 0 auto;
	margin-inline: auto;
	margin-block-end: 1rem;
}

.codxn-about-care-card h3,
.codxn-about-principle h3 {
	margin-block: 0 0.6rem;
	font-size: clamp(1rem, 1.4vw, 1.125rem);
	font-weight: 700;
	line-height: 1.45;
	text-align: center;
}

.codxn-about-care-card p,
.codxn-about-principle p {
	margin-block: 0;
	max-inline-size: 38ch;
	color: var(--wp--preset--color--text-muted);
	font-size: 0.95rem;
	line-height: 1.7;
	text-align: center;
}

.codxn-about-care-card :is(h3, p),
.codxn-about-principle :is(h3, p) {
	word-break: normal;
	overflow-wrap: normal;
	hyphens: none;
}

.codxn-about-story {
	padding-block: clamp(3rem, 5vw, 4.5rem) !important;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 72%, var(--wp--preset--color--background)) !important;
}

.codxn-about-gallery {
	padding-block: clamp(3.5rem, 7vw, 5.5rem) !important;
	background-image: none !important;
}

.codxn-about-story__layout {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	justify-items: center;
	gap: clamp(1.75rem, 3vw, 2.75rem) !important;
	inline-size: min(100%, 68rem);
	margin-inline: auto;
}

.codxn-about-story__content,
.codxn-about-story__media {
	min-inline-size: 0;
}

.codxn-about-story__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	inline-size: min(100%, 54rem);
	padding-inline-start: clamp(1rem, 3vw, 2rem);
	border-inline-start: 2px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 42%, var(--wp--preset--color--border));
	text-align: start;
}

.codxn-about-story__content > * {
	margin-inline: 0;
	text-align: start;
}

.codxn-about-story__content > .codxn-eyebrow {
	margin-block: 0 0.7rem;
}

.codxn-about-story__content h2 {
	max-inline-size: 21ch;
	margin-block: 0;
	text-wrap: balance;
}

.codxn-about-story__content > p:not(.codxn-eyebrow) {
	max-inline-size: 58ch;
	margin-block: clamp(1rem, 2vw, 1.35rem) 0;
	font-size: clamp(1rem, 1.2vw, 1.075rem);
	line-height: 1.9;
	text-align: start;
}

.codxn-about-story__image {
	overflow: hidden;
	inline-size: min(100%, 68rem);
	aspect-ratio: 16 / 7;
	margin: 0;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 15%, var(--wp--preset--color--border));
	border-radius: 0.875rem;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 38%, var(--wp--preset--color--surface));
	box-shadow: none;
}

.codxn-about-story__image img {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	object-fit: cover;
}

.codxn-about-principles__items {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	align-items: stretch;
	gap: clamp(1rem, 2vw, 1.5rem);
	overflow: visible;
	inline-size: min(100%, var(--wp--style--global--wide-size));
	margin-inline: auto;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.codxn-about-principle {
	display: flex;
	flex-direction: column;
	align-items: center;
	box-sizing: border-box;
	min-inline-size: 0;
	min-block-size: 0;
	margin: 0;
	padding: clamp(1.25rem, 2vw, 1.75rem) 0 0;
	border: 0;
	border-block-start: 2px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 34%, var(--wp--preset--color--border));
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	text-align: center;
}

.codxn-about-gallery__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.6fr) minmax(17rem, 1fr);
	grid-template-rows: repeat(2, clamp(12rem, 18vw, 16rem));
	gap: 1rem;
	inline-size: min(100%, var(--wp--style--global--wide-size));
	margin-inline: auto;
}

.codxn-about-gallery .codxn-about-section-intro {
	margin-block-end: clamp(1.75rem, 4vw, 2.75rem);
}

.codxn-about-gallery__image {
	position: relative;
	overflow: hidden;
	min-inline-size: 0;
	min-block-size: 0;
	margin: 0;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 15%, var(--wp--preset--color--border));
	border-radius: 1.5rem;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 42%, var(--wp--preset--color--surface));
	box-shadow: 0 0.6rem 1.5rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 6%, transparent);
}

.codxn-about-gallery__image.is-primary {
	grid-row: 1 / span 2;
}

.codxn-about-gallery__image img {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	min-block-size: 100%;
	object-fit: cover;
}

.codxn-about-clinic-cta {
	padding-block: clamp(3.5rem, 7vw, 5.5rem) !important;
	background-color: var(--wp--preset--color--background) !important;
	background-image: none !important;
	color: var(--wp--preset--color--foreground) !important;
}

.codxn-about-clinic-cta__inner {
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
	inline-size: min(100%, 68rem);
	max-inline-size: 68rem;
	margin-inline: auto;
	padding: clamp(2.5rem, 6vw, 4.5rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 26%, var(--wp--preset--color--border));
	border-radius: 1.75rem;
	background: color-mix(in srgb, var(--wp--preset--color--medical-navy) 94%, var(--wp--preset--color--medical-teal));
	box-shadow: 0 1rem 2.5rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 12%, transparent);
	color: var(--wp--preset--color--white);
	text-align: center;
}

.codxn-about-clinic-cta__inner > * {
	margin-inline: auto;
}

.codxn-about-clinic-cta__inner > .codxn-eyebrow {
	margin-block: 0 0.7rem;
	color: var(--wp--preset--color--accent-soft) !important;
}

.codxn-about-clinic-cta__inner > p:not(.codxn-eyebrow) {
	max-inline-size: 44rem;
	margin-block: 1rem 0;
	color: color-mix(in srgb, var(--wp--preset--color--white) 82%, transparent);
	line-height: 1.8;
}

.codxn-about-clinic-cta__inner h2 {
	max-inline-size: 18ch;
	margin-block: 0;
	background: none;
	color: var(--wp--preset--color--white) !important;
	line-height: 1.2;
	text-shadow: none;
	-webkit-text-fill-color: currentColor;
	text-wrap: balance;
}

.codxn-about-clinic-cta .codxn-about-clinic__actions {
	justify-content: center;
	margin-block-start: clamp(1.5rem, 3vw, 2rem);
}

.codxn-about-clinic-cta .codxn-about-clinic__actions .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-block-size: 3rem;
	padding: 0.75rem 1.4rem;
	border-radius: 0.875rem;
	font-weight: 700;
	text-align: center;
}

.codxn-about-clinic-cta .codxn-btn-secondary .wp-block-button__link {
	border-color: color-mix(in srgb, var(--wp--preset--color--white) 42%, transparent);
	background: transparent;
	color: var(--wp--preset--color--white);
	box-shadow: none;
}

.codxn-about-clinic-cta .codxn-about-clinic__actions .wp-block-button__link:focus-visible {
	outline: 3px solid var(--wp--preset--color--accent-soft);
	outline-offset: 3px;
}

html[data-codxn-color-scheme="dark"] :is(.codxn-about-care-card, .codxn-about-story__image, .codxn-about-gallery__image) {
	box-shadow: 0 1.5rem 3.5rem color-mix(in srgb, var(--wp--preset--color--black) 24%, transparent);
}

html[data-codxn-color-scheme="dark"] :is(.codxn-about-story__image, .codxn-about-gallery__image) {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 20%, var(--wp--preset--color--border));
	box-shadow: 0 0.75rem 1.7rem color-mix(in srgb, var(--wp--preset--color--black) 16%, transparent);
}

html[data-codxn-color-scheme="dark"] .codxn-about-care-card {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 22%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--surface) 96%, var(--wp--preset--color--medical-navy));
	box-shadow: 0 0.75rem 1.6rem color-mix(in srgb, var(--wp--preset--color--black) 16%, transparent);
}

html[data-codxn-color-scheme="dark"] .codxn-about-clinic-cta__inner {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 24%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--medical-navy) 88%, var(--wp--preset--color--surface));
	box-shadow: 0 1rem 2.5rem color-mix(in srgb, var(--wp--preset--color--black) 22%, transparent);
}

html[data-codxn-color-scheme="dark"] .codxn-about-cinematic__layout {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 24%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--surface) 94%, var(--wp--preset--color--medical-navy));
	box-shadow: 0 1.5rem 3.5rem color-mix(in srgb, var(--wp--preset--color--black) 25%, transparent);
}

html[data-codxn-color-scheme="dark"] .codxn-about-cinematic__image {
	box-shadow: 0 1rem 2.25rem color-mix(in srgb, var(--wp--preset--color--black) 28%, transparent);
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) :is(.codxn-about-care-card, .codxn-about-story__image, .codxn-about-gallery__image) {
		box-shadow: 0 1.5rem 3.5rem color-mix(in srgb, var(--wp--preset--color--black) 24%, transparent);
	}

	html:not([data-codxn-color-scheme="light"]) :is(.codxn-about-story__image, .codxn-about-gallery__image) {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 20%, var(--wp--preset--color--border));
		box-shadow: 0 0.75rem 1.7rem color-mix(in srgb, var(--wp--preset--color--black) 16%, transparent);
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-about-care-card {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 22%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--surface) 96%, var(--wp--preset--color--medical-navy));
		box-shadow: 0 0.75rem 1.6rem color-mix(in srgb, var(--wp--preset--color--black) 16%, transparent);
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-about-clinic-cta__inner {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 24%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--medical-navy) 88%, var(--wp--preset--color--surface));
		box-shadow: 0 1rem 2.5rem color-mix(in srgb, var(--wp--preset--color--black) 22%, transparent);
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-about-cinematic__layout {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 24%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--surface) 94%, var(--wp--preset--color--medical-navy));
		box-shadow: 0 1.5rem 3.5rem color-mix(in srgb, var(--wp--preset--color--black) 25%, transparent);
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-about-cinematic__image {
		box-shadow: 0 1rem 2.25rem color-mix(in srgb, var(--wp--preset--color--black) 28%, transparent);
	}
}

@media (max-width: 1024px) {
	.codxn-about-care-grid,
	.codxn-about-story,
	.codxn-about-principles,
	.codxn-about-gallery,
	.codxn-about-clinic-cta {
		padding-block: clamp(3.25rem, 7vw, 4.5rem) !important;
	}

	.codxn-about-clinic-cta__inner {
		padding: clamp(2.25rem, 6vw, 3.5rem);
	}

	.codxn-about-cinematic {
		min-block-size: auto;
	}

	.codxn-about-cinematic__layout,
	.codxn-about-story__layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.codxn-about-cinematic__content,
	.codxn-about-cinematic__media,
	.codxn-about-story__content,
	.codxn-about-story__media {
		flex-basis: 100% !important;
	}

	.codxn-about-cinematic__media {
		inline-size: 100%;
		margin-inline: auto;
	}

	.codxn-about-cinematic__layout {
		inline-size: min(100%, 48rem);
		gap: clamp(1.5rem, 5vw, 2.5rem) !important;
	}

	.codxn-about-cinematic__image {
		min-block-size: 0;
		aspect-ratio: 16 / 10;
	}

	.codxn-about-story__layout {
		inline-size: min(100%, 48rem);
		margin-inline: auto;
		gap: clamp(1.75rem, 5vw, 2.75rem) !important;
	}

	.codxn-about-story__image {
		aspect-ratio: 16 / 10;
	}

	.codxn-about-gallery__grid {
		grid-template-columns: minmax(0, 3fr) minmax(14rem, 2fr);
		grid-template-rows: repeat(2, clamp(10rem, 22vw, 13rem));
	}

	.codxn-about-care-grid__items {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.codxn-about-principles__items {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.codxn-about-cinematic,
	.codxn-about-care-grid,
	.codxn-about-story,
	.codxn-about-principles,
	.codxn-about-gallery,
	.codxn-about-clinic-cta {
		padding-inline: 0;
	}

	.codxn-about-cinematic {
		padding-inline: var(--wp--preset--spacing--sm) !important;
	}

	.codxn-about-care-grid,
	.codxn-about-story,
	.codxn-about-principles,
	.codxn-about-gallery,
	.codxn-about-clinic-cta {
		padding-inline: var(--wp--preset--spacing--sm) !important;
		padding-block: clamp(3rem, 12vw, 4rem) !important;
	}

	.codxn-about-clinic-cta__inner {
		padding: 1.5rem;
		border-radius: 1.5rem;
	}

	.codxn-about-clinic-cta__inner h2 {
		max-inline-size: 100%;
		font-size: clamp(2rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
	}

	.codxn-about-section-intro h2 {
		font-size: clamp(2rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
	}

	.codxn-about-cinematic__layout,
	.codxn-about-story__layout {
		gap: var(--wp--preset--spacing--xl) !important;
	}

	.codxn-about-cinematic__layout {
		gap: 1.5rem !important;
		padding: 1rem;
		border-radius: 1.375rem;
	}

	.codxn-about-story__layout {
		gap: 1.5rem !important;
	}

	.codxn-about-story__content {
		align-items: flex-start;
		text-align: start;
	}

	.codxn-about-story__content h2 {
		max-inline-size: 100%;
		font-size: clamp(1.9rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
	}

	.codxn-about-story__image {
		aspect-ratio: 4 / 3;
		border-radius: 1.25rem;
	}

	.codxn-about-cinematic__content {
		align-items: center;
		padding: 0.75rem 0.25rem 0;
		text-align: center;
	}

	.codxn-about-cinematic__content > * {
		margin-inline: auto;
		text-align: center;
	}

	.codxn-about-cinematic__content h1 {
		max-inline-size: 100%;
		font-size: clamp(2rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
	}

	.codxn-about-cinematic__media {
		padding: 0;
	}

	.codxn-about-cinematic__image {
		min-block-size: 0;
		aspect-ratio: 4 / 3;
		border-radius: 1.375rem;
	}

	.codxn-about-cinematic .codxn-about-clinic__actions {
		justify-content: center;
	}

	.codxn-about-clinic__actions {
		inline-size: 100%;
		justify-content: center;
	}

	.codxn-about-clinic__actions .wp-block-button,
	.codxn-about-clinic__actions .wp-block-button__link {
		inline-size: fit-content;
		max-inline-size: 100%;
	}

	.codxn-about-clinic__actions .wp-block-button__link {
		justify-content: center;
		text-align: center;
	}

	.codxn-about-gallery__grid {
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: repeat(3, auto);
		gap: 0.75rem;
	}

	.codxn-about-care-grid__items,
	.codxn-about-principles__items {
		grid-template-columns: minmax(0, 1fr);
	}

	.codxn-about-care-grid__items {
		gap: 0.875rem;
	}

	.codxn-about-care-card {
		padding: 1.25rem !important;
		border-radius: 1.25rem;
	}

	.codxn-about-care-card > .codxn-icon-library-block {
		margin-block-end: 0.875rem;
		border-radius: 0.8rem;
	}

	.codxn-about-care-card h3 {
		font-size: clamp(1rem, 4.5vw, 1.08rem);
		line-height: 1.45;
	}

	.codxn-about-care-card p {
		font-size: clamp(0.88rem, 3.8vw, 0.95rem);
		line-height: 1.7;
	}

	.codxn-about-principles__items {
		gap: 0.875rem;
	}

	.codxn-about-principle {
		padding: 1.25rem 0 0;
		border-radius: 0;
	}

	.codxn-about-principle > .codxn-icon-library-block {
		margin-block-end: 0.875rem;
		border-radius: 0.8rem;
	}

	.codxn-about-principle h3 {
		font-size: clamp(1rem, 4.5vw, 1.08rem);
		line-height: 1.45;
	}

	.codxn-about-principle p {
		font-size: clamp(0.88rem, 3.8vw, 0.95rem);
		line-height: 1.7;
	}

	.codxn-about-gallery__image.is-primary {
		grid-column: auto;
		grid-row: auto;
		aspect-ratio: 16 / 10;
	}

	.codxn-about-gallery__image:not(.is-primary) {
		grid-column: auto;
		grid-row: auto;
		aspect-ratio: 4 / 3;
	}

	.codxn-about-gallery__image {
		border-radius: 1.25rem;
	}

	.codxn-about-story__content > p:not(.codxn-eyebrow) {
		text-align: start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.codxn-about-cinematic__image,
	.codxn-about-care-card,
	.codxn-about-principle,
	.codxn-about-story__image,
	.codxn-about-gallery__image {
		animation: none;
		transition: none;
	}
}

@media (forced-colors: active) {
	:is(
		.codxn-about-cinematic__layout,
		.codxn-about-cinematic__image,
		.codxn-about-care-card,
		.codxn-about-principles__items,
		.codxn-about-principle,
		.codxn-about-story__image,
		.codxn-about-gallery__image,
		.codxn-about-clinic-cta__inner
	) {
		border-color: CanvasText;
		background: Canvas;
		color: CanvasText;
		box-shadow: none;
	}

	.codxn-about-clinic-cta__inner h2 {
		background: none;
		color: CanvasText !important;
		-webkit-text-fill-color: currentColor;
		text-shadow: none;
	}

	.codxn-about-clinic-cta__inner > .codxn-eyebrow,
	.codxn-about-clinic-cta__inner > p:not(.codxn-eyebrow) {
		color: CanvasText !important;
	}
}

.codxn-site-header {
	position: relative;
	background: color-mix(in srgb, var(--codxn-palette-surface) 92%, var(--codxn-palette-soft));
	border-block-end-color: color-mix(in srgb, var(--wp--preset--color--border) 64%, var(--codxn-palette-accent)) !important;
	box-shadow: 0 0.5rem 1.5rem color-mix(in srgb, var(--codxn-palette-deep) 7%, transparent);
}

.codxn-site-header::before {
	content: "";
	position: absolute;
	inset-block-start: 0;
	inset-inline: 0;
	block-size: 3px;
	pointer-events: none;
	background: linear-gradient(
		90deg,
		var(--codxn-palette-deep) 0 20%,
		var(--codxn-palette-primary) 20% 52%,
		var(--codxn-palette-accent) 52% 78%,
		var(--wp--preset--color--medical-cyan) 78% 100%
	);
}

.codxn-site-header .codxn-header-bar {
	row-gap: var(--wp--preset--spacing--xs, 0.75rem);
}

.codxn-site-header .codxn-brand {
	min-width: 0;
}

/* Header and footer keep independent Gutenberg Site Logo width controls.
 * The image fills the block-selected width without being capped by its
 * intrinsic file dimensions, while remaining inside its available column. */
.codxn-header-logo,
.codxn-footer-logo {
	flex: 0 0 auto;
	max-inline-size: 100%;
}

.codxn-header-logo img,
.codxn-footer-logo img {
	display: block;
	inline-size: 100%;
	block-size: auto;
	max-inline-size: none;
}

.codxn-site-header .codxn-header-actions {
	gap: var(--wp--preset--spacing--md, 1.25rem);
}

.codxn-site-header .codxn-header-utility {
	gap: var(--wp--preset--spacing--sm, 1rem);
	flex-wrap: nowrap;
}

.codxn-site-header .codxn-header-utility .codxn-appearance {
	flex: 0 0 auto;
}

.codxn-site-header .codxn-header-cta {
	margin: 0;
}

.codxn-site-header .wp-block-site-title,
.codxn-site-header .wp-block-site-title a {
	color: var(--codxn-palette-deep);
	text-decoration: none;
}

.codxn-site-header .wp-block-navigation-item__content {
	color: var(--wp--preset--color--foreground);
	text-decoration: none;
	text-underline-offset: 0.3em;
}

.codxn-site-header .wp-block-navigation-item__content:hover,
.codxn-site-header .wp-block-navigation-item__content:focus-visible {
	color: var(--codxn-palette-primary);
	text-decoration: underline;
}

.codxn-site-header .wp-block-navigation-item__content[aria-current="page"] {
	color: var(--codxn-palette-primary);
	font-weight: 600;
}

.codxn-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content[aria-current="page"] {
	text-decoration-line: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 0.3em;
}

.codxn-site-footer {
	position: relative;
	isolation: isolate;
	background: var(--codxn-palette-deep);
	color: var(--wp--preset--color--white);
	box-sizing: border-box;
	padding-block: clamp(var(--wp--preset--spacing--xl), 6vw, var(--wp--preset--spacing--2-xl)) 1.25rem;
	padding-inline: clamp(var(--wp--preset--spacing--md), 3vw, var(--wp--preset--spacing--xl));
}

.codxn-site-footer::before {
	content: "";
	position: absolute;
	inset-block-start: 0;
	inset-inline: 0;
	block-size: 4px;
	pointer-events: none;
	background: linear-gradient(
		90deg,
		var(--codxn-palette-primary) 0 34%,
		var(--codxn-palette-accent) 34% 68%,
		var(--wp--preset--color--medical-cyan) 68% 100%
	);
}

.codxn-site-footer :where(.codxn-footer-clinic-name, .codxn-footer-heading) {
	color: var(--wp--preset--color--medical-cyan);
}

.codxn-site-footer :where(.codxn-footer-desc, .codxn-footer-legal li) {
	color: color-mix(in srgb, var(--wp--preset--color--white) 78%, var(--codxn-palette-soft));
}

.codxn-site-footer :where(.wp-block-navigation-item__content, .codxn-footer-column a) {
	color: var(--wp--preset--color--white);
}

.codxn-site-footer :where(.wp-block-navigation-item__content, .codxn-footer-column a):hover,
.codxn-site-footer :where(.wp-block-navigation-item__content, .codxn-footer-column a):focus-visible {
	color: var(--codxn-palette-soft);
}

.codxn-site-footer .wp-block-navigation-item__content[aria-current="page"] {
	color: var(--wp--preset--color--medical-cyan);
	text-decoration-line: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.3em;
}

.codxn-site-footer .codxn-footer-bottom {
	border-block-start-color: color-mix(in srgb, var(--codxn-palette-accent) 46%, transparent);
}

@media (max-width: 781px) {
	.codxn-site-header .codxn-header-bar {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
		align-items: center;
		justify-content: normal;
	}

	.codxn-site-header .codxn-brand {
		grid-column: 2;
		justify-self: center;
	}

	.codxn-site-header .codxn-header-actions {
		grid-column: 1 / -1;
		grid-row: 2;
		width: 100%;
		justify-content: space-between;
	}

	.codxn-site-header .wp-block-navigation__responsive-container-open {
		position: relative;
	}

	.codxn-site-header .wp-block-navigation__responsive-container-open svg {
		display: none;
	}

	.codxn-site-header .wp-block-navigation__responsive-container-open::before {
		content: "";
		position: absolute;
		inset-inline-start: 50%;
		inset-block-start: 50%;
		inline-size: 1.375rem;
		block-size: 0.125rem;
		margin-inline-start: -0.6875rem;
		margin-block-start: -0.71875rem;
		background: currentColor;
		box-shadow: 0 0.4375rem 0 currentColor, 0 0.875rem 0 currentColor, 0 1.3125rem 0 currentColor;
	}

	.codxn-site-header .codxn-primary-navigation:has(.wp-block-navigation__responsive-container.is-menu-open) .wp-block-navigation__responsive-container-open::before {
		visibility: hidden;
	}

	.codxn-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
		display: flex;
		align-items: center;
		justify-content: center;
		color: var(--wp--preset--color--medical-navy);
		opacity: 1;
		visibility: visible;
	}

	.codxn-site-header .wp-block-navigation__responsive-container-close svg {
		inline-size: 2rem;
		block-size: 2rem;
		fill: currentColor;
	}
}

@media (max-width: 480px) {
	.codxn-site-header .codxn-header-cta .wp-block-button__link {
		padding-inline: 1.1em;
	}
}

html[data-codxn-color-scheme="dark"] .codxn-site-header {
	background: color-mix(in srgb, var(--wp--preset--color--surface) 90%, var(--codxn-palette-deep));
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) .codxn-site-header {
		background: color-mix(in srgb, var(--wp--preset--color--surface) 90%, var(--codxn-palette-deep));
	}
}

/* -----------------------------------------------------------------------
   Shared Footer Refinement + Social Sharing
----------------------------------------------------------------------- */

footer,
.codxn-site-footer {
	overflow: clip;
}

footer .wp-block-columns {
	align-items: flex-start;
	row-gap: var(--wp--preset--spacing--lg);
}

.codxn-site-footer .codxn-footer-heading,
footer .wp-block-heading {
	margin-block-start: 0;
	line-height: 1.4;
}

footer .wp-block-navigation__container {
	gap: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--md);
}

footer .wp-block-navigation-item__content {
	text-decoration: none;
	text-underline-offset: 0.2em;
}

footer .wp-block-navigation-item__content:hover,
footer .wp-block-navigation-item__content:focus-visible {
	text-decoration: underline;
}

.codxn-footer-social {
	margin-block-start: var(--wp--preset--spacing--lg);
	padding-block: var(--wp--preset--spacing--md);
	padding-inline: var(--wp--preset--spacing--md);
	border-block: 1px solid color-mix(in srgb, currentColor 16%, transparent);
	background:
		linear-gradient(
			135deg,
			color-mix(in srgb, var(--wp--preset--color--medical-teal) 12%, transparent),
			color-mix(in srgb, var(--wp--preset--color--brand-fill) 8%, transparent)
		);
	color: inherit;
}

/* -----------------------------------------------------------------------
   FAQ Knowledge Desk — dynamic native accordion
----------------------------------------------------------------------- */

.codxn-faq-page {
	overflow: clip;
}

.codxn-faq-page > * {
	margin-block-start: 0;
}

.codxn-faq-knowledge-header {
	position: relative;
	isolation: isolate;
	border-block-end: 1px solid var(--wp--preset--color--border);
}

.codxn-faq-knowledge-header__inner {
	position: relative;
	z-index: 1;
	inline-size: min(100%, 90rem);
	margin-inline: auto;
	gap: clamp(2rem, 5vw, 5rem);
}

.codxn-faq-knowledge-header__content {
	max-inline-size: 42rem;
	margin-inline: auto;
}

.codxn-faq-knowledge-header__inner h1 {
	max-inline-size: 18ch;
	margin-inline: auto;
	text-wrap: balance;
}

.codxn-faq-knowledge-header__content > :last-child {
	max-inline-size: 44rem;
	margin-inline: auto;
	line-height: 1.85;
}

.codxn-faq-knowledge-header__media {
	overflow: hidden;
	min-block-size: clamp(18rem, 30vw, 27rem);
}

.codxn-faq-knowledge-header__image,
.codxn-faq-knowledge-header__image img {
	inline-size: 100%;
	block-size: 100%;
}

.codxn-faq-knowledge-header__image img {
	object-fit: cover;
}

.codxn-faq-knowledge-list__inner {
	max-inline-size: 58rem;
	margin-inline: auto;
}

.codxn-faq-knowledge-list__intro {
	max-inline-size: 44rem;
	margin-inline: auto;
	margin-block-end: clamp(1.5rem, 3vw, 2.25rem);
	text-align: center;
}

.codxn-faq-knowledge-list__intro > * {
	margin-inline: auto;
}

.codxn-faq-knowledge-list__intro .codxn-eyebrow {
	margin-block: 0 0.65rem;
}

.codxn-faq-knowledge-list__intro h2 {
	margin-block: 0;
	color: var(--wp--preset--color--foreground);
	line-height: 1.25;
	text-wrap: balance;
}

.codxn-faq-knowledge-list__intro p:not(.codxn-eyebrow) {
	margin-block: 0.8rem 0;
	line-height: 1.8;
	text-wrap: pretty;
}

.codxn-faq-accordion {
	display: grid;
	gap: clamp(0.625rem, 1.4vw, 0.875rem);
}

.codxn-faq-accordion__item {
	overflow: clip;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 18%, var(--wp--preset--color--border));
	border-radius: var(--wp--custom--radius--md);
	background: color-mix(in srgb, var(--wp--preset--color--surface) 94%, var(--wp--preset--color--background));
	transition: border-color 160ms ease, background-color 160ms ease;
}

.codxn-faq-accordion__item[open] {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 48%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 30%, var(--wp--preset--color--surface));
}

.codxn-faq-accordion__summary {
	display: grid;
	grid-template-columns: 2.25rem minmax(0, 1fr) 2rem;
	align-items: center;
	gap: clamp(0.625rem, 1.5vw, var(--wp--preset--spacing--md));
	min-block-size: 4.5rem;
	padding: clamp(0.875rem, 1.8vw, 1.125rem) clamp(0.875rem, 2vw, 1.25rem);
	cursor: pointer;
	color: var(--wp--preset--color--foreground);
	list-style: none;
	transition: background-color 160ms ease;
	-webkit-tap-highlight-color: transparent;
}

.codxn-faq-accordion__summary::-webkit-details-marker {
	display: none;
}

.codxn-faq-accordion__summary:focus-visible {
	border-radius: calc(var(--wp--custom--radius--md) - 1px);
	outline: 3px solid color-mix(in srgb, var(--wp--preset--color--control-focus) 82%, transparent);
	outline-offset: -4px;
}

.codxn-faq-accordion__number {
	display: grid;
	place-items: center;
	inline-size: 2.25rem;
	block-size: 1.75rem;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 30%, var(--wp--preset--color--border));
	border-radius: 999px;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 32%, var(--wp--preset--color--surface));
	color: color-mix(in srgb, var(--wp--preset--color--brand-text) 78%, var(--wp--preset--color--text-muted));
	font-size: var(--wp--preset--font-size--xs);
	font-variant-numeric: tabular-nums;
	font-weight: 760;
	letter-spacing: 0.04em;
}

.codxn-faq-accordion__question {
	min-inline-size: 0;
	font-size: clamp(1rem, 0.96rem + 0.2vw, 1.125rem);
	font-weight: 750;
	line-height: 1.65;
}

.codxn-faq-accordion__question,
.codxn-faq-accordion__answer,
.codxn-faq-accordion__answer * {
	word-break: normal;
	overflow-wrap: anywhere;
	hyphens: none;
}

.codxn-faq-accordion__indicator {
	position: relative;
	display: grid;
	place-items: center;
	inline-size: 2rem;
	block-size: 2rem;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 38%, var(--wp--preset--color--border));
	border-radius: 50%;
	background: color-mix(in srgb, var(--wp--preset--color--medical-teal) 8%, var(--wp--preset--color--surface));
	color: var(--wp--custom--semantic--icon-foreground);
	transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease;
}

.codxn-faq-accordion__indicator::before,
.codxn-faq-accordion__indicator::after {
	position: absolute;
	inset-block-start: 50%;
	inset-inline-start: 50%;
	inline-size: 0.75rem;
	block-size: 2px;
	border-radius: 999px;
	background: currentColor;
	content: "";
	transform: translate(-50%, -50%);
	transition: transform 160ms ease, opacity 160ms ease;
}

.codxn-faq-accordion__indicator::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.codxn-faq-accordion__item[open] .codxn-faq-accordion__indicator {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 62%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--medical-teal) 14%, var(--wp--preset--color--surface));
}

.codxn-faq-accordion__item[open] .codxn-faq-accordion__indicator::after {
	opacity: 0;
	transform: translate(-50%, -50%) rotate(90deg) scaleX(0);
}

.codxn-faq-accordion__answer {
	max-inline-size: none;
	margin-inline: calc(2.25rem + var(--wp--preset--spacing--md) + 1.25rem) calc(2rem + var(--wp--preset--spacing--md) + 1.25rem);
	border-block-start: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 18%, var(--wp--preset--color--border));
	padding-block: clamp(0.875rem, 1.8vw, 1.125rem) clamp(1rem, 2vw, 1.375rem);
	color: var(--wp--preset--color--text-muted);
	font-size: clamp(0.95rem, 0.92rem + 0.12vw, 1rem);
	line-height: 1.95;
}

.codxn-faq-accordion__answer > :first-child {
	margin-block-start: 0;
}

.codxn-faq-accordion__answer > :last-child {
	margin-block-end: 0;
}

.codxn-faq-accordion__answer > * + * {
	margin-block-start: 0.75em;
}

.codxn-faq-accordion__answer :is(h2, h3, h4) {
	margin-block: 1.35rem 0.65rem;
	color: var(--wp--preset--color--foreground);
	font-weight: 700;
	line-height: 1.35;
	text-wrap: balance;
}

.codxn-faq-accordion__answer h2 {
	font-size: clamp(1.25rem, 1.1rem + 0.45vw, 1.55rem);
}

.codxn-faq-accordion__answer h3 {
	font-size: clamp(1.1rem, 1rem + 0.3vw, 1.3rem);
}

.codxn-faq-accordion__answer :is(ul, ol) {
	padding-inline-start: 1.35em;
}

.codxn-faq-accordion__answer li + li {
	margin-block-start: 0.4rem;
}

.codxn-faq-accordion__answer blockquote {
	margin-inline: 0;
	padding-block: 0.25rem;
	padding-inline: 0.9rem 0.25rem;
	border-inline-start: 3px solid var(--wp--preset--color--medical-teal);
	color: var(--wp--preset--color--foreground);
	font-weight: 600;
	line-height: 1.75;
}

.codxn-faq-accordion__answer a {
	color: var(--wp--preset--color--brand-text);
	font-weight: 700;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.2em;
}

.codxn-faq-accordion__answer a:focus-visible {
	outline: 3px solid var(--wp--preset--color--control-focus);
	outline-offset: 3px;
}

.codxn-faq-accordion__answer .wp-block-button {
	margin-block: 1rem 0 0;
}

@media (hover: hover) and (pointer: fine) {
	.codxn-faq-accordion__item:hover {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 38%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 18%, var(--wp--preset--color--surface));
	}

	.codxn-faq-accordion__summary:hover .codxn-faq-accordion__indicator {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 62%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--medical-teal) 13%, var(--wp--preset--color--surface));
	}
}

.codxn-faq-knowledge-empty {
	max-inline-size: 44rem;
	margin-inline: auto;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 18%, var(--wp--preset--color--border));
	border-radius: var(--wp--custom--radius--md);
	padding: clamp(1.25rem, 3vw, 2rem) var(--wp--preset--spacing--md);
	background: color-mix(in srgb, var(--wp--preset--color--surface) 94%, var(--wp--preset--color--background));
	text-align: center;
}

.codxn-faq-knowledge-empty h2 {
	margin-block: 0;
	font-size: var(--wp--preset--font-size--xl);
}

.codxn-faq-knowledge-empty p {
	margin-block: var(--wp--preset--spacing--xs) 0;
	color: var(--wp--preset--color--text-muted);
	line-height: 1.8;
}

html[data-codxn-color-scheme="dark"] .codxn-faq-accordion__item,
html[data-codxn-color-scheme="dark"] .codxn-faq-knowledge-empty {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 28%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--surface) 90%, var(--wp--preset--color--background));
}

html[data-codxn-color-scheme="dark"] .codxn-faq-accordion__item[open] {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 52%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--medical-teal) 8%, var(--wp--preset--color--surface));
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) .codxn-faq-accordion__item,
	html:not([data-codxn-color-scheme="light"]) .codxn-faq-knowledge-empty {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 28%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--surface) 90%, var(--wp--preset--color--background));
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-faq-accordion__item[open] {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 52%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--medical-teal) 8%, var(--wp--preset--color--surface));
	}
}

.codxn-faq-medical-note__inner {
	max-inline-size: 58rem;
	margin-inline: auto;
	padding: clamp(1.5rem, 3vw, 2.25rem);
	border-inline-start: 4px solid var(--codxn-palette-accent);
	border-radius: 1.875rem;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 45%, var(--wp--preset--color--surface));
	box-shadow: var(--codxn-depth-1);
}

html[data-codxn-color-scheme="dark"] .codxn-faq-medical-note__inner,
html:not([data-codxn-color-scheme="light"]) .codxn-faq-medical-note__inner {
	background: color-mix(in srgb, var(--codxn-palette-accent) 12%, var(--wp--preset--color--surface));
}

.codxn-faq-medical-note__inner > * {
	max-inline-size: 48rem;
	margin-inline: 0;
}

.codxn-faq-medical-note__inner > :last-child {
	margin-block-end: 0;
	line-height: 1.85;
}

.codxn-faq-next-step__inner {
	max-inline-size: 48rem;
	margin-inline: auto;
}

.codxn-faq-next-step__inner h2 {
	max-inline-size: 22ch;
	margin-inline: auto;
	color: var(--wp--custom--semantic--text-on-dark);
	text-wrap: balance;
}

.codxn-faq-next-step__copy {
	max-inline-size: 42rem;
	margin-inline: auto;
	color: color-mix(in srgb, var(--wp--preset--color--white) 82%, transparent);
	line-height: 1.8;
}

.codxn-faq-next-step__action {
	margin-block-start: var(--wp--preset--spacing--lg);
}

@media (max-width: 600px) {
	.codxn-faq-knowledge-list,
	.codxn-faq-knowledge-header,
	.codxn-faq-medical-note,
	.codxn-faq-next-step {
		padding-inline: clamp(1rem, 4.5vw, 1.25rem);
	}

	.codxn-faq-knowledge-header__inner h1,
	.codxn-faq-knowledge-list__intro h2 {
		font-size: clamp(2rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
	}

	.codxn-faq-accordion__summary {
		grid-template-columns: 1.75rem minmax(0, 1fr) 1.875rem;
		gap: clamp(0.5rem, 2.6vw, 0.75rem);
		min-block-size: 4.5rem;
		padding: 0.75rem;
	}

	.codxn-faq-accordion__number {
		inline-size: 1.75rem;
		block-size: 1.625rem;
		font-size: 0.6875rem;
	}

	.codxn-faq-accordion__indicator {
		inline-size: 1.875rem;
		block-size: 1.875rem;
	}

	.codxn-faq-accordion__question {
		font-size: var(--wp--preset--font-size--md);
		line-height: 1.65;
	}

	.codxn-faq-accordion__answer {
		margin-inline: 0.75rem;
		padding-block: 0.875rem 1.125rem;
	}


	.codxn-faq-next-step__action {
		inline-size: 100%;
		justify-content: center;
	}

	.codxn-faq-next-step__action .wp-block-button,
	.codxn-faq-next-step__action .wp-block-button__link {
		inline-size: fit-content;
		max-inline-size: 100%;
	}

	.codxn-faq-next-step__action .wp-block-button__link {
		justify-content: center;
	}
}

@media (prefers-reduced-motion: reduce) {
	.codxn-faq-accordion__item,
	.codxn-faq-accordion__summary,
	.codxn-faq-accordion__indicator,
	.codxn-faq-accordion__indicator::before,
	.codxn-faq-accordion__indicator::after {
		transition: none;
	}
}

@media (forced-colors: active) {
	.codxn-faq-accordion__item[open],
	.codxn-faq-medical-note__inner,
	.codxn-faq-knowledge-empty {
		border-color: CanvasText;
		background: Canvas;
		color: CanvasText;
	}
}

/* -----------------------------------------------------------------------
   Search results — Core-query presentation
----------------------------------------------------------------------- */

.codxn-search-page {
	overflow: clip;
}

.codxn-search-page > * {
	margin-block-start: 0;
}

.codxn-search-section-heading {
	margin-block-end: var(--wp--preset--spacing--xl);
}

.codxn-search-section-heading > * {
	margin-inline: 0;
	max-inline-size: 48rem;
}

.codxn-search-section-heading > :last-child {
	color: var(--wp--preset--color--text-muted);
}

.codxn-search-hero {
	position: relative;
	isolation: isolate;
}

.codxn-search-hero h1 {
	max-inline-size: 13ch;
	text-wrap: balance;
}

.codxn-search-query-title {
	margin-block-start: var(--wp--preset--spacing--2-xs);
	overflow-wrap: anywhere;
	text-wrap: pretty;
}

.codxn-search-on-dark-lead {
	color: color-mix(in srgb, var(--wp--preset--color--white) 82%, transparent);
}

.codxn-search-hero-visual {
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--white) 24%, transparent);
	border-radius: var(--wp--custom--radius--xl);
	padding: clamp(var(--wp--preset--spacing--lg), 5vw, var(--wp--preset--spacing--xl));
	background:
		linear-gradient(
			145deg,
			color-mix(in srgb, var(--wp--preset--color--white) 12%, transparent),
			color-mix(in srgb, var(--wp--preset--color--medical-teal) 12%, transparent)
		);
	box-shadow:
		0 24px 60px rgba(2, 8, 23, 0.28),
		inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.codxn-search-hero-visual figure {
	margin: 0;
}

.codxn-search-hero-visual img {
	display: block;
	inline-size: 100%;
	block-size: auto;
}

.codxn-search-form {
	max-inline-size: 44rem;
}

.codxn-search-form--hero {
	margin-block-start: var(--wp--preset--spacing--lg);
}

.codxn-search-form .wp-block-search__inside-wrapper {
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--radius--lg);
	padding: var(--wp--preset--spacing--2-xs);
	background: var(--wp--preset--color--surface);
	box-shadow: var(--wp--custom--shadow--sm);
}

.codxn-search-form .wp-block-search__input {
	min-inline-size: 0;
	min-block-size: 2.75rem;
	border: 0;
	background: transparent;
	color: var(--wp--preset--color--foreground);
	font: inherit;
}

.codxn-search-form .wp-block-search__input:focus {
	outline: 0;
}

.codxn-search-form .wp-block-search__inside-wrapper:focus-within {
	outline: 3px solid var(--wp--preset--color--control-focus);
	outline-offset: 3px;
}

.codxn-search-form .wp-block-search__button {
	min-block-size: 2.75rem;
	margin-inline-start: var(--wp--preset--spacing--2-xs);
	border: 1px solid var(--wp--preset--color--brand-fill);
	border-radius: var(--wp--custom--radius--md);
	padding-inline: var(--wp--preset--spacing--lg);
	background: var(--wp--preset--color--brand-fill);
	color: var(--wp--preset--color--white);
	font: inherit;
	font-weight: 700;
}

.codxn-search-form .wp-block-search__button:focus-visible {
	outline: 3px solid var(--wp--preset--color--control-focus);
	outline-offset: 3px;
}

.codxn-search-result-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--lg);
	padding: 0;
	list-style: none;
}

.codxn-search-result-list > li {
	min-inline-size: 0;
}

.codxn-search-result-card {
	display: flex;
	flex-direction: column;
	block-size: 100%;
	border-block-start: 3px solid var(--wp--preset--color--medical-teal);
}

.codxn-search-result-label {
	margin-block-end: var(--wp--preset--spacing--2-xs);
	font-weight: 800;
}

.codxn-search-result-title {
	margin-block-start: 0;
	overflow-wrap: anywhere;
	text-wrap: pretty;
}

.codxn-search-result-title a {
	color: inherit;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.18em;
}

.codxn-search-result-title a:focus-visible,
.codxn-search-read-more:focus-visible {
	outline: 3px solid var(--wp--preset--color--control-focus);
	outline-offset: 3px;
}

.codxn-search-result-excerpt {
	overflow-wrap: anywhere;
}

.codxn-search-read-more {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	margin-block-start: auto;
	padding-block-start: var(--wp--preset--spacing--md);
	font-weight: 800;
	text-underline-offset: 0.2em;
}

.codxn-search-pagination {
	gap: var(--wp--preset--spacing--sm);
}

.codxn-search-pagination a,
.codxn-search-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-inline-size: 2.75rem;
	min-block-size: 2.75rem;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--radius--md);
	color: var(--wp--preset--color--foreground);
	text-decoration: none;
}

.codxn-search-pagination a:focus-visible {
	outline: 3px solid var(--wp--preset--color--control-focus);
	outline-offset: 3px;
}

.codxn-search-empty-state {
	max-inline-size: 50rem;
	margin-inline: auto;
	border: 2px dashed color-mix(in srgb, var(--wp--preset--color--brand-text) 42%, var(--wp--preset--color--border));
	text-align: center;
}

.codxn-search-form--empty {
	margin-inline: auto;
	margin-block-start: var(--wp--preset--spacing--lg);
}

.codxn-search-navigation-actions {
	justify-content: center;
	gap: var(--wp--preset--spacing--sm);
	margin-block-start: var(--wp--preset--spacing--lg);
}

.codxn-search-guidance-card {
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 38%, var(--wp--preset--color--border));
	border-radius: var(--wp--custom--radius--xl);
	padding: clamp(var(--wp--preset--spacing--lg), 5vw, var(--wp--preset--spacing--2-xl));
	background:
		linear-gradient(
			145deg,
			var(--wp--preset--color--surface),
			color-mix(in srgb, var(--wp--preset--color--accent-soft) 48%, var(--wp--preset--color--surface))
		);
	box-shadow: var(--wp--custom--shadow--sm);
}

.codxn-search-guidance-list {
	margin-block-end: 0;
	padding-inline-start: 1.4em;
}

.codxn-search-guidance-list li + li {
	margin-block-start: var(--wp--preset--spacing--sm);
}

.codxn-search-final-cta h2 {
	max-inline-size: 28ch;
	margin-inline: auto;
	text-wrap: balance;
}

@media (max-width: 781px) {
	.codxn-search-hero .wp-block-columns {
		gap: var(--wp--preset--spacing--xl);
	}

	.codxn-search-result-list {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 600px) {
	.codxn-search-form .wp-block-search__inside-wrapper {
		flex-wrap: wrap;
	}

	.codxn-search-form .wp-block-search__input {
		inline-size: 100%;
	}

	.codxn-search-form .wp-block-search__button {
		margin-block-start: var(--wp--preset--spacing--2-xs);
		margin-inline-start: 0;
		inline-size: fit-content;
		max-inline-size: 100%;
	}

	.codxn-search-form .wp-block-search__inside-wrapper {
		justify-content: center;
	}

	.codxn-search-navigation-actions {
		inline-size: 100%;
		justify-content: center;
	}

	.codxn-search-navigation-actions .wp-block-button,
	.codxn-search-navigation-actions .wp-block-button__link {
		inline-size: fit-content;
		max-inline-size: 100%;
	}

	.codxn-search-navigation-actions .wp-block-button__link {
		justify-content: center;
		text-align: center;
	}

	.codxn-search-result-card,
	.codxn-search-guidance-card {
		padding: var(--wp--preset--spacing--lg);
	}
}

@media (forced-colors: active) {
	.codxn-search-hero-visual,
	.codxn-search-form .wp-block-search__inside-wrapper,
	.codxn-search-form .wp-block-search__button,
	.codxn-search-empty-state,
	.codxn-search-guidance-card {
		border-color: CanvasText;
		background: Canvas;
		color: CanvasText;
		box-shadow: none;
	}
}

/* -----------------------------------------------------------------------
   404 recovery — Core status, presentation-only composition
----------------------------------------------------------------------- */

.codxn-not-found-page {
	overflow: clip;
}

.codxn-not-found-page > * {
	margin-block-start: 0;
}

.codxn-not-found-section-heading {
	margin-block-end: var(--wp--preset--spacing--xl);
}

.codxn-not-found-section-heading > * {
	margin-inline: 0;
	max-inline-size: 48rem;
}

.codxn-not-found-section-heading > :last-child {
	color: var(--wp--preset--color--text-muted);
}

.codxn-not-found-hero {
	position: relative;
	isolation: isolate;
}

.codxn-not-found-hero h1 {
	max-inline-size: 15ch;
	text-wrap: balance;
}

.codxn-not-found-code {
	margin-block: 0 var(--wp--preset--spacing--sm);
	font-size: clamp(3.5rem, 10vw, 7rem);
	font-weight: 800;
	letter-spacing: 0.04em;
	line-height: 0.9;
}

.codxn-not-found-on-dark-lead {
	color: color-mix(in srgb, var(--wp--preset--color--white) 82%, transparent);
}

.codxn-not-found-actions {
	gap: var(--wp--preset--spacing--sm);
	margin-block-start: var(--wp--preset--spacing--lg);
}

.codxn-not-found-hero-visual {
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--white) 24%, transparent);
	border-radius: var(--wp--custom--radius--xl);
	padding: clamp(var(--wp--preset--spacing--lg), 5vw, var(--wp--preset--spacing--xl));
	background:
		linear-gradient(
			145deg,
			color-mix(in srgb, var(--wp--preset--color--white) 12%, transparent),
			color-mix(in srgb, var(--wp--preset--color--medical-teal) 12%, transparent)
		);
	box-shadow:
		0 24px 60px rgba(2, 8, 23, 0.28),
		inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.codxn-not-found-hero-visual figure {
	margin: 0;
}

.codxn-not-found-hero-visual img {
	display: block;
	inline-size: 100%;
	block-size: auto;
}

.codxn-not-found-search-panel {
	max-inline-size: 52rem;
	margin-inline: auto;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 36%, var(--wp--preset--color--border));
	border-radius: var(--wp--custom--radius--xl);
	padding: clamp(var(--wp--preset--spacing--lg), 5vw, var(--wp--preset--spacing--2-xl));
	background:
		linear-gradient(
			145deg,
			var(--wp--preset--color--surface),
			color-mix(in srgb, var(--wp--preset--color--accent-soft) 42%, var(--wp--preset--color--surface))
		);
	box-shadow: var(--wp--custom--shadow--sm);
}

.codxn-not-found-search-form {
	margin-block-start: var(--wp--preset--spacing--lg);
}

.codxn-not-found-search-form .wp-block-search__inside-wrapper {
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--radius--lg);
	padding: var(--wp--preset--spacing--2-xs);
	background: var(--wp--preset--color--surface);
}

.codxn-not-found-search-form .wp-block-search__input {
	min-inline-size: 0;
	min-block-size: 2.75rem;
	border: 0;
	background: transparent;
	color: var(--wp--preset--color--foreground);
	font: inherit;
}

.codxn-not-found-search-form .wp-block-search__input:focus {
	outline: 0;
}

.codxn-not-found-search-form .wp-block-search__inside-wrapper:focus-within {
	outline: 3px solid var(--wp--preset--color--control-focus);
	outline-offset: 3px;
}

.codxn-not-found-search-form .wp-block-search__button {
	min-block-size: 2.75rem;
	margin-inline-start: var(--wp--preset--spacing--2-xs);
	border: 1px solid var(--wp--preset--color--brand-fill);
	border-radius: var(--wp--custom--radius--md);
	padding-inline: var(--wp--preset--spacing--lg);
	background: var(--wp--preset--color--brand-fill);
	color: var(--wp--preset--color--white);
	font: inherit;
	font-weight: 700;
}

.codxn-not-found-search-form .wp-block-search__button:focus-visible {
	outline: 3px solid var(--wp--preset--color--control-focus);
	outline-offset: 3px;
}

.codxn-not-found-link-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--lg);
}

.codxn-not-found-link-grid > .wp-block-column {
	min-inline-size: 0;
}

.codxn-not-found-link-card {
	display: flex;
	flex-direction: column;
	block-size: 100%;
	border-block-start: 3px solid var(--wp--preset--color--medical-teal);
}

.codxn-not-found-link-card h3 {
	margin-block-start: var(--wp--preset--spacing--md);
}

.codxn-not-found-link-card .wp-block-buttons {
	margin-block-start: auto;
	padding-block-start: var(--wp--preset--spacing--md);
}

.codxn-not-found-guidance-card {
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 38%, var(--wp--preset--color--border));
	border-radius: var(--wp--custom--radius--xl);
	padding: clamp(var(--wp--preset--spacing--lg), 5vw, var(--wp--preset--spacing--2-xl));
	background:
		linear-gradient(
			145deg,
			var(--wp--preset--color--surface),
			color-mix(in srgb, var(--wp--preset--color--accent-soft) 48%, var(--wp--preset--color--surface))
		);
	box-shadow: var(--wp--custom--shadow--sm);
}

.codxn-not-found-guidance-list {
	margin-block-end: 0;
	padding-inline-start: 1.4em;
}

.codxn-not-found-guidance-list li + li {
	margin-block-start: var(--wp--preset--spacing--sm);
}

.codxn-not-found-final-cta h2 {
	max-inline-size: 25ch;
	margin-inline: auto;
	text-wrap: balance;
}

@media (max-width: 1024px) {
	.codxn-not-found-link-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 781px) {
	.codxn-not-found-hero .wp-block-columns {
		gap: var(--wp--preset--spacing--xl);
	}
}

@media (max-width: 600px) {
	.codxn-not-found-link-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.codxn-not-found-search-form .wp-block-search__inside-wrapper {
		flex-wrap: wrap;
	}

	.codxn-not-found-search-form .wp-block-search__input {
		inline-size: 100%;
	}

	.codxn-not-found-search-form .wp-block-search__button {
		margin-block-start: var(--wp--preset--spacing--2-xs);
		margin-inline-start: 0;
		inline-size: fit-content;
		max-inline-size: 100%;
	}

	.codxn-not-found-search-form .wp-block-search__inside-wrapper {
		justify-content: center;
	}

	.codxn-not-found-actions {
		inline-size: 100%;
		justify-content: center;
	}

	.codxn-not-found-actions .wp-block-button,
	.codxn-not-found-actions .wp-block-button__link {
		inline-size: fit-content;
		max-inline-size: 100%;
	}

	.codxn-not-found-actions .wp-block-button__link {
		justify-content: center;
		text-align: center;
	}

	.codxn-not-found-link-card,
	.codxn-not-found-guidance-card {
		padding: var(--wp--preset--spacing--lg);
	}
}

@media (forced-colors: active) {
	.codxn-not-found-hero-visual,
	.codxn-not-found-search-panel,
	.codxn-not-found-search-form .wp-block-search__inside-wrapper,
	.codxn-not-found-search-form .wp-block-search__button,
	.codxn-not-found-guidance-card {
		border-color: CanvasText;
		background: Canvas;
		color: CanvasText;
		box-shadow: none;
	}
}

/* -----------------------------------------------------------------------
   Clinic location structural primitives
   Visual composition is owned by the canonical shared location component.
----------------------------------------------------------------------- */

.codxn-location__card,
.codxn-location__address,
.codxn-location__map {
	box-sizing: border-box;
}

.codxn-location__details {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	min-inline-size: 0;
}

.codxn-location__details > * {
	margin-block: 0;
}

.codxn-location__label,
.codxn-location__value {
	margin-block: 0;
}

.codxn-location__label {
	color: var(--wp--preset--color--text-muted);
	font-weight: 700;
}

.codxn-location__label,
.codxn-location__contact-label {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.codxn-location__label > .wp-block-paragraph,
.codxn-location__contact-label > .wp-block-paragraph {
	margin-block: 0;
}

.codxn-location__contact-icon {
	flex: 0 0 auto;
	color: var(--wp--preset--color--medical-teal);
}

.codxn-location__contact-icon:not(.codxn-icon-library-block) {
	inline-size: 1.35rem;
	block-size: 1.35rem;
}

.codxn-icon--social.codxn-location__contact-icon {
	fill: currentColor;
	stroke: currentColor;
}

.codxn-location__contact-icon .codxn-icon--social :where(svg) {
	fill: currentColor;
	stroke: currentColor;
}

.codxn-location__value {
	margin-block-start: var(--wp--preset--spacing--2-xs);
	font-weight: 600;
}

.codxn-location__button .wp-element-button {
	min-block-size: 46px;
}

.codxn-location__map iframe {
	position: absolute;
	inset: 0;
}

.codxn-footer-shell {
	inline-size: 100%;
	max-inline-size: var(--wp--style--global--wide-size);
	margin-inline: auto;
}

.codxn-footer-grid.wp-block-columns {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(0, 0.9fr) minmax(0, 1.1fr) minmax(0, 0.8fr);
	align-items: start;
	column-gap: clamp(var(--wp--preset--spacing--lg), 4.5vw, 4.5rem);
	row-gap: var(--wp--preset--spacing--xl);
	inline-size: 100%;
}

.codxn-footer-column {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--sm);
	min-inline-size: 0;
}

.codxn-footer-column > * {
	margin-block: 0;
}

.codxn-footer-identity {
	padding-inline-end: clamp(0rem, 2vw, var(--wp--preset--spacing--md));
}

.codxn-footer-clinic-name,
.codxn-footer-heading {
	line-height: 1.35;
	text-wrap: balance;
}

.codxn-footer-desc {
	max-inline-size: 34ch;
	line-height: 1.8;
	opacity: 0.78;
}

.codxn-site-footer .wp-block-navigation,
.codxn-site-footer .wp-block-navigation__container {
	inline-size: 100%;
}

.codxn-site-footer .wp-block-navigation__responsive-container-open,
.codxn-site-footer .wp-block-navigation__responsive-container-close {
	display: none;
}

.codxn-site-footer .wp-block-navigation__responsive-container {
	position: static;
	display: block;
	inline-size: 100%;
	block-size: auto;
	padding: 0;
	background: transparent;
	color: inherit;
}

.codxn-site-footer .wp-block-navigation__responsive-close,
.codxn-site-footer .wp-block-navigation__responsive-dialog,
.codxn-site-footer .wp-block-navigation__responsive-container-content {
	display: block;
	inline-size: 100%;
	padding: 0;
}

.codxn-site-footer .wp-block-navigation__container {
	flex-direction: column;
	align-items: flex-start;
	gap: 0;
}

.codxn-site-footer .wp-block-navigation-item,
.codxn-site-footer .wp-block-navigation-item__content {
	inline-size: 100%;
}

.codxn-site-footer .wp-block-navigation-item__content,
.codxn-site-footer .codxn-footer-column a {
	display: inline-flex;
	align-items: center;
	min-block-size: 44px;
	color: inherit;
}

.codxn-footer-legal {
	margin: 0;
	padding: 0;
	list-style: none;
}

.codxn-footer-legal li {
	display: flex;
	align-items: center;
	min-block-size: 44px;
	opacity: 0.78;
}

.codxn-footer-social.wp-block-social-links {
	direction: ltr;
	order: 1;
	inline-size: auto;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	align-items: center;
	gap: 12px;
}

.codxn-footer-social .wp-social-link {
	display: flex;
	flex: 0 0 52px;
	align-items: center;
	justify-content: center;
	inline-size: 52px;
	block-size: 52px;
	box-sizing: border-box;
	border: 1px solid color-mix(in srgb, currentColor 30%, transparent);
	border-radius: 50%;
	background-color: color-mix(in srgb, currentColor 10%, transparent);
	color: inherit;
}

.codxn-footer-social .wp-social-link a {
	display: flex;
	align-items: center;
	justify-content: center;
	inline-size: 100%;
	block-size: 100%;
	box-sizing: border-box;
	padding: 0;
	line-height: 0;
}

.codxn-footer-social .wp-social-link svg {
	display: block;
	flex: 0 0 24px;
	inline-size: 24px;
	block-size: 24px;
	max-inline-size: 24px;
	max-block-size: 24px;
	fill: currentColor;
	transform: none;
}

.codxn-footer-social .wp-social-link:hover {
	border-color: currentColor;
	background-color: color-mix(in srgb, currentColor 17%, transparent);
	transform: translateY(-2px);
}

.codxn-footer-bottom {
	direction: ltr;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	inline-size: 100%;
	box-sizing: border-box;
	margin-block-start: 1.5rem;
	padding-block: 0.75rem;
	border-block-start: 1px solid color-mix(in srgb, currentColor 20%, transparent);
	gap: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--lg);
}

.codxn-footer-bottom > p {
	direction: rtl;
	order: 2;
	margin-block: 0;
	text-align: right;
	opacity: 0.78;
}

@media (max-width: 1024px) {
	.codxn-footer-grid.wp-block-columns {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

}

@media (max-width: 700px) {
	.codxn-site-footer {
		padding-inline: var(--wp--preset--spacing--md);
	}

	.codxn-footer-grid.wp-block-columns {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--wp--preset--spacing--xl);
	}

	/* Mobile footer contract: every visual footer column is deliberately
	 * centered at phone width. These rules are confined to this media query,
	 * so the established desktop grid and start alignment remain unchanged. */
	.codxn-footer-column,
	.codxn-footer-identity {
		align-items: center;
		padding-inline: 0;
		text-align: center;
	}

	.codxn-footer-column > *,
	.codxn-footer-column :where(h2, h3, p, address),
	.codxn-footer-clinic-name,
	.codxn-footer-heading,
	.codxn-footer-desc {
		margin-inline: auto;
		text-align: center;
	}

	.codxn-site-footer .wp-block-site-logo {
		margin-inline: auto;
	}

	.codxn-site-footer .wp-block-navigation,
	.codxn-site-footer .wp-block-navigation__responsive-container,
	.codxn-site-footer .wp-block-navigation__responsive-close,
	.codxn-site-footer .wp-block-navigation__responsive-dialog,
	.codxn-site-footer .wp-block-navigation__responsive-container-content,
	.codxn-site-footer .wp-block-navigation__container {
		align-items: center;
		justify-content: center;
		text-align: center;
	}

	.codxn-site-footer .wp-block-navigation-item,
	.codxn-site-footer .wp-block-navigation-item__content,
	.codxn-site-footer .codxn-footer-column a {
		justify-content: center;
		text-align: center;
	}

	.codxn-footer-legal {
		inline-size: 100%;
	}

	.codxn-footer-legal li {
		justify-content: center;
		text-align: center;
	}

	.codxn-footer-column :where(.wp-block-buttons, .wp-block-social-links),
	.codxn-footer-bottom > * {
		margin-inline: auto;
	}

	.codxn-footer-bottom {
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: var(--wp--preset--spacing--sm);
	}

	.codxn-footer-bottom > p {
		inline-size: 100%;
		text-align: center;
	}

	.codxn-footer-social.wp-block-social-links {
		justify-content: center;
		inline-size: auto;
		max-inline-size: 100%;
	}
}

@media (prefers-reduced-motion: no-preference) {
	.codxn-footer-social .wp-social-link {
		transition: transform var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard), background-color var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard), border-color var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard);
	}
}

@media (prefers-reduced-motion: reduce) {
	.codxn-footer-social .wp-social-link,
	.codxn-footer-social .wp-social-link:hover {
		transform: none;
		transition: none;
	}
}

@media (forced-colors: active) {
	.codxn-footer-social,
	.codxn-footer-social .wp-social-link,
	.codxn-footer-bottom {
		border-color: CanvasText;
		background: Canvas;
		color: CanvasText;
		box-shadow: none;
	}
}

/* ============================================================
 * Reusable mobile content-centering contract
 * Current shared consumers only.
 * ============================================================ */
@media (max-width: 600px) {
	:is(
		.codxn-card,
		.codxn-not-found-guidance-card,
		.codxn-not-found-link-card,
		.codxn-search-guidance-card,
		.codxn-search-result-card,
		.codxn-search-empty-state,
		.codxn-section-intro,
		.codxn-search-final-cta,
		.codxn-not-found-final-cta,
		.codxn-whatsapp-request__intro
	) {
		--codxn-mobile-content-align: center;
		text-align: var(--codxn-mobile-content-align);
	}

	:is(
		.codxn-card,
		.codxn-not-found-guidance-card,
		.codxn-not-found-link-card,
		.codxn-search-guidance-card,
		.codxn-search-result-card,
		.codxn-search-empty-state,
		.codxn-section-intro
	) :where(h1, h2, h3, h4, p, .wp-block-post-title, .wp-block-post-excerpt, .wp-block-post-excerpt__excerpt) {
		margin-inline: auto;
		text-align: var(--codxn-mobile-content-align, center);
	}

	:is(
		.codxn-card,
		.codxn-not-found-guidance-card,
		.codxn-not-found-link-card,
		.codxn-search-guidance-card,
		.codxn-search-result-card,
		.codxn-search-empty-state,
		.codxn-search-final-cta,
		.codxn-not-found-final-cta
	) :where(.wp-block-buttons, .codxn-appointment-actions) {
		justify-content: center;
		align-items: center;
		margin-inline: auto;
	}

	:is(
		.codxn-card,
		.codxn-not-found-guidance-card,
		.codxn-search-guidance-card,
		.codxn-location__card
	) :where(ul, ol, address, form, input, textarea, select) {
		text-align: start;
	}

	.codxn-not-found-link-card :where(.codxn-card__icon, .wp-block-image) {
		margin-inline: auto;
	}
}

/* ============================================================
 * Reusable multi-specialty Services page
 * ============================================================ */
.codxn-services-page {
	overflow: clip;
}

.codxn-services-page :where(h1, h2, h3, p) {
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
}

.codxn-services-page-hero {
	position: relative;
	isolation: isolate;
	min-block-size: auto;
	overflow: clip;
	padding-block: clamp(1.5rem, 4vw, 3.5rem) !important;
	background-color: var(--wp--preset--color--background) !important;
	background-image: none !important;
}

.codxn-services-page-hero__layout {
	position: relative;
	z-index: 1;
	overflow: hidden;
	display: grid !important;
	grid-template-columns: minmax(0, 52fr) minmax(0, 48fr);
	align-items: stretch !important;
	box-sizing: border-box;
	inline-size: min(100%, 84rem);
	max-inline-size: 84rem !important;
	margin-inline: auto;
	gap: clamp(1.75rem, 4vw, 4rem) !important;
	padding: clamp(1.25rem, 3.5vw, 3.5rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 20%, var(--wp--preset--color--border));
	border-radius: 2rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 92%, var(--wp--preset--color--accent-soft));
	box-shadow: 0 1.25rem 3rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 9%, transparent);
	color: var(--wp--preset--color--foreground);
}

.codxn-services-page-hero__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	min-inline-size: 0;
	padding-block: clamp(0.75rem, 2vw, 1.75rem);
	text-align: start;
}

.codxn-services-page-hero__content :where(h1, p) {
	max-inline-size: 43rem;
	margin-inline: 0;
	text-align: start;
}

.codxn-services-page-hero__content h1 {
	max-inline-size: 14ch;
	margin-block: 0;
	background: none !important;
	color: var(--wp--preset--color--foreground) !important;
	font-weight: 700;
	-webkit-text-fill-color: currentColor !important;
	text-wrap: balance;
}

.codxn-services-page-hero__content > .codxn-eyebrow {
	margin-block: 0 0.65rem;
	color: var(--wp--preset--color--brand-text) !important;
}

.codxn-services-page-hero__content > p:not(.codxn-eyebrow) {
	max-inline-size: 42rem;
	margin-block: clamp(1rem, 2vw, 1.4rem) 0;
	color: var(--wp--preset--color--text-muted) !important;
	font-size: clamp(1rem, 1.4vw, 1.125rem) !important;
	line-height: 1.85;
	text-wrap: pretty;
}

.codxn-services-page__actions {
	gap: var(--wp--preset--spacing--sm);
	margin-block-start: var(--wp--preset--spacing--lg);
}

.codxn-services-mid-cta .codxn-btn-secondary .wp-block-button__link {
	border-color: color-mix(in srgb, var(--wp--preset--color--white) 58%, transparent);
	color: var(--wp--preset--color--white);
}

.codxn-services-mid-cta .codxn-btn-secondary .wp-block-button__link:hover {
	border-color: var(--wp--preset--color--white);
	background: color-mix(in srgb, var(--wp--preset--color--white) 10%, transparent);
	color: var(--wp--preset--color--white);
}

.codxn-services-page-hero .codxn-services-page__actions {
	justify-content: flex-start;
}

.codxn-services-page-hero .codxn-services-page__actions .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-block-size: 3rem;
	padding: 0.75rem 1.4rem;
	border-radius: 0.875rem;
	font-weight: 700;
	text-align: center;
}

.codxn-services-page-hero .codxn-btn-secondary .wp-block-button__link {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 36%, var(--wp--preset--color--border));
	background: transparent;
	color: var(--wp--preset--color--foreground);
}

.codxn-services-page-hero__path {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	margin-block-start: var(--wp--preset--spacing--lg);
	color: var(--wp--preset--color--text-muted);
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 700;
}

.codxn-services-page-hero__path p {
	display: inline-flex;
	align-items: center;
	gap: 0.65rem;
	margin: 0;
}

.codxn-services-page-hero__path p:not(:last-child)::after {
	inline-size: 0.3rem;
	block-size: 0.3rem;
	border-radius: 50%;
	background: color-mix(in srgb, var(--wp--preset--color--medical-teal) 58%, var(--wp--preset--color--border));
	content: "";
}

.codxn-services-page-hero__media {
	position: relative;
	display: flex;
	align-items: stretch;
	min-inline-size: 0;
}

.codxn-services-page-hero__media::before {
	display: none;
}

.codxn-services-page-hero__image {
	position: relative;
	overflow: hidden;
	inline-size: 100%;
	min-block-size: clamp(24rem, 34vw, 34rem);
	aspect-ratio: 4 / 5;
	margin: 0;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 20%, var(--wp--preset--color--border));
	border-radius: 1.5rem;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 46%, var(--wp--preset--color--surface));
	box-shadow: 0 0.85rem 2rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 12%, transparent);
}

.codxn-services-page-hero__image img {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	object-fit: cover;
}

.codxn-services-page__intro {
	inline-size: min(100%, 50rem);
	max-inline-size: 50rem;
	margin-inline: auto;
	margin-block-end: clamp(1.75rem, 4vw, 2.75rem);
}

.codxn-services-page__intro h2 {
	margin-block: 0;
	text-wrap: balance;
}

.codxn-services-page__intro > .codxn-eyebrow {
	margin-block: 0 0.65rem;
}

.codxn-services-page__intro > p:last-child {
	max-inline-size: 42rem;
	margin-inline: auto;
	margin-block: 1rem 0;
	line-height: 1.8;
}

.codxn-services-catalog,
.codxn-services-guidance {
	padding-block: clamp(3.75rem, 7vw, 5.5rem) !important;
}

.codxn-services-guidance {
	background-image: none !important;
}

.codxn-services-catalog__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
	gap: clamp(1rem, 2vw, 1.5rem);
}

.codxn-services-catalog__grid > .wp-block-post {
	display: flex;
	align-items: stretch;
	margin-block-start: 0;
	min-inline-size: 0;
}

.codxn-services-catalog__grid > .wp-block-post > .codxn-services-card {
	inline-size: 100%;
	block-size: 100%;
}

.codxn-services-card {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	box-sizing: border-box;
	min-inline-size: 0;
	min-block-size: 0;
	padding: clamp(1.375rem, 2vw, 1.625rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 15%, var(--wp--preset--color--border));
	overflow: hidden;
	border-radius: 1.375rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 96%, var(--wp--preset--color--accent-soft));
	box-shadow: 0 0.55rem 1.4rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 6%, transparent);
	text-align: start;
}

/* A restrained top rule gives dynamic records a clear editorial rhythm
 * without making the catalog read as a dashboard of identical tiles. */
.codxn-services-card::before {
	position: absolute;
	inset-block-start: 0;
	inset-inline: 0;
	z-index: 1;
	block-size: 0.1875rem;
	background: color-mix(in srgb, var(--wp--preset--color--medical-teal) 72%, var(--wp--preset--color--brand-fill));
	content: "";
}

.codxn-services-card__icon {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	inline-size: 2.875rem;
	block-size: 2.875rem;
	margin: 0;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 20%, var(--wp--preset--color--border));
	border-radius: 0.875rem;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 62%, var(--wp--preset--color--surface));
	color: var(--wp--preset--color--brand-text);
	box-shadow: none;
}

.codxn-services-card__icon :where(.wp-block-shortcode, .codxn-service-card__icon-stage) {
	display: grid;
	place-items: center;
	margin: 0;
}

.codxn-services-card__icon .codxn-service-card__icon {
	inline-size: var(--codxn-icon-size, 1.625rem);
	block-size: var(--codxn-icon-size, 1.625rem);
	stroke-width: 1.75;
}

.codxn-services-card__media {
	position: relative;
	display: block;
	inline-size: 100%;
	margin-block-end: 1.25rem;
	overflow: hidden;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 15%, var(--wp--preset--color--border));
	border-radius: 1rem;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 44%, var(--wp--preset--color--surface));
	aspect-ratio: 16 / 10;
}

.codxn-services-card__media:has(.wp-block-post-featured-image) .codxn-services-card__icon {
	position: absolute;
	inset-block-end: 0.75rem;
	inset-inline-start: 0.75rem;
	z-index: 2;
}

.codxn-services-card__image {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	object-fit: cover;
}

.codxn-services-card__media .wp-block-post-featured-image {
	margin: 0;
}

.codxn-services-card__media .wp-block-post-featured-image img {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	object-fit: cover;
}

.codxn-services-card__media:has(.codxn-services-card__icon):not(:has(.wp-block-post-featured-image)) {
	display: block;
	inline-size: fit-content;
	block-size: auto;
	margin-inline: 0;
	margin-block-end: 1rem;
	overflow: visible;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	aspect-ratio: auto;
}

.codxn-services-card__media:has(.codxn-services-card__icon):not(:has(.wp-block-post-featured-image)) .codxn-services-card__icon {
	inline-size: var(--codxn-icon-stage-size, 2.875rem);
	block-size: var(--codxn-icon-stage-size, 2.875rem);
	margin: 0;
	border-radius: 0.875rem;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 62%, var(--wp--preset--color--surface));
	color: var(--wp--preset--color--brand-text);
	box-shadow: none;
}

.codxn-services-card__excerpt,
.codxn-home-service-card__body .wp-block-post-excerpt,
.codxn-services-card__excerpt .wp-block-post-excerpt__excerpt,
.codxn-home-service-card__body .wp-block-post-excerpt__excerpt {
	margin-block: 0;
}

.codxn-services-card__excerpt .wp-block-post-excerpt__excerpt,
.codxn-home-service-card__body .wp-block-post-excerpt__excerpt {
	color: var(--wp--preset--color--text-muted);
	font-size: 0.95rem;
	line-height: 1.7;
	text-align: center;
}

.codxn-home-services .codxn-home-service-card .wp-block-post-excerpt__excerpt {
	text-align: center !important;
}

.codxn-home-services .codxn-query-grid > .wp-block-post {
	display: flex;
	min-inline-size: 0;
}

.codxn-home-service-card {
	display: flex;
	flex-direction: column;
	inline-size: 100%;
	block-size: 100%;
}

.codxn-home-service-card__body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-block-size: 0;
}

.codxn-service-card__action {
	align-self: center;
	margin-block: auto 0;
	padding-block-start: var(--wp--preset--spacing--xs);
}

.codxn-services-catalog__grid.is-single .codxn-services-card__media {
	max-inline-size: 32rem;
	margin-inline: auto;
}

.codxn-services-card h3 {
	margin-block: 0 0.6rem;
	font-size: clamp(1rem, 1.4vw, 1.125rem);
	font-weight: 700;
	line-height: 1.45;
	text-align: start;
}

.codxn-services-card h3 a {
	color: inherit;
	text-decoration: none;
}

.codxn-services-card > p {
	margin-block: 0;
	color: var(--wp--preset--color--text-muted);
	font-size: 0.95rem;
	line-height: 1.7;
	text-align: start;
}

.codxn-services-card__media:focus-visible,
.codxn-services-card h3 a:focus-visible,
.codxn-services-page__actions .wp-block-button__link:focus-visible {
	outline: 3px solid var(--wp--preset--color--control-focus);
	outline-offset: 3px;
}

.codxn-services-empty {
	max-inline-size: 44rem;
	margin-inline: auto;
	padding: clamp(2rem, 5vw, 4rem);
	border: 1px solid var(--wp--preset--color--border);
	border-block-start: 3px solid var(--wp--preset--color--medical-teal);
	border-radius: var(--wp--custom--radius--lg);
	background: var(--wp--preset--color--surface);
	box-shadow: var(--wp--custom--shadow--sm);
	text-align: center;
}

.codxn-services-empty h3 {
	margin-block-start: 0;
}

.codxn-services-empty .wp-block-buttons {
	margin-block-start: var(--wp--preset--spacing--lg);
}

.codxn-services-guidance__steps {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	align-items: start;
	gap: clamp(1.25rem, 2.5vw, 2.25rem);
}

.codxn-services-guidance__steps::before {
	display: none;
}

.codxn-services-guidance__steps > .codxn-services-step {
	margin-block-start: 0;
}

.codxn-services-step {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	box-sizing: border-box;
	min-inline-size: 0;
	min-block-size: 0;
	padding-block: 1.25rem 0;
	border-block-start: 2px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 48%, var(--wp--preset--color--border));
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	text-align: start;
}

.codxn-services-step:nth-child(4) {
	grid-column: auto;
}

/* Approved theme icon block used as the editable guidance marker. */
.codxn-services-step > .codxn-services-step__icon {
	display: grid;
	place-items: center;
	inline-size: 2.875rem;
	block-size: 2.875rem;
	margin-inline: 0;
	margin-block-start: 0;
	margin-block-end: 1rem;
	border: 0;
	border-radius: 0.875rem;
	background: color-mix(in srgb, var(--wp--preset--color--medical-teal) 13%, var(--wp--preset--color--surface));
	color: var(--wp--preset--color--brand-text);
	box-shadow: none;
}

.codxn-services-step__icon :where(.codxn-icon, svg) {
	inline-size: 1.625rem;
	block-size: 1.625rem;
}

.codxn-services-step h3 {
	margin-block: 0 0.6rem;
	font-size: clamp(1rem, 1.4vw, 1.125rem);
	font-weight: 700;
	line-height: 1.45;
	text-align: start;
}

.codxn-services-step p {
	margin-block: 0;
	color: var(--wp--preset--color--text-muted);
	font-size: 0.95rem;
	line-height: 1.7;
	text-align: start;
}

.codxn-services-mid-cta {
	position: relative;
	overflow: clip;
	padding-block: clamp(3.5rem, 7vw, 5.5rem) !important;
	background-color: var(--wp--preset--color--background) !important;
	background-image: none !important;
	color: var(--wp--preset--color--foreground) !important;
}

.codxn-services-mid-cta__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	justify-items: center;
	box-sizing: border-box;
	inline-size: min(100%, 68rem);
	max-inline-size: 68rem;
	margin-inline: auto;
	gap: 0;
	padding: clamp(2.5rem, 6vw, 4.5rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 26%, var(--wp--preset--color--border));
	border-radius: 1.75rem;
	background: color-mix(in srgb, var(--wp--preset--color--medical-navy) 94%, var(--wp--preset--color--medical-teal));
	box-shadow: 0 1rem 2.5rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 12%, transparent);
	color: var(--wp--preset--color--white);
	text-align: center;
}

.codxn-services-mid-cta__content {
	max-inline-size: 54rem;
	text-align: center;
}

.codxn-services-mid-cta__content > * {
	margin-inline: auto;
}

.codxn-services-mid-cta__inner h2 {
	max-inline-size: 18ch;
	margin-block: 0;
	color: var(--wp--preset--color--white) !important;
	line-height: 1.2;
	text-wrap: balance;
}

.codxn-services-mid-cta__inner p {
	max-inline-size: 44rem;
	margin-block: 1rem 0;
	color: color-mix(in srgb, var(--wp--preset--color--white) 82%, transparent);
	line-height: 1.8;
}

.codxn-services-mid-cta__inner .codxn-eyebrow {
	margin-block: 0 0.7rem;
	color: var(--wp--preset--color--accent-soft) !important;
}

.codxn-services-mid-cta__inner .codxn-services-page__actions {
	justify-content: center;
	margin-block-start: clamp(1.5rem, 3vw, 2rem);
}

.codxn-services-mid-cta .codxn-services-page__actions .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-block-size: 3rem;
	padding: 0.75rem 1.4rem;
	border-radius: 0.875rem;
	font-weight: 700;
	text-align: center;
}


html[data-codxn-color-scheme="dark"] .codxn-services-page-hero__layout {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 24%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--surface) 94%, var(--wp--preset--color--medical-navy));
	box-shadow: 0 1.5rem 3.5rem color-mix(in srgb, var(--wp--preset--color--black) 25%, transparent);
}

html[data-codxn-color-scheme="dark"] .codxn-services-page-hero__image {
	box-shadow: 0 1rem 2.25rem color-mix(in srgb, var(--wp--preset--color--black) 28%, transparent);
}

html[data-codxn-color-scheme="dark"] .codxn-services-card {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 22%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--surface) 96%, var(--wp--preset--color--medical-navy));
	box-shadow: 0 0.75rem 1.6rem color-mix(in srgb, var(--wp--preset--color--black) 16%, transparent);
}

html[data-codxn-color-scheme="dark"] .codxn-services-step {
	border-block-start-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 56%, var(--wp--preset--color--border));
	background: transparent;
	box-shadow: none;
}

html[data-codxn-color-scheme="dark"] .codxn-services-mid-cta__inner {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 24%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--medical-navy) 88%, var(--wp--preset--color--surface));
	box-shadow: 0 1rem 2.5rem color-mix(in srgb, var(--wp--preset--color--black) 22%, transparent);
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) .codxn-services-page-hero__layout {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 24%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--surface) 94%, var(--wp--preset--color--medical-navy));
		box-shadow: 0 1.5rem 3.5rem color-mix(in srgb, var(--wp--preset--color--black) 25%, transparent);
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-services-page-hero__image {
		box-shadow: 0 1rem 2.25rem color-mix(in srgb, var(--wp--preset--color--black) 28%, transparent);
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-services-card {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 22%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--surface) 96%, var(--wp--preset--color--medical-navy));
		box-shadow: 0 0.75rem 1.6rem color-mix(in srgb, var(--wp--preset--color--black) 16%, transparent);
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-services-step {
		border-block-start-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 56%, var(--wp--preset--color--border));
		background: transparent;
		box-shadow: none;
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-services-mid-cta__inner {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 24%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--medical-navy) 88%, var(--wp--preset--color--surface));
		box-shadow: 0 1rem 2.5rem color-mix(in srgb, var(--wp--preset--color--black) 22%, transparent);
	}
}

@media (prefers-reduced-motion: no-preference) {
	.codxn-services-card,
	.codxn-services-card__icon {
		transition:
			transform var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard),
			border-color var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard),
			box-shadow var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard),
			color var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard),
			background-color var(--wp--custom--motion--duration--fast) var(--wp--custom--motion--easing--standard);
	}

	.codxn-services-card:hover {
		transform: translateY(-0.25rem);
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 34%, var(--wp--preset--color--border));
		box-shadow: 0 0.75rem 1.8rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 9%, transparent);
	}

	.codxn-services-card:hover .codxn-services-card__icon {
		transform: scale(1.04);
		background: color-mix(in srgb, var(--wp--preset--color--medical-teal) 18%, var(--wp--preset--color--accent-soft));
	}

	.codxn-services-card__media img {
		transition: transform 500ms var(--wp--custom--motion--easing--standard);
	}

	.codxn-services-card:hover .codxn-services-card__media img {
		transform: scale(1.035);
	}
}

@media (min-width: 1025px) {
	.codxn-services-catalog__grid {
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}

	.codxn-services-catalog__grid > .codxn-services-card {
		grid-column: span 2;
	}

	.codxn-services-catalog__grid > .wp-block-post {
		grid-column: span 2;
	}

	.codxn-services-catalog__grid > .wp-block-post:only-child {
		grid-column: 2 / span 4;
	}

	.codxn-services-catalog__grid > .wp-block-post:first-child:nth-last-child(2),
	.codxn-services-catalog__grid > .wp-block-post:nth-last-child(2):nth-child(3n + 1) {
		grid-column: 2 / span 2;
	}

	.codxn-services-catalog__grid > .wp-block-post:last-child:nth-child(2),
	.codxn-services-catalog__grid > .wp-block-post:last-child:nth-child(3n + 2) {
		grid-column: 4 / span 2;
	}

	.codxn-services-catalog__grid > .wp-block-post:last-child:nth-child(3n + 1) {
		grid-column: 3 / span 2;
	}

	.codxn-services-catalog__grid.is-single > .codxn-services-card {
		grid-column: 2 / span 4;
	}

	.codxn-services-catalog__grid.is-pair > .codxn-services-card:first-child,
	.codxn-services-catalog__grid.has-orphan-two > .codxn-services-card:nth-last-child(2) {
		grid-column: 2 / span 2;
	}

	.codxn-services-catalog__grid.is-pair > .codxn-services-card:last-child,
	.codxn-services-catalog__grid.has-orphan-two > .codxn-services-card:last-child {
		grid-column: 4 / span 2;
	}

	.codxn-services-catalog__grid.has-orphan-one > .codxn-services-card:last-child {
		grid-column: 3 / span 2;
	}
}

@media (max-width: 1024px) {
	.codxn-services-catalog,
	.codxn-services-guidance,
	.codxn-services-mid-cta {
		padding-block: clamp(3.25rem, 7vw, 4.5rem) !important;
	}

	.codxn-services-page-hero {
		min-block-size: auto;
	}

	.codxn-services-page-hero__layout {
		grid-template-columns: minmax(0, 1fr);
		inline-size: min(100%, 48rem);
		gap: clamp(1.5rem, 5vw, 2.5rem) !important;
	}

	.codxn-services-page-hero__content,
	.codxn-services-page-hero__media {
		flex-basis: 100% !important;
	}

	.codxn-services-page-hero__media {
		max-inline-size: none;
		inline-size: 100%;
		margin-inline: auto;
	}

	.codxn-services-page-hero__image {
		min-block-size: 0;
		aspect-ratio: 16 / 10;
	}

	.codxn-services-catalog__grid,
	.codxn-services-guidance__steps {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.codxn-services-catalog__grid.is-single {
		grid-template-columns: minmax(0, 40rem);
		justify-content: center;
	}

	.codxn-services-guidance__steps::before {
		display: none;
	}

	.codxn-services-step:nth-child(4) {
		grid-column: auto;
	}

	.codxn-services-mid-cta__inner {
		grid-template-columns: minmax(0, 1fr);
		padding: clamp(2.25rem, 6vw, 3.5rem);
	}

	.codxn-services-mid-cta__inner .codxn-services-page__actions {
		justify-content: center;
	}
}

@media (min-width: 601px) and (max-width: 1024px) {
	.codxn-services-catalog__grid > .wp-block-post:last-child:nth-child(odd) {
		grid-column: 1 / -1;
		justify-self: center;
		inline-size: min(100%, calc(50% - 0.875rem));
	}

	.codxn-services-catalog__grid.has-tablet-orphan > .codxn-services-card:last-child {
		grid-column: 1 / -1;
		justify-self: center;
		inline-size: min(100%, calc(50% - 0.875rem));
	}
}

@media (max-width: 600px) {
	.codxn-card__icon[style*="--codxn-icon-mobile-size"],
	.codxn-card > .codxn-icon-library-block[style*="--codxn-icon-mobile-size"],
	.codxn-about-principle > .codxn-icon-library-block[style*="--codxn-icon-mobile-size"] {
		--codxn-icon-stage-size: calc(var(--codxn-icon-mobile-size) + 1rem);
		inline-size: var(--codxn-icon-stage-size);
		block-size: var(--codxn-icon-stage-size);
	}

	.codxn-services-catalog,
	.codxn-services-guidance,
	.codxn-services-mid-cta {
		padding-inline: var(--wp--preset--spacing--sm) !important;
		padding-block: clamp(3rem, 12vw, 4rem) !important;
	}

	.codxn-services-page-hero {
		padding-inline: var(--wp--preset--spacing--sm) !important;
	}

	.codxn-services-page-hero__layout {
		gap: 1.5rem !important;
		padding: 1rem;
		border-radius: 1.375rem;
	}

	.codxn-services-page-hero__content {
		align-items: center;
		padding: 0.75rem 0.25rem 0;
		text-align: center;
	}

	.codxn-services-page-hero__content :where(h1, p) {
		margin-inline: auto;
		text-align: center;
	}

	.codxn-services-page-hero__content h1 {
		font-size: clamp(2rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
	}

	.codxn-services-page-hero__path {
		flex-wrap: wrap;
		justify-content: center;
	}

	.codxn-services-page-hero__image {
		aspect-ratio: 4 / 3;
		border-radius: 1.25rem;
	}

	.codxn-services-page__actions {
		inline-size: 100%;
		justify-content: center;
	}

	.codxn-services-page__actions .wp-block-button {
		inline-size: fit-content;
		max-inline-size: 100%;
	}

	.codxn-services-page__actions .wp-block-button__link {
		inline-size: fit-content;
		max-inline-size: 100%;
		justify-content: center;
		text-align: center;
	}

	.codxn-services-catalog__grid,
	.codxn-services-guidance__steps {
		grid-template-columns: minmax(0, 1fr);
	}

	.codxn-services-guidance__steps {
		gap: 0.875rem;
	}

	.codxn-services-step {
		padding: 1rem 0 0;
		border-radius: 0;
	}

	.codxn-services-step > .codxn-services-step__icon {
		inline-size: 2.625rem;
		block-size: 2.625rem;
		margin-block-end: 0.875rem;
		border-radius: 0.75rem;
	}

	.codxn-services-catalog__grid > .wp-block-post,
	.codxn-services-catalog__grid > .wp-block-post:last-child:nth-child(n) {
		grid-column: auto;
		inline-size: 100%;
	}

	.codxn-services-card {
		min-block-size: 0;
		padding: 1.25rem;
		border-radius: 1.25rem;
	}

	.codxn-services-card__media:has(.codxn-services-card__icon):not(:has(.wp-block-post-featured-image)) {
		inline-size: fit-content;
		block-size: auto;
		min-block-size: 0;
		aspect-ratio: auto;
	}

	.codxn-services-card__icon:not([style*="--codxn-icon-mobile-size"]),
	.codxn-services-card__media:has(.codxn-services-card__icon:not([style*="--codxn-icon-mobile-size"])):not(:has(.wp-block-post-featured-image)) .codxn-services-card__icon {
		inline-size: min(var(--codxn-icon-stage-size, 2.75rem), 56px);
		block-size: min(var(--codxn-icon-stage-size, 2.75rem), 56px);
	}

	.codxn-services-card__icon[style*="--codxn-icon-mobile-size"],
	.codxn-services-card__media:has(.codxn-services-card__icon[style*="--codxn-icon-mobile-size"]):not(:has(.wp-block-post-featured-image)) .codxn-services-card__icon {
		inline-size: calc(var(--codxn-icon-mobile-size) + 1rem);
		block-size: calc(var(--codxn-icon-mobile-size) + 1rem);
	}

	.codxn-services-card__icon:not([style*="--codxn-icon-mobile-size"]) .codxn-service-card__icon {
		inline-size: min(var(--codxn-icon-size, 1.5rem), 2.5rem);
		block-size: min(var(--codxn-icon-size, 1.5rem), 2.5rem);
	}

	.codxn-services-card__icon[style*="--codxn-icon-mobile-size"] .codxn-service-card__icon {
		inline-size: var(--codxn-icon-mobile-size);
		block-size: var(--codxn-icon-mobile-size);
	}

	.codxn-services-card__media {
		min-block-size: 10.5rem;
		aspect-ratio: 16 / 9;
		border-radius: 0.875rem;
	}

	.codxn-services-mid-cta__inner {
		padding: 1.5rem;
		border-radius: 1.5rem;
		text-align: center;
	}

	.codxn-services-mid-cta__inner h2 {
		max-inline-size: 100%;
		font-size: clamp(2rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
	}

	.codxn-services-page__intro h2 {
		font-size: clamp(2rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
	}

	.codxn-services-mid-cta__inner :where(h2, p) {
		margin-inline: auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	.codxn-services-card,
.codxn-services-card:hover,
.codxn-services-card__icon,
.codxn-services-card:hover .codxn-services-card__icon {
		transform: none;
		transition: none;
	}
}

@media (forced-colors: active) {
	.codxn-services-page-hero__image,
.codxn-services-page-hero__layout,
.codxn-services-card,
.codxn-services-card__icon,
.codxn-services-step > .codxn-services-step__icon,
.codxn-services-mid-cta__inner {
		border-color: CanvasText;
		box-shadow: none;
	}

	.codxn-services-step,
	.codxn-services-mid-cta__inner {
		background: Canvas;
		color: CanvasText;
	}

	.codxn-services-mid-cta__inner :is(.codxn-eyebrow, h2, p) {
		color: CanvasText !important;
	}
}

/* -----------------------------------------------------------------------
   Structured Service single preview
   Public Service requests redirect to the Gutenberg Services Page; this
   compact presentation remains available for editor/preview contexts.
----------------------------------------------------------------------- */

.codxn-dyn-single-service {
	overflow-wrap: break-word;
}

.codxn-single-media {
	position: relative;
	overflow: hidden;
	border-radius: var(--wp--custom--radius--lg, 1rem);
	background-color: color-mix(in srgb, var(--wp--preset--color--brand-text) 7%, var(--wp--preset--color--surface));
	background-repeat: no-repeat;
	background-position: center;
}

.codxn-single-media-service {
	aspect-ratio: 16 / 7;
	background-image: url("assets/illustrations/service-placeholder.svg");
	background-size: min(28%, 8rem);
}

.codxn-single-media-photo {
	margin: 0;
}

.codxn-single-media-photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.codxn-single-media-service .codxn-single-media-photo {
	position: absolute;
	inset: 0;
}

.codxn-single-content {
	max-width: 72ch;
	line-height: 1.8;
}

.codxn-single-content > * + * {
	margin-top: var(--wp--preset--spacing--sm, 1rem);
}

/* Secondary Arabic reading face for long-form medical copy only. */
.codxn-faq-accordion__answer :where(p, ul, ol, blockquote, .wp-block-table),
.codxn-single-content > :where(p, ul, ol, blockquote, .wp-block-table, figcaption),
.codxn-doctors-professional .codxn-doctors-professional__bio :where(p, ul, ol, blockquote, .wp-block-table),
.codxn-article-single__content > :where(p, ul, ol, blockquote, .wp-block-table, figcaption) {
	font-family: var(--wp--preset--font-family--codxn-content-arabic);
}

.codxn-dyn-cta {
	border: 1px solid var(--wp--preset--color--border);
}

.codxn-dyn-cta .wp-block-buttons {
	margin-top: var(--wp--preset--spacing--2-xs, 0.5rem);
}

.codxn-back-link a {
	color: var(--wp--preset--color--brand-text);
	font-weight: 600;
	text-decoration: none;
}

.codxn-back-link a:hover,
.codxn-back-link a:focus-visible {
	text-decoration: underline;
}

@media (max-width: 781px) {
	.codxn-single-media-service {
		aspect-ratio: 16 / 9;
	}
}

@media (forced-colors: active) {
	.codxn-single-media,
	.codxn-dyn-cta {
		border-color: CanvasText;
		background: Canvas;
		color: CanvasText;
	}
}

/* -----------------------------------------------------------------------
   Doctor Single — premium medical hero
   Presentation only: Doctor field, image, fallback, and CTA contracts remain
   owned by the existing Doctor Single pattern.
----------------------------------------------------------------------- */

.codxn-doctors-landing__hero {
	position: relative;
	isolation: isolate;
	overflow: clip;
}

.codxn-doctors-landing__hero-layout {
	position: relative;
	isolation: isolate;
	display: grid !important;
	grid-template-columns: minmax(0, 54fr) minmax(0, 46fr);
	align-items: stretch !important;
	box-sizing: border-box;
	inline-size: min(100%, 84rem);
	margin-inline: auto;
	gap: clamp(1.5rem, 4vw, 4.5rem) !important;
	padding: clamp(1.25rem, 3.5vw, 3.5rem);
	border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 22%, var(--wp--preset--color--border));
	border-radius: 2rem;
	background:
		radial-gradient(circle at 12% 10%, color-mix(in srgb, var(--codxn-palette-soft) 66%, transparent), transparent 18rem),
		color-mix(in srgb, var(--codxn-palette-surface) 96%, var(--wp--preset--color--background));
	box-shadow: var(--codxn-depth-3);
}

.codxn-doctors-landing__hero-media-column,
.codxn-doctors-landing__hero-content {
	min-inline-size: 0;
	align-self: stretch !important;
}

.codxn-doctors-landing__hero-media-column {
	display: grid;
	place-items: stretch;
	inline-size: 100%;
}

.codxn-doctors-landing__portrait-stage {
	position: relative;
	isolation: isolate;
	display: grid;
	place-items: end center;
	inline-size: 100%;
	min-block-size: clamp(30rem, 45vw, 40rem);
	overflow: clip;
}

.codxn-doctors-landing__portrait-shape {
	position: absolute;
	inset-inline: 5%;
	inset-block: 8% 2%;
	z-index: 0;
	border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 34%, transparent);
	border-radius: 48% 52% 42% 58% / 52% 42% 58% 48%;
	background:
		radial-gradient(circle at 50% 22%, color-mix(in srgb, var(--codxn-palette-soft) 76%, transparent), transparent 42%),
		linear-gradient(155deg, color-mix(in srgb, var(--codxn-palette-accent) 25%, transparent), color-mix(in srgb, var(--codxn-palette-soft) 54%, transparent));
	box-shadow: var(--codxn-depth-2);
}


.codxn-doctors-landing__portrait-visual {
	position: relative;
	z-index: 1;
	display: grid;
	place-items: end center;
	inline-size: 100%;
	block-size: 100%;
	min-inline-size: 0;
}

.codxn-doctors-landing__portrait-image {
	display: block;
	max-inline-size: 100%;
	block-size: 100%;
	object-fit: contain;
	object-position: center bottom;
}

.codxn-doctors-landing__portrait-stage.is-featured-fallback .codxn-doctors-landing__portrait-visual {
	block-size: calc(100% - clamp(1rem, 3vw, 2rem));
	border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 26%, var(--wp--preset--color--border));
	border-radius: clamp(1.25rem, 2vw, 1.75rem);
	background: color-mix(in srgb, var(--codxn-palette-surface) 86%, var(--codxn-palette-soft));
	box-shadow: var(--codxn-depth-2);
	overflow: hidden;
}

.codxn-doctors-landing__portrait-stage.is-featured-fallback .codxn-doctors-landing__portrait-image {
	inline-size: 100%;
	object-fit: cover;
	object-position: center 18%;
}

.codxn-doctors-landing__medical-mark {
	position: absolute;
	inset-inline-end: clamp(0.8rem, 2vw, 1.35rem);
	inset-block-end: clamp(0.8rem, 2vw, 1.35rem);
	display: grid;
	place-items: center;
	box-sizing: border-box;
	inline-size: 4.25rem;
	block-size: 4.25rem;
	padding: 0.75rem;
	border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 42%, var(--wp--preset--color--border));
	border-radius: 50%;
	background: color-mix(in srgb, var(--codxn-palette-surface) 94%, transparent);
	box-shadow: var(--codxn-depth-1);
	color: var(--wp--custom--semantic--icon-foreground);
}

.codxn-doctors-landing__medical-mark :is(svg, .codxn-icon) {
	display: block;
	inline-size: 100%;
	block-size: 100%;
}

.codxn-doctors-landing__hero-content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	box-sizing: border-box;
	padding-block: clamp(1rem, 3vw, 2.5rem);
	text-align: start;
}

.codxn-doctors-landing__hero-content > * {
	margin-inline: 0;
	text-align: start;
}

.codxn-doctors-landing__hero-content > .codxn-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 0.65rem;
	margin-block: 0 0.65rem;
	color: var(--wp--preset--color--brand-text);
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 700;
	letter-spacing: 0.04em;
}

.codxn-doctors-landing__hero-content > .codxn-eyebrow::before {
	content: "";
	inline-size: 1.75rem;
	block-size: 2px;
	background: var(--wp--preset--color--medical-teal);
}

.codxn-doctors-landing__hero-content > h1 {
	max-inline-size: 12ch;
	margin-block: 0;
	font-weight: 700;
	letter-spacing: -0.035em;
	text-wrap: balance;
}

.codxn-doctors-landing__hero .codxn-doctors-landing__hero-content > h1.codxn-text-gradient,
body:not(.wp-admin):not(.block-editor-page):not(.editor-styles-wrapper) > .wp-site-blocks .codxn-doctors-landing__hero .codxn-doctors-landing__hero-content > h1.codxn-text-gradient {
	background: none !important;
	color: var(--wp--preset--color--foreground) !important;
	-webkit-text-fill-color: currentColor !important;
}

.codxn-doctors-landing__specialty {
	max-inline-size: 34rem;
	margin-block: clamp(0.85rem, 2vw, 1.25rem) 0;
	color: var(--wp--preset--color--brand-text);
	font-size: clamp(1.15rem, 2vw, 1.45rem);
	font-weight: 600;
	line-height: 1.55;
}

.codxn-doctors-landing__hero-lead {
	max-inline-size: 42rem;
	margin-block: clamp(1rem, 2vw, 1.5rem) 0;
	color: var(--wp--preset--color--text-muted);
	font-size: clamp(1rem, 1.3vw, 1.125rem);
	line-height: 1.9;
	text-wrap: pretty;
}

.codxn-doctors-landing__hero-highlights {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	margin-block-start: clamp(1.15rem, 2vw, 1.5rem);
}

.codxn-doctors-landing__hero-highlight {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	max-inline-size: 100%;
	padding: 0.55rem 0.75rem;
	border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 24%, var(--wp--preset--color--border));
	border-radius: 999px;
	background: color-mix(in srgb, var(--codxn-palette-surface) 90%, var(--codxn-palette-soft));
	box-shadow: var(--codxn-depth-1);
	color: var(--wp--preset--color--foreground);
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 600;
	line-height: 1.45;
}

.codxn-doctors-landing__hero-highlight > :first-child {
	display: grid;
	flex: 0 0 auto;
	place-items: center;
	inline-size: 1.125rem;
	block-size: 1.125rem;
	color: var(--wp--custom--semantic--icon-foreground);
}

.codxn-doctors-landing__hero-highlight > :last-child {
	min-inline-size: 0;
}

.codxn-doctors-landing__hero .codxn-doctors-landing__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 0.75rem;
	margin-block-start: clamp(1.5rem, 3vw, 2.25rem);
}

html[data-codxn-color-scheme="dark"] .codxn-doctors-landing__hero-layout {
	border-color: color-mix(in srgb, var(--codxn-palette-accent) 30%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--codxn-palette-deep) 76%, var(--codxn-palette-surface));
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) .codxn-doctors-landing__hero-layout {
		border-color: color-mix(in srgb, var(--codxn-palette-accent) 30%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--codxn-palette-deep) 76%, var(--codxn-palette-surface));
	}
}

@media (max-width: 1024px) {
	.codxn-doctors-landing__hero-layout {
		grid-template-columns: minmax(0, 1fr);
		inline-size: min(100%, 44rem);
		gap: clamp(1.5rem, 5vw, 2.75rem) !important;
	}

	.codxn-doctors-landing__portrait-stage {
		min-block-size: clamp(22rem, 80vw, 34rem);
		aspect-ratio: 4 / 5;
	}
}

@media (max-width: 600px) {
	.codxn-doctors-landing__hero-layout {
		padding: 1rem;
		border-radius: 1.75rem;
	}

	.codxn-doctors-landing__hero-content {
		align-items: center;
		padding: 0.5rem 0.25rem 0.75rem;
		text-align: center;
	}

	.codxn-doctors-landing__hero-content > * {
		margin-inline: auto;
		text-align: center;
	}

	.codxn-doctors-landing__hero-content > h1 {
		max-inline-size: 14ch;
		font-size: clamp(2rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
	}

	.codxn-doctors-landing__hero-highlights {
		justify-content: center;
	}

	.codxn-doctors-landing__portrait-stage {
		min-block-size: clamp(20rem, 105vw, 28rem);
	}

	.codxn-doctors-landing__hero .codxn-doctors-landing__actions {
		inline-size: 100%;
		justify-content: center;
	}

	.codxn-doctors-landing__hero .codxn-doctors-landing__actions .wp-block-button,
	.codxn-doctors-landing__hero .codxn-doctors-landing__actions .wp-block-button__link {
		inline-size: fit-content;
		max-inline-size: 100%;
	}
}

@media (forced-colors: active) {
	.codxn-doctors-landing__hero-layout,
	.codxn-doctors-landing__portrait-shape,
	.codxn-doctors-landing__portrait-stage.is-featured-fallback .codxn-doctors-landing__portrait-visual,
	.codxn-doctors-landing__hero-highlight,
	.codxn-doctors-landing__medical-mark {
		border-color: CanvasText;
		background: Canvas;
		color: CanvasText;
		box-shadow: none;
	}
}

/* -----------------------------------------------------------------------
   Shared Doctor Reviews — premium opposing patient-story tracks
   One renderer serves Home, Doctors, and Doctor Single. Motion pauses during
   interaction and becomes manual horizontal scrolling when reduced.
----------------------------------------------------------------------- */

.codxn-doctors-reviews {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding-inline: clamp(0.75rem, 2vw, 2rem);
	background:
		radial-gradient(circle at 10% 16%, color-mix(in srgb, var(--codxn-palette-soft) 78%, transparent) 0 8rem, transparent 20rem),
		radial-gradient(circle at 92% 82%, color-mix(in srgb, var(--codxn-palette-accent) 13%, transparent) 0 7rem, transparent 22rem),
		linear-gradient(145deg, color-mix(in srgb, var(--codxn-palette-surface) 96%, var(--codxn-palette-soft)), var(--wp--preset--color--background));
}

.codxn-doctors-reviews::before,
.codxn-doctors-reviews::after {
	content: "";
	position: absolute;
	z-index: -1;
	pointer-events: none;
}

.codxn-doctors-reviews::before {
	inset-block-start: clamp(2rem, 8vw, 7rem);
	inset-inline-start: clamp(-7rem, -5vw, -3rem);
	inline-size: clamp(11rem, 20vw, 19rem);
	block-size: clamp(11rem, 20vw, 19rem);
	border: 1px solid color-mix(in srgb, var(--codxn-palette-primary) 17%, transparent);
	border-radius: 50%;
	box-shadow: 0 0 0 clamp(1.5rem, 4vw, 4rem) color-mix(in srgb, var(--codxn-palette-soft) 24%, transparent);
}

.codxn-doctors-reviews::after {
	inset-inline-end: clamp(-2rem, -1vw, -0.5rem);
	inset-block-end: clamp(1rem, 4vw, 4rem);
	inline-size: clamp(8rem, 14vw, 13rem);
	block-size: clamp(8rem, 14vw, 13rem);
	border-radius: 38% 62% 56% 44% / 46% 42% 58% 54%;
	background: color-mix(in srgb, var(--codxn-palette-accent) 10%, transparent);
}

.codxn-doctors-reviews .codxn-doctors-reviews__intro {
	position: relative;
	z-index: 2;
	max-inline-size: 52rem;
	margin-inline: auto;
	text-align: center;
}

.codxn-doctors-reviews .codxn-doctors-reviews__intro > * {
	margin-inline: auto;
}

.codxn-doctors-reviews .codxn-doctors-reviews__intro > .codxn-eyebrow {
	inline-size: fit-content;
	padding: 0.45rem 0.85rem;
	border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 28%, var(--wp--preset--color--border));
	border-radius: 999px;
	background: color-mix(in srgb, var(--codxn-palette-soft) 68%, var(--codxn-palette-surface));
}

.codxn-doctors-reviews .codxn-doctors-reviews__intro > h2 {
	max-inline-size: 18ch;
	margin-block-start: 0.95rem;
	font-size: clamp(2.15rem, 4.2vw, 3.8rem) !important;
	font-weight: 760;
	line-height: 1.08;
	letter-spacing: -0.035em;
	text-wrap: balance;
}

.codxn-doctors-reviews .codxn-doctors-reviews__intro > p:not(.codxn-eyebrow) {
	max-inline-size: 58ch;
	margin-block-start: 0.9rem;
	font-size: clamp(1rem, 1.25vw, 1.12rem);
	line-height: 1.8;
}

.codxn-doctors-reviews .codxn-doctors-reviews__demo-note {
	max-inline-size: 58ch;
	margin: 0.85rem auto 0;
	color: var(--wp--preset--color--text-muted);
	font-size: 0.8rem;
	line-height: 1.55;
	text-align: center;
}

.codxn-doctors-reviews .codxn-doctors-reviews__trust {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.55rem;
	margin-block-start: 1.15rem;
	padding: 0.62rem 0.85rem;
	border: 1px solid color-mix(in srgb, var(--codxn-palette-primary) 14%, var(--wp--preset--color--border));
	border-radius: 1rem;
	background: color-mix(in srgb, var(--codxn-palette-surface) 88%, var(--codxn-palette-soft));
	box-shadow: 0 0.65rem 1.6rem color-mix(in srgb, var(--codxn-palette-deep) 7%, transparent);
	color: var(--wp--preset--color--text-muted);
	font-size: 0.86rem;
}

.codxn-doctors-reviews .codxn-doctors-reviews__trust-stars {
	color: var(--codxn-palette-primary);
	letter-spacing: 0.08em;
}

.codxn-doctors-reviews .codxn-doctors-reviews__trust strong {
	color: var(--wp--preset--color--foreground);
	font-size: 0.95rem;
}

.codxn-doctors-reviews .codxn-doctors-reviews__stage {
	overflow: hidden;
	display: grid;
	inline-size: min(100%, 92rem);
	gap: clamp(0.75rem, 1.8vw, 1.15rem);
	margin-block-start: clamp(2.25rem, 5vw, 4rem);
	margin-inline: auto;
	padding-block: 0.75rem 1.5rem;
	-webkit-mask-image: linear-gradient(to right, transparent, #000 4%, #000 96%, transparent);
	mask-image: linear-gradient(to right, transparent, #000 4%, #000 96%, transparent);
}

.codxn-doctors-reviews .codxn-doctors-reviews__viewport {
	overflow: hidden;
	direction: ltr;
	padding-block: 0.5rem;
}

.codxn-doctors-reviews .codxn-doctors-reviews__track {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: nowrap;
	inline-size: max-content;
	min-inline-size: 0;
	direction: ltr;
	will-change: transform;
	animation: codxn-reviews-marquee 64s linear infinite;
	animation-play-state: running;
}

.codxn-doctors-reviews .codxn-doctors-reviews__sequence {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	inline-size: max-content;
	direction: ltr;
	gap: clamp(0.8rem, 1.8vw, 1.25rem);
	padding-inline-end: clamp(0.8rem, 1.8vw, 1.25rem);
}

.codxn-doctors-reviews .codxn-doctors-reviews__viewport:is(:hover, :focus-within) .codxn-doctors-reviews__track {
	animation-play-state: paused;
}

@keyframes codxn-reviews-marquee {
	to {
		transform: translateX(-50%);
	}
}


.codxn-doctors-reviews .codxn-doctors-review-bubble,
.codxn-doctors-reviews .codxn-doctors-review-bubble:is(.is-small, .is-medium, .is-large) {
	position: relative;
	overflow: hidden;
	display: flex;
	flex: 0 0 clamp(18rem, 22vw, 20rem);
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	direction: rtl;
	inline-size: clamp(18rem, 22vw, 20rem);
	min-block-size: clamp(18rem, 22vw, 20rem);
	aspect-ratio: auto;
	margin: 0;
	padding: clamp(1.8rem, 3vw, 2.35rem);
	border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 24%, var(--wp--preset--color--border));
	border-radius: 50%;
	background: color-mix(in srgb, var(--codxn-palette-surface) 90%, var(--codxn-palette-soft));
	box-shadow:
		0 1.1rem 2.8rem color-mix(in srgb, var(--codxn-palette-deep) 11%, transparent),
		inset 0 1px 0 color-mix(in srgb, var(--wp--preset--color--white) 62%, transparent);
	color: var(--wp--preset--color--foreground);
	text-align: center;
	transition: border-color 240ms ease, box-shadow 240ms ease, transform 240ms ease;
}

.codxn-doctors-reviews .codxn-doctors-review-bubble::after {
	offset-path: circle(calc(50% - 1px) at 50% 50%);
}

.codxn-doctors-reviews .codxn-doctors-review-bubble:nth-child(5n + 2) {
	border-color: color-mix(in srgb, var(--codxn-palette-primary) 22%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--codxn-palette-surface) 91%, var(--codxn-palette-primary));
}

.codxn-doctors-reviews .codxn-doctors-review-bubble:nth-child(5n + 3) {
	border-color: color-mix(in srgb, var(--codxn-palette-accent) 30%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--codxn-palette-surface) 88%, var(--codxn-palette-accent));
}

.codxn-doctors-reviews .codxn-doctors-review-bubble:nth-child(5n + 4) {
	border-color: color-mix(in srgb, var(--codxn-palette-deep) 18%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--codxn-palette-surface) 94%, var(--codxn-palette-deep));
}

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
	.codxn-doctors-reviews .codxn-doctors-review-bubble:hover {
		transform: translateY(-0.35rem);
		border-color: color-mix(in srgb, var(--codxn-palette-accent) 48%, var(--wp--preset--color--border));
		box-shadow:
			0 1.45rem 3.3rem color-mix(in srgb, var(--codxn-palette-deep) 15%, transparent),
			inset 0 1px 0 color-mix(in srgb, var(--wp--preset--color--white) 68%, transparent);
	}
}

.codxn-doctors-reviews .codxn-doctors-review-bubble.is-small {
	flex-basis: clamp(17rem, 20vw, 18.5rem);
	inline-size: clamp(17rem, 20vw, 18.5rem);
	min-block-size: clamp(17rem, 20vw, 18.5rem);
}

.codxn-doctors-reviews .codxn-doctors-review-bubble.is-large {
	flex-basis: clamp(19rem, 23vw, 21rem);
	inline-size: clamp(19rem, 23vw, 21rem);
	min-block-size: clamp(19rem, 23vw, 21rem);
}

.codxn-doctors-reviews .codxn-doctors-review-bubble__quote {
	position: absolute;
	inset-block-start: 1.25rem;
	inset-inline-start: 50%;
	transform: translateX(-50%);
	display: grid;
	place-items: center;
	inline-size: 2.65rem;
	block-size: 2.65rem;
	margin: 0;
	padding: 0;
	border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 25%, transparent);
	border-radius: 50%;
	background: color-mix(in srgb, var(--codxn-palette-soft) 68%, var(--codxn-palette-surface));
	color: var(--codxn-palette-deep);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	box-shadow: 0 0.55rem 1.25rem color-mix(in srgb, var(--codxn-palette-deep) 9%, transparent);
}

.codxn-doctors-reviews .codxn-doctors-review-bubble > p {
	margin: 1.65rem 0 0;
	color: var(--wp--preset--color--foreground);
	font-size: clamp(0.925rem, 1.05vw, 1rem);
	font-weight: 570;
	line-height: 1.7;
	text-align: center;
	text-wrap: pretty;
}

.codxn-doctors-reviews .codxn-doctors-review-bubble__rating {
	display: block;
	margin-block-start: 0.75rem;
	color: var(--codxn-palette-primary);
	font-size: 0.9rem;
	letter-spacing: 0.08em;
	line-height: 1;
}

.codxn-doctors-reviews .codxn-doctors-review-bubble__identity {
	display: flex;
	align-items: center;
	justify-content: center;
	inline-size: auto;
	gap: 0.85rem;
	margin-block-start: 0.9rem;
	text-align: start;
}

.codxn-doctors-reviews .codxn-doctors-review-bubble__avatar {
	overflow: hidden;
	display: grid;
	flex: 0 0 2.75rem;
	place-items: center;
	inline-size: 2.75rem;
	block-size: 2.75rem;
	border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 32%, var(--wp--preset--color--border));
	border-radius: 50%;
	background: color-mix(in srgb, var(--codxn-palette-soft) 72%, var(--codxn-palette-surface));
	color: var(--codxn-palette-deep);
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1;
	box-shadow: none;
}

.codxn-doctors-reviews .codxn-doctors-review-bubble__avatar img,
.codxn-doctors-reviews .codxn-doctors-review-bubble__avatar > span {
	display: grid;
	place-items: center;
	inline-size: 100%;
	block-size: 100%;
	margin: 0;
	border-radius: inherit;
}

.codxn-doctors-reviews .codxn-doctors-review-bubble__avatar img {
	object-fit: cover;
	object-position: center;
}

.codxn-doctors-reviews .codxn-doctors-review-bubble__meta {
	display: flex;
	min-inline-size: 0;
	flex-direction: column;
	gap: 0.2rem;
	text-align: start;
}

.codxn-doctors-reviews .codxn-doctors-review-bubble__meta strong {
	color: var(--wp--preset--color--foreground);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.45;
}

.codxn-doctors-reviews .codxn-doctors-review-bubble__details,
.codxn-doctors-reviews .codxn-doctors-review-bubble__source {
	color: var(--wp--preset--color--text-muted);
	font-size: 0.825rem;
	line-height: 1.55;
}

.codxn-doctors-reviews .codxn-doctors-review-bubble__details {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	min-inline-size: 0;
}

.codxn-doctors-reviews .codxn-doctors-review-bubble__details > *,
.codxn-doctors-reviews .codxn-doctors-review-bubble__source {
	overflow-wrap: anywhere;
}

.codxn-doctors-reviews a.codxn-doctors-review-bubble__source {
	inline-size: fit-content;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

.codxn-doctors-reviews a.codxn-doctors-review-bubble__source:is(:hover, :focus-visible) {
	color: var(--codxn-palette-accent);
}

.codxn-doctors-reviews .codxn-doctors-review-bubble:focus-visible {
	outline: 3px solid var(--wp--preset--color--control-focus);
	outline-offset: 3px;
}

html[data-codxn-color-scheme="dark"] .codxn-doctors-reviews .codxn-doctors-review-bubble {
	border-color: color-mix(in srgb, var(--codxn-palette-accent) 32%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--codxn-palette-deep) 72%, var(--wp--preset--color--surface));
	box-shadow:
		0 0.85rem 2rem color-mix(in srgb, var(--wp--preset--color--black) 26%, transparent),
		inset 0 1px 0 color-mix(in srgb, var(--wp--preset--color--white) 6%, transparent);
}

html[data-codxn-color-scheme="dark"] .codxn-doctors-reviews {
	background:
		radial-gradient(circle at 10% 16%, color-mix(in srgb, var(--codxn-palette-primary) 12%, transparent) 0 8rem, transparent 20rem),
		radial-gradient(circle at 92% 82%, color-mix(in srgb, var(--codxn-palette-accent) 10%, transparent) 0 7rem, transparent 22rem),
		linear-gradient(145deg, color-mix(in srgb, var(--codxn-palette-deep) 86%, var(--wp--preset--color--surface)), var(--wp--preset--color--background));
}

html[data-codxn-color-scheme="dark"] .codxn-doctors-reviews .codxn-doctors-reviews__trust,
html[data-codxn-color-scheme="dark"] .codxn-doctors-reviews .codxn-doctors-review-bubble__quote {
	border-color: color-mix(in srgb, var(--codxn-palette-accent) 28%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--codxn-palette-deep) 82%, var(--wp--preset--color--surface));
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) .codxn-doctors-reviews .codxn-doctors-review-bubble {
		border-color: color-mix(in srgb, var(--codxn-palette-accent) 32%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--codxn-palette-deep) 72%, var(--wp--preset--color--surface));
		box-shadow:
			0 0.85rem 2rem color-mix(in srgb, var(--wp--preset--color--black) 26%, transparent),
			inset 0 1px 0 color-mix(in srgb, var(--wp--preset--color--white) 6%, transparent);
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-doctors-reviews {
		background:
			radial-gradient(circle at 10% 16%, color-mix(in srgb, var(--codxn-palette-primary) 12%, transparent) 0 8rem, transparent 20rem),
			radial-gradient(circle at 92% 82%, color-mix(in srgb, var(--codxn-palette-accent) 10%, transparent) 0 7rem, transparent 22rem),
			linear-gradient(145deg, color-mix(in srgb, var(--codxn-palette-deep) 86%, var(--wp--preset--color--surface)), var(--wp--preset--color--background));
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-doctors-reviews .codxn-doctors-reviews__trust,
	html:not([data-codxn-color-scheme="light"]) .codxn-doctors-reviews .codxn-doctors-review-bubble__quote {
		border-color: color-mix(in srgb, var(--codxn-palette-accent) 28%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--codxn-palette-deep) 82%, var(--wp--preset--color--surface));
	}
}

@media (max-width: 600px) {
	.codxn-doctors-reviews .codxn-doctors-reviews__stage {
		gap: 0.75rem;
		margin-block-start: 1.75rem;
		-webkit-mask-image: linear-gradient(to right, transparent, #000 2%, #000 98%, transparent);
		mask-image: linear-gradient(to right, transparent, #000 2%, #000 98%, transparent);
	}

	.codxn-doctors-reviews .codxn-doctors-reviews__sequence {
		gap: 0.75rem;
		padding-inline-end: 0.75rem;
	}

	.codxn-doctors-reviews .codxn-doctors-review-bubble,
	.codxn-doctors-reviews .codxn-doctors-review-bubble:is(.is-small, .is-medium, .is-large) {
		flex-basis: min(82vw, 19rem);
		inline-size: min(82vw, 19rem);
		block-size: auto;
		min-block-size: 18rem;
		aspect-ratio: auto;
		padding: 2.5rem 1.5rem 1.6rem;
		border-radius: 2rem;
	}

	.codxn-doctors-reviews .codxn-doctors-review-bubble::after {
		offset-path: inset(1px round 2rem);
	}

	.codxn-doctors-reviews .codxn-doctors-reviews__trust {
		flex-wrap: wrap;
		max-inline-size: 19rem;
	}

	.codxn-doctors-reviews .codxn-doctors-review-bubble__avatar {
		flex-basis: 2.75rem;
		inline-size: 2.75rem;
		block-size: 2.75rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.codxn-doctors-reviews .codxn-doctors-reviews__stage {
		-webkit-mask-image: none;
		mask-image: none;
	}

	.codxn-doctors-reviews .codxn-doctors-reviews__viewport {
		overflow-x: auto;
		scroll-snap-type: inline mandatory;
		scrollbar-width: thin;
	}

	.codxn-doctors-reviews .codxn-doctors-reviews__track {
		animation: none;
		transform: none;
	}

	.codxn-doctors-reviews .codxn-doctors-reviews__sequence.is-presentation-duplicate {
		display: none;
	}

	.codxn-doctors-reviews .codxn-doctors-review-bubble {
		scroll-snap-align: center;
		transition: none !important;
	}
}

@media (forced-colors: active) {
	.codxn-doctors-reviews .codxn-doctors-reviews__stage {
		-webkit-mask-image: none;
		mask-image: none;
	}

	.codxn-doctors-reviews .codxn-doctors-review-bubble,
	.codxn-doctors-reviews .codxn-doctors-review-bubble__avatar,
	.codxn-doctors-reviews .codxn-doctors-reviews__trust,
	.codxn-doctors-reviews .codxn-doctors-review-bubble__quote {
		border-color: CanvasText;
		background: Canvas;
		color: CanvasText;
		box-shadow: none;
	}
}

/* -----------------------------------------------------------------------
   Doctor Single — premium medical professional profile
   Presentation only: all structured data, conditional rendering, and native
   Gutenberg post content remain owned by the existing Doctor pattern.
----------------------------------------------------------------------- */

.codxn-doctors-professional {
	background-image: none !important;
}

.codxn-doctors-professional .codxn-doctors-professional__intro {
	max-inline-size: 48rem;
	margin-inline: auto;
	margin-block-end: 0;
}

.codxn-doctors-professional .codxn-doctors-professional__intro > * {
	margin-inline: auto;
}

.codxn-doctors-professional .codxn-doctors-professional__intro h2 {
	max-inline-size: 18ch;
	text-wrap: balance;
}

.codxn-doctors-professional .codxn-doctors-professional__bio {
	inline-size: min(100%, 46rem);
	max-inline-size: 46rem !important;
	margin: clamp(1.75rem, 4vw, 3rem) auto 0;
	padding: clamp(1.5rem, 3vw, 2.25rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 18%, var(--wp--preset--color--border));
	border-block-start: 3px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 62%, var(--wp--preset--color--surface));
	border-radius: 1.25rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 97%, var(--wp--preset--color--accent-soft));
	box-shadow: 0 0.55rem 1.3rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 5%, transparent);
	color: var(--wp--preset--color--foreground);
}

.codxn-doctors-professional .codxn-doctors-professional__bio :where(p, ul, ol) {
	max-inline-size: 68ch;
	line-height: 1.9;
}

.codxn-doctors-professional .codxn-doctors-professional__bio :where(h2, h3, h4) {
	margin-block-start: 1.5em;
	color: var(--wp--preset--color--foreground);
}

.codxn-doctors-professional .codxn-doctors-professional__indicators {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: stretch;
	inline-size: min(100%, 84rem);
	max-inline-size: 84rem !important;
	margin-block: clamp(1.75rem, 4vw, 3rem) 0;
	margin-inline: auto;
	gap: clamp(0.875rem, 2vw, 1.25rem);
}

.codxn-doctors-professional .codxn-doctors-professional__indicator {
	display: flex;
	align-items: flex-start;
	box-sizing: border-box;
	min-inline-size: 0;
	gap: 1rem;
	padding: 1rem 0 0;
	border: 0;
	border-block-start: 2px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 30%, var(--wp--preset--color--border));
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--wp--preset--color--foreground);
	text-align: start;
}

.codxn-doctors-professional .codxn-doctors-professional__indicator:only-child {
	grid-column: 1 / -1;
	justify-self: center;
	inline-size: min(100%, 42rem);
}

.codxn-doctors-professional .codxn-doctors-professional__icon {
	display: grid;
	flex: 0 0 2.75rem;
	place-items: center;
	box-sizing: border-box;
	inline-size: 2.75rem;
	block-size: 2.75rem;
	padding: 0.5rem;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 24%, var(--wp--preset--color--border));
	border-radius: 0.875rem;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 72%, var(--wp--preset--color--surface));
	color: var(--wp--preset--color--brand-text);
}

.codxn-doctors-professional .codxn-doctors-professional__icon > :is(svg, .codxn-icon, .codxn-icon-library-block__svg) {
	inline-size: 1.55rem;
	block-size: 1.55rem;
}

.codxn-doctors-professional .codxn-doctors-professional__indicator > span:last-child {
	display: flex;
	min-inline-size: 0;
	flex-direction: column;
	gap: 0.25rem;
}

.codxn-doctors-professional .codxn-doctors-professional__indicator small {
	color: var(--wp--preset--color--text-muted);
	font-size: 0.825rem;
	font-weight: 600;
	line-height: 1.45;
}

.codxn-doctors-professional .codxn-doctors-professional__indicator strong {
	color: var(--wp--preset--color--foreground);
	font-size: clamp(1rem, 1.5vw, 1.15rem);
	font-weight: 700;
	line-height: 1.55;
	overflow-wrap: anywhere;
}

.codxn-doctors-professional .codxn-doctors-professional__panels {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
	inline-size: min(100%, 84rem);
	max-inline-size: 84rem !important;
	margin-block: clamp(1.25rem, 3vw, 2rem) 0;
	margin-inline: auto;
	gap: clamp(1rem, 2.5vw, 1.5rem);
}

.codxn-doctors-professional .codxn-doctors-professional__panel {
	box-sizing: border-box;
	min-inline-size: 0;
	padding: clamp(1.35rem, 3vw, 1.9rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 18%, var(--wp--preset--color--border));
	border-block-start: 3px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 55%, var(--wp--preset--color--surface));
	border-radius: 1.25rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 98%, var(--wp--preset--color--accent-soft));
	box-shadow: 0 0.8rem 1.8rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 7%, transparent);
	color: var(--wp--preset--color--foreground);
}

.codxn-doctors-professional .codxn-doctors-professional__panel:only-child {
	grid-column: 1 / -1;
	justify-self: center;
	inline-size: min(100%, 42rem);
}

.codxn-doctors-professional .codxn-doctors-professional__group {
	min-inline-size: 0;
	padding-block: 1.35rem;
}

.codxn-doctors-professional .codxn-doctors-professional__group:first-child {
	padding-block-start: 0;
}

.codxn-doctors-professional .codxn-doctors-professional__group:last-child {
	padding-block-end: 0;
}

.codxn-doctors-professional .codxn-doctors-professional__group + .codxn-doctors-professional__group {
	border-block-start: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 16%, var(--wp--preset--color--border));
}

.codxn-doctors-professional .codxn-doctors-professional__group-heading {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	margin: 0 0 0.9rem;
}

.codxn-doctors-professional .codxn-doctors-professional__group-heading h3 {
	margin: 0;
	color: var(--wp--preset--color--foreground);
	font-size: clamp(1.05rem, 1.5vw, 1.2rem);
	font-weight: 700;
	line-height: 1.45;
	text-align: start;
}

.codxn-doctors-professional .codxn-doctors-professional__group-heading > .codxn-icon-library-block {
	display: grid;
	flex: 0 0 2.75rem;
	place-items: center;
	inline-size: 2.75rem;
	block-size: 2.75rem;
	box-sizing: border-box;
	padding: 0.5rem;
	border-radius: 0.75rem;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 62%, var(--wp--preset--color--surface));
	color: var(--wp--preset--color--brand-text);
}

.codxn-doctors-professional .codxn-doctors-professional__group-heading > .codxn-icon-library-block > :is(svg, .codxn-icon, .codxn-icon-library-block__svg) {
	inline-size: 1.55rem;
	block-size: 1.55rem;
}

.codxn-doctors-professional .codxn-doctors-professional__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.codxn-doctors-professional .codxn-doctors-professional__list li {
	position: relative;
	margin: 0;
	padding-inline-start: 1.15rem;
	color: var(--wp--preset--color--text-muted);
	font-size: 0.975rem;
	line-height: 1.8;
	overflow-wrap: anywhere;
}

.codxn-doctors-professional .codxn-doctors-professional__list li + li {
	margin-block-start: 0.6rem;
}

.codxn-doctors-professional .codxn-doctors-professional__list li::before {
	content: "";
	position: absolute;
	inset-block-start: 0.72em;
	inset-inline-start: 0;
	inline-size: 0.4rem;
	block-size: 0.4rem;
	border-radius: 50%;
	background: var(--wp--preset--color--medical-teal);
}

.codxn-doctors-professional .codxn-doctors-professional__chips {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	margin: 0;
}

.codxn-doctors-professional .codxn-doctors-professional__chips > span {
	display: inline-flex;
	align-items: center;
	max-inline-size: 100%;
	min-block-size: 2rem;
	padding: 0.3rem 0.7rem;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 22%, var(--wp--preset--color--border));
	border-radius: 999px;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 48%, var(--wp--preset--color--surface));
	color: var(--wp--preset--color--foreground);
	font-size: 0.85rem;
	font-weight: 600;
	line-height: 1.4;
	overflow-wrap: anywhere;
}

html[data-codxn-color-scheme="dark"] .codxn-doctors-professional .codxn-doctors-professional__panel {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 25%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--surface) 95%, var(--wp--preset--color--medical-navy));
	box-shadow: none;
}

html[data-codxn-color-scheme="dark"] .codxn-doctors-professional .codxn-doctors-professional__indicator {
	border-block-start-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 44%, var(--wp--preset--color--border));
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) .codxn-doctors-professional .codxn-doctors-professional__panel {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 25%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--surface) 95%, var(--wp--preset--color--medical-navy));
		box-shadow: none;
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-doctors-professional .codxn-doctors-professional__indicator {
		border-block-start-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 44%, var(--wp--preset--color--border));
	}
}

@media (max-width: 1024px) {
	.codxn-doctors-professional .codxn-doctors-professional__panels {
		grid-template-columns: minmax(0, 1fr);
	}

	.codxn-doctors-professional .codxn-doctors-professional__panel:only-child {
		grid-column: auto;
	}
}

@media (max-width: 700px) {
	.codxn-doctors-professional .codxn-doctors-professional__indicators {
		grid-template-columns: minmax(0, 1fr);
	}

	.codxn-doctors-professional .codxn-doctors-professional__indicator:only-child {
		grid-column: auto;
	}
}

@media (max-width: 600px) {
	.codxn-doctors-professional .codxn-doctors-professional__indicator {
		gap: 0.8rem;
		padding: 1rem 0 0;
		border-radius: 0;
	}

	.codxn-doctors-professional .codxn-doctors-professional__icon {
		padding: 0.5rem;
	}

	.codxn-doctors-professional .codxn-doctors-professional__panel {
		padding: 1.25rem;
		border-radius: 1.125rem;
	}

	.codxn-doctors-professional .codxn-doctors-professional__group {
		padding-block: 1.1rem;
	}

	.codxn-doctors-professional .codxn-doctors-professional__chips {
		gap: 0.4rem;
	}

	.codxn-doctors-professional .codxn-doctors-professional__chips > span {
		padding: 0.28rem 0.6rem;
		font-size: 0.825rem;
	}
}

@media (forced-colors: active) {
	.codxn-doctors-professional :is(
		.codxn-doctors-professional__indicator,
		.codxn-doctors-professional__icon,
		.codxn-doctors-professional__panel,
		.codxn-doctors-professional__group-heading > .codxn-icon-library-block,
		.codxn-doctors-professional__chips > span
	) {
		border-color: CanvasText;
		background: Canvas;
		color: CanvasText;
		box-shadow: none;
	}
}

/* -----------------------------------------------------------------------
   Doctor Single — working hours and final appointment CTA
   Presentation only: schedule/status data and appointment destinations stay
   owned by the existing Doctor pattern and shared clinic contracts.
----------------------------------------------------------------------- */

.codxn-doctors-hours-section .codxn-doctors-hours-section__inner {
	inline-size: min(100%, 64rem);
	max-inline-size: 64rem !important;
	margin-inline: auto;
}

.codxn-doctors-hours-section .codxn-doctors-hours-section__intro {
	max-inline-size: 40rem;
	margin-inline: auto;
	margin-block-end: clamp(1.5rem, 3vw, 2.25rem);
	text-align: center;
}

.codxn-doctors-hours-section .codxn-doctors-hours-section__intro > * {
	margin-inline: auto;
}

.codxn-doctors-hours-section .codxn-doctors-hours {
	box-sizing: border-box;
	inline-size: 100%;
	max-inline-size: 56rem;
	margin-inline: auto;
	padding: clamp(1.35rem, 3vw, 2rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 22%, var(--wp--preset--color--border));
	border-radius: 1.5rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 96%, var(--wp--preset--color--accent-soft));
	box-shadow: 0 0.8rem 2rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 8%, transparent);
	color: var(--wp--preset--color--foreground);
}

.codxn-doctors-hours-section .codxn-doctors-hours__heading {
	display: flex;
	align-items: center;
	gap: 0.9rem;
	margin: 0;
	color: var(--wp--preset--color--foreground);
	text-align: start;
}

.codxn-doctors-hours-section .codxn-doctors-hours__heading > .codxn-icon-library-block {
	display: grid;
	flex: 0 0 calc(var(--codxn-icon-size, 30px) + 1rem);
	place-items: center;
	box-sizing: border-box;
	inline-size: calc(var(--codxn-icon-size, 30px) + 1rem);
	block-size: calc(var(--codxn-icon-size, 30px) + 1rem);
	padding: 0.5rem;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 24%, var(--wp--preset--color--border));
	border-radius: 0.875rem;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 68%, var(--wp--preset--color--surface));
	color: var(--wp--preset--color--brand-text);
}

.codxn-doctors-hours-section .codxn-doctors-hours__heading > h3 {
	margin: 0;
	font-size: clamp(1.1rem, 1.8vw, 1.3rem);
	font-weight: 700;
	line-height: 1.45;
}

.codxn-doctors-hours-section .codxn-doctors-hours__status {
	display: grid;
	grid-template-columns: minmax(7rem, auto) minmax(0, 1fr);
	align-items: center;
	gap: 0.5rem 1rem;
	margin: 1.25rem 0 0;
	padding-block: 1rem;
	border-block: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 16%, var(--wp--preset--color--border));
	color: var(--wp--preset--color--foreground);
	line-height: 1.65;
	text-align: start;
}

.codxn-doctors-hours-section .codxn-doctors-hours__status > strong {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.95rem;
	font-weight: 700;
}

.codxn-doctors-hours-section .codxn-doctors-hours__status > strong::before {
	content: "";
	flex: 0 0 0.5rem;
	inline-size: 0.5rem;
	block-size: 0.5rem;
	border-radius: 50%;
	background: currentColor;
}

.codxn-doctors-hours-section .codxn-doctors-hours__status.is-open > strong {
	color: var(--wp--preset--color--success);
}

.codxn-doctors-hours-section .codxn-doctors-hours__status:is(.is-closed, .is-closed-day) > strong {
	color: var(--wp--preset--color--text-muted);
}

.codxn-doctors-hours-section .codxn-doctors-hours__status > span {
	min-inline-size: 0;
	justify-self: end;
	color: var(--wp--preset--color--text-muted);
	font-size: 0.95rem;
	text-align: end;
	overflow-wrap: anywhere;
}

.codxn-doctors-hours-section .codxn-doctors-hours__status > span:only-child {
	grid-column: 1 / -1;
	justify-self: start;
	text-align: start;
}

.codxn-doctors-hours-section .codxn-doctors-hours__summary {
	margin: 1rem 0 0;
	padding: 0.85rem 1rem;
	border-inline-start: 3px solid var(--wp--preset--color--medical-teal);
	border-radius: 0.75rem;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 48%, var(--wp--preset--color--surface));
	color: var(--wp--preset--color--text-muted);
	font-size: 0.925rem;
	line-height: 1.75;
	text-align: start;
	overflow-wrap: anywhere;
}

html[data-codxn-color-scheme="dark"] .codxn-doctors-hours-section .codxn-doctors-hours {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 26%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--surface) 95%, var(--wp--preset--color--medical-navy));
	box-shadow: 0 0.85rem 2rem color-mix(in srgb, var(--wp--preset--color--black) 20%, transparent);
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) .codxn-doctors-hours-section .codxn-doctors-hours {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 26%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--surface) 95%, var(--wp--preset--color--medical-navy));
		box-shadow: 0 0.85rem 2rem color-mix(in srgb, var(--wp--preset--color--black) 20%, transparent);
	}
}

.codxn-doctors-final-cta {
	background-color: var(--wp--preset--color--background) !important;
	background-image: none !important;
}

.codxn-doctors-final-cta .codxn-doctors-final-cta__inner {
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
	inline-size: min(100%, 84rem);
	max-inline-size: 84rem !important;
	margin-inline: auto;
	padding: clamp(2rem, 5vw, 4rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 34%, transparent);
	border-radius: 1.75rem;
	background: color-mix(in srgb, var(--wp--preset--color--medical-navy) 94%, var(--wp--preset--color--brand-fill));
	box-shadow: 0 1.25rem 3rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 20%, transparent);
	color: var(--wp--preset--color--white);
	text-align: center;
}

.codxn-doctors-final-cta .codxn-doctors-final-cta__inner > * {
	margin-inline: auto;
}

.codxn-doctors-final-cta .codxn-doctors-final-cta__inner > .codxn-eyebrow {
	margin-block: 0 0.75rem;
	color: var(--wp--preset--color--accent-soft) !important;
}

.codxn-doctors-final-cta .codxn-doctors-final-cta__inner > h2 {
	max-inline-size: 18ch;
	margin-block: 0;
	font-size: clamp(2rem, 4.5vw, 3.5rem) !important;
	font-weight: 700;
	line-height: 1.15;
	text-wrap: balance;
}

.codxn-doctors-final-cta .codxn-doctors-final-cta__inner > h2,
body:not(.wp-admin):not(.block-editor-page):not(.editor-styles-wrapper) > .wp-site-blocks .codxn-doctors-final-cta .codxn-doctors-final-cta__inner > h2 {
	background: none !important;
	color: var(--wp--preset--color--white) !important;
	-webkit-text-fill-color: currentColor !important;
}

.codxn-doctors-final-cta .codxn-doctors-final-cta__inner > p:not(.codxn-eyebrow) {
	max-inline-size: 44rem;
	margin-block: 1rem 0;
	color: color-mix(in srgb, var(--wp--preset--color--white) 82%, transparent) !important;
	font-size: clamp(1rem, 1.5vw, 1.125rem) !important;
	line-height: 1.8;
	text-wrap: pretty;
}

.codxn-doctors-final-cta .codxn-doctors-landing__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.75rem;
	margin-block-start: clamp(1.5rem, 3vw, 2rem);
}

.codxn-doctors-final-cta .codxn-doctors-landing__actions .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-block-size: 3rem;
	padding: 0.75rem 1.4rem;
	border-radius: 0.875rem;
	font-weight: 700;
	text-align: center;
}

.codxn-doctors-final-cta .codxn-doctors-landing__actions .codxn-btn-primary .wp-block-button__link {
	box-shadow: 0 0.65rem 1.4rem color-mix(in srgb, var(--wp--preset--color--black) 18%, transparent);
}

.codxn-doctors-final-cta .codxn-doctors-landing__actions .codxn-btn-secondary .wp-block-button__link {
	border-color: color-mix(in srgb, var(--wp--preset--color--white) 58%, transparent);
	background: transparent;
	color: var(--wp--preset--color--white);
}

html[data-codxn-color-scheme="dark"] .codxn-doctors-final-cta .codxn-doctors-final-cta__inner {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 30%, var(--wp--preset--color--border));
	box-shadow: 0 1.25rem 3rem color-mix(in srgb, var(--wp--preset--color--black) 30%, transparent);
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) .codxn-doctors-final-cta .codxn-doctors-final-cta__inner {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 30%, var(--wp--preset--color--border));
		box-shadow: 0 1.25rem 3rem color-mix(in srgb, var(--wp--preset--color--black) 30%, transparent);
	}
}

@media (max-width: 700px) {
	.codxn-doctors-hours-section .codxn-doctors-hours__status {
		grid-template-columns: minmax(0, 1fr);
		gap: 0.35rem;
	}

	.codxn-doctors-hours-section .codxn-doctors-hours__status > span {
		justify-self: start;
		text-align: start;
	}
}

@media (max-width: 600px) {
	.codxn-doctors-hours-section .codxn-doctors-hours {
		padding: 1.125rem;
		border-radius: 1.25rem;
	}

	.codxn-doctors-hours-section .codxn-doctors-hours__summary {
		padding: 0.75rem 0.85rem;
	}

	.codxn-doctors-final-cta .codxn-doctors-final-cta__inner {
		padding: 1.5rem 1.25rem;
		border-radius: 1.5rem;
	}

	.codxn-doctors-final-cta .codxn-doctors-final-cta__inner > h2 {
		font-size: clamp(1.85rem, 9vw, 2.5rem) !important;
	}

	.codxn-doctors-final-cta .codxn-doctors-landing__actions {
		inline-size: 100%;
		justify-content: center;
	}

	.codxn-doctors-final-cta .codxn-doctors-landing__actions .wp-block-button,
	.codxn-doctors-final-cta .codxn-doctors-landing__actions .wp-block-button__link {
		inline-size: fit-content;
		max-inline-size: 100%;
	}
}

@media (forced-colors: active) {
	.codxn-doctors-hours-section :is(
		.codxn-doctors-hours,
		.codxn-doctors-hours__heading > .codxn-icon-library-block,
		.codxn-doctors-hours__summary
	),
	.codxn-doctors-final-cta .codxn-doctors-final-cta__inner {
		border-color: CanvasText;
		background: Canvas;
		color: CanvasText;
		box-shadow: none;
	}

	.codxn-doctors-final-cta .codxn-doctors-final-cta__inner :is(h2, p, a) {
		color: CanvasText !important;
		-webkit-text-fill-color: currentColor !important;
	}
}

/* -----------------------------------------------------------------------
   BLOG-V2 — Gutenberg-owned medical article library
   Presentation only: Query Loop data, links, metadata, pagination, and
   no-results behavior remain owned by WordPress Core blocks.
----------------------------------------------------------------------- */

.codxn-blog-page-hero {
	background-color: var(--wp--preset--color--background) !important;
	background-image: none !important;
	padding-block: clamp(2rem, 5vw, 4.5rem) !important;
}

.codxn-blog-page-hero__layout {
	align-items: center;
	gap: clamp(1.5rem, 4vw, 4rem);
}

.codxn-blog-page-hero .codxn-blog-page-hero__content {
	color: var(--wp--preset--color--foreground);
	text-align: start;
}

.codxn-blog-page-hero .codxn-blog-page-hero__content > .codxn-eyebrow {
	margin-block: 0 0.8rem;
	color: var(--wp--preset--color--brand-text) !important;
}

.codxn-blog-page-hero .codxn-blog-page-hero__content > h1 {
	max-inline-size: 12ch;
	margin-block: 0;
	background: none !important;
	color: var(--wp--preset--color--foreground) !important;
	font-weight: 700;
	text-wrap: balance;
	-webkit-text-fill-color: currentColor !important;
}

.codxn-blog-page-hero .codxn-blog-page-hero__content > p:not(.codxn-eyebrow) {
	max-inline-size: 42rem;
	margin-block: 1.15rem 0;
	color: var(--wp--preset--color--text-muted) !important;
	font-size: clamp(1rem, 1.5vw, 1.125rem) !important;
	line-height: 1.85;
	text-wrap: pretty;
}

.codxn-blog-page-hero .codxn-blog-page-hero__media {
	overflow: hidden;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 22%, var(--wp--preset--color--border));
	border-radius: 1.5rem;
	background: var(--wp--preset--color--surface);
	box-shadow: 0 1rem 2.5rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 10%, transparent);
}

.codxn-blog-page-hero .codxn-blog-page-hero__image,
.codxn-blog-page-hero .codxn-blog-page-hero__image img {
	display: block;
	inline-size: 100%;
	margin: 0;
}

.codxn-blog-page-hero .codxn-blog-page-hero__image img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
	object-position: center;
}

.codxn-blog-catalog .codxn-blog-catalog__intro {
	max-inline-size: 46rem;
	margin-inline: auto;
	margin-block-end: clamp(2rem, 4vw, 3.25rem);
	text-align: center;
}

.codxn-blog-catalog .codxn-blog-catalog__intro > * {
	margin-inline: auto;
}

.codxn-blog-catalog .codxn-blog-catalog__intro .codxn-eyebrow {
	margin-block: 0 0.7rem;
}

.codxn-blog-catalog .codxn-blog-catalog__intro h2 {
	margin-block: 0;
	color: var(--wp--preset--color--foreground);
	line-height: 1.2;
	text-wrap: balance;
}

.codxn-blog-catalog .codxn-blog-catalog__intro p:not(.codxn-eyebrow) {
	margin-block: 0.9rem 0;
	line-height: 1.8;
	text-wrap: pretty;
}

.codxn-blog-catalog .codxn-blog-catalog__query {
	inline-size: min(100%, 84rem);
	max-inline-size: 84rem !important;
	margin-inline: auto;
}

.codxn-blog-catalog .codxn-blog-catalog__grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	align-items: start;
	box-sizing: border-box;
	inline-size: 100%;
	gap: clamp(1rem, 2.4vw, 1.75rem) !important;
	margin: 0;
	padding: 0;
}

.codxn-blog-catalog .codxn-blog-catalog__grid > li {
	min-inline-size: 0;
	margin: 0;
}

.codxn-blog-catalog .codxn-blog-catalog__card {
	overflow: hidden;
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
	inline-size: 100%;
	max-inline-size: none !important;
	margin: 0;
	padding: 0 !important;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 18%, var(--wp--preset--color--border));
	border-radius: 1.125rem;
	background: var(--wp--preset--color--surface);
	box-shadow: none;
	color: var(--wp--preset--color--foreground);
	text-align: start;
	transform: none;
}

.codxn-blog-catalog .codxn-blog-catalog__card:hover {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 46%, var(--wp--preset--color--border));
	box-shadow: none;
	transform: none;
}

.codxn-blog-catalog .codxn-blog-catalog__card > * {
	max-inline-size: none !important;
}

.wp-block-post-featured-image {
	overflow: hidden;
	border-radius: 1.25rem;
}

.codxn-blog-catalog .codxn-blog-card__image {
	overflow: hidden;
	inline-size: 100%;
	margin: 0;
	border-radius: 0;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 58%, var(--wp--preset--color--surface));
}

.codxn-blog-catalog .codxn-blog-card__image a,
.codxn-blog-catalog .codxn-blog-card__image img {
	display: block;
	inline-size: 100%;
	block-size: 100%;
}

.codxn-blog-catalog .codxn-blog-card__image img {
	aspect-ratio: 3 / 2 !important;
	object-fit: cover;
	object-position: center;
	transition: transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}

@media (hover: hover) and (pointer: fine) {
	.codxn-blog-catalog .codxn-blog-card:hover .codxn-blog-card__image img {
		transform: scale(1.06);
	}
}

@media (prefers-reduced-motion: reduce) {
	.codxn-blog-catalog .codxn-blog-card__image img {
		transition: none;
		transform: none;
	}
}

.codxn-blog-catalog .codxn-blog-card__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.3rem 0.6rem;
	inline-size: auto;
	margin: 0;
	padding: 1.15rem 1.25rem 0;
	color: var(--wp--preset--color--text-muted);
	font-size: 0.8rem;
	font-weight: 600;
	line-height: 1.5;
	text-align: start;
}

.codxn-blog-catalog .codxn-blog-card__meta :is(.wp-block-post-date, .wp-block-post-terms) {
	margin: 0;
	color: inherit;
}

.codxn-blog-catalog .codxn-blog-card__meta .wp-block-post-terms::before {
	content: "•";
	margin-inline-end: 0.5rem;
	color: var(--wp--custom--semantic--icon-foreground);
}

.codxn-blog-catalog .codxn-blog-card__meta a,
.codxn-blog-catalog .codxn-blog-card .wp-block-post-excerpt__more-link {
	color: var(--wp--preset--color--brand-text);
	font-weight: 700;
	text-underline-offset: 0.2em;
}

.codxn-blog-catalog .codxn-blog-catalog__card > .wp-block-post-title {
	margin: 0;
	padding: 0.8rem 1.25rem 0;
	color: var(--wp--preset--color--foreground);
	font-size: clamp(1.2rem, 1.7vw, 1.45rem);
	font-weight: 700;
	line-height: 1.42;
	text-align: start;
	text-wrap: pretty;
}

.codxn-blog-catalog .codxn-blog-catalog__card > .wp-block-post-title a {
	color: inherit;
	text-decoration: none;
}

.codxn-blog-catalog .codxn-blog-catalog__card > .wp-block-post-excerpt {
	margin: 0;
	padding: 0.8rem 1.25rem 1.3rem;
	color: var(--wp--preset--color--text-muted);
	font-size: 0.95rem;
	line-height: 1.8;
	text-align: start;
}

.codxn-blog-catalog .codxn-blog-card .wp-block-post-excerpt__excerpt {
	margin: 0;
	color: inherit;
	text-wrap: pretty;
}

.codxn-blog-catalog .codxn-blog-card .wp-block-post-excerpt__more-text {
	margin-block: 0.85rem 0 0;
}

.codxn-blog-catalog .codxn-blog-card .wp-block-post-excerpt__more-link {
	font-size: 0.875rem;
}

.codxn-blog-catalog .codxn-pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
}

.codxn-blog-catalog .codxn-pagination :is(
	.wp-block-query-pagination-previous,
	.wp-block-query-pagination-next,
	.page-numbers
) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-inline-size: 2.75rem;
	min-block-size: 2.75rem;
	margin: 0;
	padding: 0.45rem 0.75rem;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 20%, var(--wp--preset--color--border));
	border-radius: 0.65rem;
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--foreground);
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
}

.codxn-blog-catalog .codxn-pagination .page-numbers.current {
	border-color: var(--wp--preset--color--brand-fill);
	background: var(--wp--preset--color--brand-fill);
	color: var(--wp--preset--color--white);
}

.codxn-blog-catalog .codxn-pagination a:focus-visible,
.codxn-blog-catalog .codxn-blog-catalog__card a:focus-visible,
.codxn-blog-next-step a:focus-visible {
	outline: 3px solid var(--wp--preset--color--control-focus);
	outline-offset: 3px;
}

.codxn-blog-catalog .codxn-blog-empty {
	box-sizing: border-box;
	inline-size: min(100%, 42rem);
	max-inline-size: 42rem;
	margin-inline: auto;
	padding: clamp(1.5rem, 3vw, 2rem);
	border-inline-start: 0.25rem solid var(--wp--preset--color--medical-teal);
	border-radius: 0.75rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 96%, var(--wp--preset--color--accent-soft));
	box-shadow: none;
}

.codxn-blog-catalog .codxn-blog-empty > * {
	margin: 0;
}

.codxn-blog-next-step__inner {
	max-inline-size: 48rem;
	margin-inline: auto;
	text-align: center;
}

.codxn-blog-next-step__inner > * {
	margin-inline: auto;
}

.codxn-blog-next-step__inner .codxn-eyebrow {
	margin-block: 0 0.75rem;
}

.codxn-blog-next-step__inner h2 {
	margin-block: 0;
	color: inherit;
	line-height: 1.25;
	text-wrap: balance;
}

.codxn-blog-next-step__inner > p:not(.codxn-eyebrow) {
	margin-block: 1rem 0;
	color: inherit;
	line-height: 1.8;
	text-wrap: pretty;
}

.codxn-blog-next-step__action {
	margin-block-start: 1.5rem;
}

html[data-codxn-color-scheme="dark"] :is(
	.codxn-blog-page-hero .codxn-blog-page-hero__media,
	.codxn-blog-catalog .codxn-blog-catalog__card
) {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 30%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--surface) 95%, var(--wp--preset--color--medical-navy));
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) :is(
		.codxn-blog-page-hero .codxn-blog-page-hero__media,
		.codxn-blog-catalog .codxn-blog-catalog__card
	) {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 30%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--surface) 95%, var(--wp--preset--color--medical-navy));
	}
}

@media (max-width: 1024px) {
	.codxn-blog-catalog .codxn-blog-catalog__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 782px) {
	.codxn-blog-page-hero__layout {
		gap: 1.5rem;
	}

	.codxn-blog-page-hero .codxn-blog-page-hero__content > h1 {
		max-inline-size: 16ch;
	}

	.codxn-blog-page-hero .codxn-blog-page-hero__media {
		max-inline-size: 38rem;
		margin-inline: auto;
	}
}

@media (max-width: 600px) {
	.codxn-blog-page-hero {
		padding-block: 1.5rem 2.5rem !important;
	}

	.codxn-blog-page-hero .codxn-blog-page-hero__content > h1 {
		font-size: clamp(2rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
	}

	.codxn-blog-catalog .codxn-blog-catalog__intro h2 {
		font-size: clamp(2rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
	}

	.codxn-blog-catalog .codxn-blog-catalog__grid {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 1rem !important;
	}

	.codxn-blog-catalog .codxn-blog-catalog__card {
		border-radius: 1rem;
	}

	.codxn-blog-catalog .codxn-blog-card__meta {
		padding: 1rem 1.1rem 0;
	}

	.codxn-blog-catalog .codxn-blog-catalog__card > .wp-block-post-title {
		padding: 0.7rem 1.1rem 0;
		font-size: 1.15rem;
	}

	.codxn-blog-catalog .codxn-blog-catalog__card > .wp-block-post-excerpt {
		padding: 0.7rem 1.1rem 1.1rem;
	}

	.codxn-blog-catalog .codxn-pagination {
		gap: 0.35rem;
	}
}

@media (forced-colors: active) {
	.codxn-blog-page-hero .codxn-blog-page-hero__media,
	.codxn-blog-catalog .codxn-blog-catalog__card,
	.codxn-blog-catalog .codxn-blog-empty,
	.codxn-blog-catalog .codxn-pagination :is(
		.wp-block-query-pagination-previous,
		.wp-block-query-pagination-next,
		.page-numbers
	) {
		border-color: CanvasText;
		background: Canvas;
		color: CanvasText;
		box-shadow: none;
	}
}

/* -----------------------------------------------------------------------
   ARTICLE SINGLE — native Post editorial reading surface
   Native Post data and Gutenberg content remain owned by Core blocks.
----------------------------------------------------------------------- */

.codxn-article-single {
	background: var(--wp--preset--color--background);
	color: var(--wp--preset--color--foreground);
}

.codxn-article-single__header {
	max-inline-size: 60rem !important;
	margin-inline: auto;
	margin-block-end: clamp(1.75rem, 4vw, 3.5rem);
	text-align: start;
}

.codxn-article-single__header .wp-block-post-title {
	max-inline-size: 18ch;
	margin-block: 0;
	color: var(--wp--preset--color--foreground);
	font-size: clamp(2.3rem, 5vw, 4.5rem) !important;
	font-weight: 700;
	line-height: 1.12;
	text-wrap: balance;
}

.codxn-article-single__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 0.7rem;
	margin-block-start: 1.15rem;
	color: var(--wp--preset--color--text-muted);
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.5;
	text-align: start;
}

.codxn-article-single__meta :is(.wp-block-post-date, .wp-block-post-terms) {
	margin: 0;
	color: inherit;
}

.codxn-article-single__meta .wp-block-post-terms::before {
	content: "•";
	margin-inline-end: 0.55rem;
	color: var(--wp--custom--semantic--icon-foreground);
}

.codxn-article-single__meta a,
.codxn-article-single__return a,
.codxn-article-single__content a:not(.wp-element-button, .wp-block-button__link) {
	color: var(--wp--preset--color--brand-text);
	font-weight: 700;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.2em;
}

.codxn-article-single__featured-image {
	overflow: hidden;
	display: block;
	inline-size: min(100%, 72rem);
	margin-block: 0 clamp(2rem, 5vw, 4rem);
	margin-inline: auto;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 20%, var(--wp--preset--color--border));
	border-radius: 1.25rem;
	background: var(--wp--preset--color--surface);
	box-shadow: 0 1rem 2.5rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 9%, transparent);
}

.codxn-article-single__featured-image img {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	margin: 0;
	object-fit: cover;
}

.codxn-article-single__content {
	inline-size: min(100%, 44rem);
	max-inline-size: 44rem !important;
	margin-inline: auto;
	color: var(--wp--preset--color--foreground);
	font-size: clamp(1rem, 1.1vw, 1.125rem);
	line-height: 1.95;
	text-align: start;
	overflow-wrap: anywhere;
}

.codxn-article-single__content > * {
	max-inline-size: none;
}

.codxn-article-single__content > :where(p, ul, ol, blockquote, .wp-block-table, .wp-block-image, .wp-block-gallery, .wp-block-embed, .wp-block-buttons, hr) {
	margin-block: 0 clamp(1.25rem, 2.5vw, 2rem);
}

.codxn-article-single__content > :where(h2, h3, h4) {
	margin-block: clamp(2.1rem, 5vw, 3.5rem) 1rem;
	color: var(--wp--preset--color--foreground);
	font-weight: 700;
	line-height: 1.25;
	text-align: start;
	text-wrap: balance;
}

.codxn-article-single__content > h2 {
	font-size: clamp(1.75rem, 3.2vw, 2.5rem);
}

.codxn-article-single__content > h3 {
	font-size: clamp(1.4rem, 2.4vw, 1.85rem);
}

.codxn-article-single__content > h4 {
	font-size: clamp(1.15rem, 1.8vw, 1.4rem);
}

.codxn-article-single__content > :where(ul, ol) {
	padding-inline-start: 1.4em;
}

.codxn-article-single__content li + li {
	margin-block-start: 0.55rem;
}

.codxn-article-single__content blockquote {
	margin-inline: 0;
	padding-block: 0.3rem;
	padding-inline: 0.25rem;
	padding-inline-start: 1.25rem;
	border-inline-start: 0.25rem solid var(--wp--preset--color--medical-teal);
	color: var(--wp--preset--color--foreground);
	font-size: clamp(1.15rem, 2vw, 1.35rem);
	font-weight: 600;
	line-height: 1.7;
}

.codxn-article-single__content blockquote cite {
	display: block;
	margin-block-start: 0.75rem;
	color: var(--wp--preset--color--text-muted);
	font-size: 0.875rem;
	font-style: normal;
	font-weight: 500;
}

.codxn-article-single__content :is(.wp-block-image, .wp-block-gallery) {
	margin-inline: 0;
}

.codxn-article-single__content :is(.wp-block-image img, .wp-block-gallery img) {
	display: block;
	max-inline-size: 100%;
	border-radius: 0.875rem;
}

.codxn-article-single__content figcaption {
	margin-block-start: 0.7rem;
	color: var(--wp--preset--color--text-muted);
	font-size: 0.875rem;
	line-height: 1.6;
	text-align: start;
}

.codxn-article-single__content .wp-block-table {
	overflow-x: auto;
	margin-inline: 0;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 0.75rem;
}

.codxn-article-single__content table {
	inline-size: 100%;
	min-inline-size: 34rem;
	margin: 0;
	border-collapse: collapse;
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--foreground);
}

.codxn-article-single__content :is(th, td) {
	padding: 0.8rem 0.9rem;
	border: 1px solid var(--wp--preset--color--border);
	text-align: start;
	vertical-align: top;
}

.codxn-article-single__content th {
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 58%, var(--wp--preset--color--surface));
	font-weight: 700;
}

.codxn-article-single__content .wp-block-embed {
	overflow: hidden;
	border-radius: 0.875rem;
}

.codxn-article-single__content .wp-block-embed :is(iframe, video) {
	display: block;
	max-inline-size: 100%;
}

.codxn-article-single__content .wp-block-separator {
	inline-size: min(100%, 8rem);
	margin-inline: 0;
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 38%, var(--wp--preset--color--border));
}

.codxn-article-single__content .wp-block-button__link {
	box-shadow: none;
}

.codxn-article-single__return,
.codxn-article-single__navigation {
	inline-size: min(100%, 60rem);
	max-inline-size: 60rem !important;
	margin-inline: auto;
}

.codxn-article-single__return {
	margin-block: clamp(2.5rem, 6vw, 5rem) 1.25rem;
	padding-block-start: 1.25rem;
	border-block-start: 1px solid var(--wp--preset--color--border);
}

.codxn-article-single__return p {
	margin: 0;
	text-align: start;
}

.codxn-article-single__navigation {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.codxn-article-single__navigation .wp-block-post-navigation-link {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
	min-inline-size: 0;
	padding: 1rem 1.15rem;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 18%, var(--wp--preset--color--border));
	border-radius: 0.875rem;
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--foreground);
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.55;
	text-align: start;
}

.codxn-article-single__navigation .wp-block-post-navigation-link:only-child {
	grid-column: 1 / -1;
}

.codxn-article-single__navigation > .wp-block-post-navigation-link:empty {
	display: none;
}

.codxn-article-single__navigation .wp-block-post-navigation-link a {
	color: inherit;
	font-size: 1rem;
	text-decoration: none;
}

.codxn-article-single__return a:focus-visible,
.codxn-article-single__navigation a:focus-visible,
.codxn-article-single__content a:focus-visible,
.codxn-article-single__cta a:focus-visible {
	outline: 3px solid var(--wp--preset--color--control-focus);
	outline-offset: 3px;
}

.codxn-article-single__cta {
	inline-size: min(100%, 60rem);
	max-inline-size: 60rem !important;
	margin: clamp(2.5rem, 6vw, 5rem) auto 0;
	padding: clamp(1.75rem, 4vw, 3rem);
	border-radius: 1.125rem;
	text-align: center;
}

.codxn-article-single__cta > * {
	margin-inline: auto;
}

.codxn-article-single__cta .codxn-eyebrow {
	margin-block: 0 0.7rem;
}

.codxn-article-single__cta h2 {
	margin-block: 0;
	color: inherit;
	line-height: 1.25;
	text-wrap: balance;
}

.codxn-article-single__cta > p:not(.codxn-eyebrow) {
	max-inline-size: 42rem;
	margin-block: 1rem 0;
	color: inherit;
	line-height: 1.8;
	text-wrap: pretty;
}

.codxn-article-single__cta-action {
	margin-block-start: 1.35rem;
}

.codxn-article-single :is(.wp-block-button__link, .wp-element-button) {
	min-block-size: 2.625rem;
	padding-block: 0.5rem;
	padding-inline: 1rem;
	font-size: 0.9375rem;
}

html[data-codxn-color-scheme="dark"] :is(
	.codxn-article-single__featured-image,
	.codxn-article-single__navigation .wp-block-post-navigation-link,
	.codxn-article-single__content .wp-block-table
) {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 30%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--surface) 95%, var(--wp--preset--color--medical-navy));
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) :is(
		.codxn-article-single__featured-image,
		.codxn-article-single__navigation .wp-block-post-navigation-link,
		.codxn-article-single__content .wp-block-table
	) {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 30%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--surface) 95%, var(--wp--preset--color--medical-navy));
	}
}

@media (min-width: 961px) {
	.codxn-article-single__content > .alignwide {
		inline-size: min(60rem, calc(100% + 16rem));
		max-inline-size: none;
		margin-inline: auto;
	}
}

@media (max-width: 782px) {
	.codxn-article-single__header {
		margin-block-end: 1.75rem;
	}

	.codxn-article-single__featured-image {
		margin-block-end: 2.25rem;
		border-radius: 1rem;
	}

	.codxn-article-single__content {
		inline-size: 100%;
	}
}

@media (max-width: 600px) {
	.codxn-article-single {
		padding-inline: 0.1rem;
	}

	.codxn-article-single__header .wp-block-post-title {
		font-size: clamp(2rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
	}

	.codxn-article-single__meta {
		gap: 0.25rem 0.55rem;
		font-size: 0.8125rem;
	}

	.codxn-article-single__content {
		font-size: 1rem;
		line-height: 1.9;
	}

	.codxn-article-single__content blockquote {
		padding-inline-start: 1rem;
	}

	.codxn-article-single__navigation {
		grid-template-columns: minmax(0, 1fr);
	}

	.codxn-article-single__navigation .wp-block-post-navigation-link:only-child {
		grid-column: auto;
	}

	.codxn-article-single__cta {
		border-radius: 1rem;
	}

	.codxn-article-single__cta-action {
		inline-size: 100%;
		justify-content: center;
	}

	.codxn-article-single__cta-action .wp-block-button,
	.codxn-article-single__cta-action .wp-block-button__link {
		inline-size: fit-content;
		max-inline-size: 100%;
	}

	.codxn-article-single__cta-action .wp-block-button__link {
		justify-content: center;
		min-block-size: 2.75rem;
	}
}

@media (forced-colors: active) {
	.codxn-article-single__featured-image,
	.codxn-article-single__navigation .wp-block-post-navigation-link,
	.codxn-article-single__content .wp-block-table,
	.codxn-article-single__cta {
		border-color: CanvasText;
		background: Canvas;
		color: CanvasText;
		box-shadow: none;
	}
}

/* -----------------------------------------------------------------------
   Shared medical schedule/calendar component
   Single source of truth for the Home + Appointment shared pattern.
   Home-only outer composition remains in home-commercial.css.
----------------------------------------------------------------------- */

.codxn-check-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: var(--wp--preset--spacing--2-xs, 0.5rem);
}

.codxn-check-list li {
	position: relative;
	padding-inline-start: 1.6em;
	line-height: 1.6;
}

.codxn-check-list li::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	top: 0.15em;
	width: 1.1em;
	height: 1.1em;
	border-radius: var(--wp--custom--radius--pill, 999px);
	background: color-mix(in srgb, var(--wp--preset--color--brand-fill) 18%, transparent);
	-webkit-mask: no-repeat center / 0.7em url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
	mask: no-repeat center / 0.7em url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
	background-color: var(--wp--preset--color--brand-fill);
}

.codxn-home-hours-appointment .codxn-visit-intro {
	max-inline-size: 42rem;
	margin-inline: 0;
	text-align: start;
}

.codxn-home-hours-appointment .codxn-visit-intro > * {
	margin-inline: 0 !important;
}

.codxn-home-hours-appointment .codxn-visit-intro h2 {
	margin-block: 0;
}

.codxn-home-hours-appointment .codxn-visit-intro .codxn-section-lead {
	margin-block: 0.7rem 0;
	line-height: 1.75;
}

.codxn-home-hours-appointment .codxn-visit-layout {
	display: grid !important;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	align-items: stretch;
	gap: 0.9rem !important;
	margin-block-start: 1.25rem !important;
}

.codxn-home-hours-appointment :is(.codxn-visit-information, .codxn-calendar-column) {
	min-inline-size: 0;
}

.codxn-home-hours-appointment .codxn-visit-information {
	display: grid;
	align-content: stretch;
	gap: 0.75rem;
}

.codxn-home-hours-appointment :is(.codxn-hours-panel, .codxn-visit-guidance) {
	margin: 0 !important;
}

.codxn-home-hours-appointment :is(.codxn-hours-panel, .codxn-visit-guidance, .codxn-calendar-panel) {
	box-sizing: border-box;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--brand-text) 10%, var(--wp--preset--color--border));
	border-radius: 1.25rem;
	box-shadow: none;
}

.codxn-home-hours-appointment .codxn-hours-panel {
	padding: 1rem !important;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 30%, var(--wp--preset--color--surface));
}

.codxn-home-hours-appointment :is(.codxn-hours-panel, .codxn-visit-guidance) > h3 {
	margin-block: 0;
	font-size: 1.05rem !important;
	line-height: 1.4;
}

.codxn-home-hours-appointment .codxn-hours-panel .codxn-info-panel {
	margin: 0;
	padding: 0.7rem 0;
	border: 0;
	border-block-start: 1px solid color-mix(in srgb, var(--wp--preset--color--brand-text) 9%, var(--wp--preset--color--border));
	border-radius: 0;
	background: transparent;
}

.codxn-home-hours-appointment .codxn-hours-panel .codxn-info-panel:first-of-type {
	margin-block-start: 0.65rem;
}

.codxn-home-hours-appointment .codxn-hours-panel .codxn-info-panel :is(p:first-child, p:last-child) {
	margin-block: 0;
}

.codxn-home-hours-appointment .codxn-hours-panel .codxn-info-panel p:first-child {
	font-size: 0.9rem;
	line-height: 1.45;
}

.codxn-home-hours-appointment .codxn-hours-panel .codxn-info-panel p:last-child {
	margin-block-start: 0.25rem;
	font-size: 0.88rem;
	line-height: 1.65;
}

.codxn-home-hours-appointment .codxn-visit-guidance {
	align-self: stretch;
	padding: 1rem !important;
	background: color-mix(in srgb, var(--wp--preset--color--medical-teal) 5%, var(--wp--preset--color--surface));
}

.codxn-home-hours-appointment .codxn-visit-guidance .codxn-check-list {
	margin-block: 0.65rem 0;
	padding-inline-start: 1.15rem;
	font-size: 0.88rem;
	line-height: 1.65;
}

.codxn-home-hours-appointment .codxn-calendar-panel {
	position: relative;
	isolation: isolate;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-block-size: 100%;
	overflow: hidden;
	padding: 1rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 96%, var(--wp--preset--color--accent-soft));
}

.codxn-home-hours-appointment .codxn-calendar-panel::before {
	content: none;
}

.codxn-home-hours-appointment :is(
	.codxn-calendar-panel__header,
	.codxn-calendar-panel__title,
	.codxn-calendar-panel__month
) {
	display: flex;
	align-items: center;
}

.codxn-home-hours-appointment .codxn-calendar-panel__header {
	justify-content: space-between;
	gap: 0.65rem;
	padding-block-end: 0.8rem;
	border-block-end: 1px solid color-mix(in srgb, var(--wp--preset--color--brand-text) 9%, var(--wp--preset--color--border));
}

.codxn-home-hours-appointment .codxn-calendar-panel__title {
	gap: 0.55rem;
	color: var(--wp--preset--color--brand-text);
	font-size: 0.92rem;
	font-weight: 700;
}

.codxn-home-hours-appointment .codxn-calendar-panel__icon {
	position: relative;
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	inline-size: 3rem;
	block-size: 3rem;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 16%, var(--wp--preset--color--border));
	border-radius: 0.9rem;
	background: color-mix(in srgb, var(--wp--preset--color--medical-teal) 7%, var(--wp--preset--color--surface));
}

.codxn-home-hours-appointment .codxn-calendar-panel__icon::before {
	content: "";
	display: block;
	inline-size: 1.875rem;
	block-size: 1.875rem;
	background: var(--wp--preset--color--brand-text);
	-webkit-mask: no-repeat center / contain url("assets/icons/calendar.svg");
	mask: no-repeat center / contain url("assets/icons/calendar.svg");
}

.codxn-home-hours-appointment .codxn-calendar-panel__month {
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 0.4rem;
	color: var(--wp--preset--color--text-muted);
	direction: ltr;
	font-variant-numeric: tabular-nums;
	unicode-bidi: isolate;
}

.codxn-home-hours-appointment .codxn-calendar-panel__month strong {
	color: var(--wp--preset--color--foreground);
	font-size: clamp(1.05rem, 1.5vw, 1.25rem);
}

.codxn-home-hours-appointment :is(.codxn-calendar-panel__weekdays, .codxn-calendar-panel__days) {
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	direction: inherit;
}

.codxn-home-hours-appointment .codxn-calendar-panel__weekdays {
	gap: 0.2rem;
	padding-block: 0.75rem 0.5rem;
	color: var(--wp--preset--color--text-muted);
	font-size: clamp(0.68rem, 0.85vw, 0.78rem);
	font-weight: 700;
	text-align: center;
}

.codxn-home-hours-appointment .codxn-calendar-panel__weekday {
	min-inline-size: 0;
}

.codxn-home-hours-appointment .codxn-calendar-panel__weekday.is-today-weekday {
	color: var(--wp--custom--semantic--accent-text);
	font-weight: 800;
}

.codxn-home-hours-appointment .codxn-calendar-panel__weekday.is-today-weekday::after {
	content: "";
	display: block;
	inline-size: 1.2rem;
	block-size: 2px;
	margin: 0.28rem auto 0;
	border-radius: 999px;
	background: var(--wp--preset--color--medical-teal);
}

.codxn-home-hours-appointment .codxn-calendar-panel__days {
	gap: 0.22rem;
}

.codxn-home-hours-appointment .codxn-calendar-panel__day {
	position: relative;
	display: grid;
	place-items: center;
	min-inline-size: 0;
	min-block-size: clamp(2.15rem, 2.6vw, 2.6rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--border) 54%, transparent);
	border-radius: 0.65rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 76%, transparent);
	color: var(--wp--preset--color--foreground);
	font-size: clamp(0.76rem, 0.9vw, 0.88rem);
	font-variant-numeric: tabular-nums;
	font-weight: 600;
	cursor: default;
}

.codxn-home-hours-appointment .codxn-calendar-panel__day.is-outside-month {
	border-color: transparent;
	background: transparent;
}

.codxn-home-hours-appointment .codxn-calendar-panel__day.is-today {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 58%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--medical-teal) 12%, var(--wp--preset--color--surface));
	color: var(--wp--preset--color--brand-text);
	box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--wp--preset--color--medical-teal) 16%, transparent);
}

.codxn-home-hours-appointment .codxn-calendar-panel__day.is-today::after {
	content: "";
	position: absolute;
	inset-block-end: 0.4rem;
	inline-size: 0.36rem;
	block-size: 0.36rem;
	border-radius: 50%;
	background: var(--wp--preset--color--medical-teal);
	box-shadow: 0 0 0 0.22rem color-mix(in srgb, var(--wp--preset--color--medical-teal) 12%, transparent);
}

.codxn-home-hours-appointment .codxn-calendar-panel__status {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: center;
	gap: 0.2rem 0.45rem;
	max-inline-size: 100%;
	margin: 0.85rem auto 0;
	padding: 0.65rem 0.75rem;
	border-radius: 0.8rem;
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 38%, var(--wp--preset--color--surface));
	color: var(--wp--preset--color--text-muted);
	font-size: 0.82rem;
	line-height: 1.55;
	text-align: center;
	word-break: normal;
	overflow-wrap: normal;
	-webkit-hyphens: none;
	hyphens: none;
}

.codxn-home-hours-appointment .codxn-calendar-panel__status strong {
	font-weight: 800;
}

.codxn-home-hours-appointment .codxn-calendar-panel__status.is-open strong {
	color: var(--wp--preset--color--success);
}

.codxn-home-hours-appointment :is(
	.codxn-calendar-panel__status.is-closed,
	.codxn-calendar-panel__status.is-closed-day
) strong {
	color: var(--wp--preset--color--foreground);
}

.codxn-home-hours-appointment .codxn-calendar-panel__status bdi {
	font-variant-numeric: tabular-nums;
	unicode-bidi: isolate;
}

html[data-codxn-color-scheme="dark"] .codxn-home-hours-appointment :is(
	.codxn-hours-panel,
	.codxn-visit-guidance,
	.codxn-calendar-panel
) {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 17%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--medical-navy) 72%, var(--wp--preset--color--surface));
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) .codxn-home-hours-appointment :is(
		.codxn-hours-panel,
		.codxn-visit-guidance,
		.codxn-calendar-panel
	) {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 17%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--medical-navy) 72%, var(--wp--preset--color--surface));
	}
}

@media (max-width: 700px) {
	.codxn-home-hours-appointment .codxn-visit-layout {
		grid-template-columns: minmax(0, 1fr);
		gap: 0.75rem !important;
	}

	.codxn-home-hours-appointment :is(
		.codxn-visit-intro,
		.codxn-hours-panel,
		.codxn-visit-guidance
	) {
		text-align: start;
	}

	.codxn-home-hours-appointment .codxn-visit-guidance .codxn-check-list {
		margin-inline: 0;
	}

	.codxn-home-hours-appointment .codxn-calendar-panel {
		min-block-size: 0;
		padding: 0.9rem;
	}

	.codxn-home-hours-appointment .codxn-calendar-panel__icon {
		inline-size: 2.75rem;
		block-size: 2.75rem;
	}

	.codxn-home-hours-appointment .codxn-calendar-panel__icon::before {
		inline-size: 1.75rem;
		block-size: 1.75rem;
	}

	.codxn-home-hours-appointment .codxn-calendar-panel__day {
		min-block-size: clamp(2.15rem, 10vw, 2.75rem);
	}
}

@media (max-width: 600px) {
	.codxn-home-hours-appointment .codxn-calendar-panel__header {
		align-items: flex-start;
	}

	.codxn-home-hours-appointment .codxn-calendar-panel__month {
		flex-direction: column;
		align-items: flex-end;
		gap: 0.05rem;
	}
}

/* -----------------------------------------------------------------------
   Canonical clinic location/contact component
   Owns all visual, responsive, dark-mode, and accessibility presentation.
   The validated profile data and map embed remain pattern-owned.
----------------------------------------------------------------------- */
.codxn-home-contact-location {
	position: relative;
	isolation: isolate;
	overflow: clip;
	padding-block: clamp(4rem, 8vw, 7rem);
	padding-inline: clamp(1rem, 3vw, 2rem);
	background:
		radial-gradient(circle at 82% 20%, color-mix(in srgb, var(--wp--preset--color--medical-teal) 12%, transparent), transparent 30rem),
		linear-gradient(145deg, color-mix(in srgb, var(--wp--preset--color--surface) 96%, var(--wp--preset--color--accent-soft)), var(--wp--preset--color--background));
}

.codxn-home-contact-location::before {
	content: "";
	position: absolute;
	inset: clamp(1rem, 3vw, 3rem) 0 auto auto;
	z-index: -1;
	pointer-events: none;
	inline-size: clamp(12rem, 26vw, 24rem);
	block-size: clamp(12rem, 26vw, 24rem);
	border-radius: 50%;
	background: radial-gradient(circle, color-mix(in srgb, var(--wp--preset--color--accent-soft) 48%, transparent), transparent 70%);
	opacity: 0.62;
}

.codxn-home-contact-location .codxn-location__card {
	inline-size: min(100%, var(--codxn-home-media-width, 94rem));
	max-inline-size: var(--codxn-home-media-width, 94rem);
	margin-inline: auto;
	padding: clamp(1.25rem, 2.5vw, 2.5rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 20%, var(--wp--preset--color--border));
	border-radius: 1.625rem;
	background: color-mix(in srgb, var(--wp--preset--color--background) 96%, var(--wp--preset--color--accent-soft));
	box-shadow: 0 1.35rem 3.75rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 12%, transparent);
}

.codxn-home-contact-location .codxn-location__grid.wp-block-columns {
	display: grid;
	grid-template-columns: minmax(20rem, 0.76fr) minmax(0, 1.24fr);
	inline-size: 100%;
	max-inline-size: none;
	align-items: stretch;
	gap: clamp(1.25rem, 2.5vw, 2.5rem);
	margin: 0;
}

.codxn-home-contact-location.codxn-location--without-map .codxn-location__grid.wp-block-columns {
	grid-template-columns: minmax(0, 48rem);
	justify-content: center;
}

.codxn-home-contact-location .codxn-location__details {
	justify-content: center;
	min-inline-size: 0;
	padding: clamp(0.5rem, 1.25vw, 1.15rem);
	row-gap: clamp(0.75rem, 1.25vw, 1.1rem);
}

.codxn-home-contact-location .codxn-location__details > .wp-block-heading {
	max-inline-size: 16ch;
	margin-block: 0;
	font-size: clamp(2rem, 3.1vw, 3.25rem) !important;
	line-height: 1.18;
	text-wrap: balance;
}

.codxn-home-contact-location .codxn-location__lead {
	max-inline-size: 43ch;
	margin-block: 0;
	color: var(--wp--preset--color--text-muted);
	line-height: 1.75;
}

.codxn-home-contact-location .codxn-location__address {
	margin: 0;
	padding: 0.9rem 1rem;
	border: 0;
	border-inline-start: 3px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 78%, var(--wp--preset--color--brand-text));
	border-radius: var(--wp--custom--radius--md);
	background: color-mix(in srgb, var(--wp--preset--color--accent-soft) 42%, var(--wp--preset--color--surface));
}

.codxn-location__contacts {
	inline-size: 100%;
	margin: 0 !important;
	padding: 0.2rem 1rem;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 13%, var(--wp--preset--color--border));
	border-radius: var(--wp--custom--radius--md);
	background: color-mix(in srgb, var(--wp--preset--color--surface) 92%, transparent);
}

.codxn-location__contact-item {
	inline-size: 100%;
	margin: 0 !important;
	padding-block: 0.7rem;
}

.codxn-location__contact-item + .codxn-location__contact-item {
	border-block-start: 1px solid color-mix(in srgb, var(--wp--preset--color--brand-text) 12%, var(--wp--preset--color--border));
}

.codxn-location__contact-label,
.codxn-location__contact-value {
	margin-block: 0;
}

.codxn-location__contact-label {
	color: var(--wp--preset--color--text-muted);
	font-weight: 650;
	letter-spacing: 0.01em;
}

.codxn-location__contact-value {
	margin-block-start: 0.2rem;
	font-weight: 650;
	overflow-wrap: anywhere;
}

.codxn-location__contact-value a {
	display: inline-flex;
	align-items: center;
	min-block-size: 2.5rem;
	color: var(--wp--preset--color--brand-text);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.22em;
}

.codxn-location__contact-actions,
.codxn-location__map-actions {
	margin: 0;
}

.codxn-home-contact-location :is(.codxn-location__contact-actions, .codxn-location__map-actions) .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-block-size: 2.75rem;
}

.codxn-location__map-column {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 0.9rem;
	inline-size: 100%;
	min-inline-size: 0;
}

.codxn-home-contact-location .codxn-location__map-column > .wp-block-shortcode {
	display: block;
	inline-size: 100%;
	min-inline-size: 0;
	margin: 0;
}

.codxn-home-contact-location .codxn-location__map {
	position: relative;
	inline-size: 100%;
	max-inline-size: none;
	block-size: clamp(34rem, 44vw, 40rem);
	min-block-size: 34rem;
	overflow: hidden;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 22%, var(--wp--preset--color--border));
	border-radius: 1.5rem;
	background: var(--wp--preset--color--surface);
	box-shadow: 0 1rem 2.75rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 14%, transparent);
}

.codxn-home-contact-location .codxn-location__map iframe {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	border: 0;
}

.codxn-location__map-actions {
	justify-content: center;
}

html[data-codxn-color-scheme="dark"] .codxn-home-contact-location {
	background:
		radial-gradient(circle at 82% 20%, color-mix(in srgb, var(--wp--preset--color--medical-teal) 10%, transparent), transparent 30rem),
		linear-gradient(145deg, color-mix(in srgb, var(--wp--preset--color--surface) 92%, var(--wp--preset--color--medical-navy)), var(--wp--preset--color--background));
}

html[data-codxn-color-scheme="dark"] .codxn-home-contact-location .codxn-location__card {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 31%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--surface) 94%, var(--wp--preset--color--medical-navy));
	box-shadow: 0 1.5rem 4rem color-mix(in srgb, var(--wp--preset--color--black) 30%, transparent);
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) .codxn-home-contact-location {
		background:
			radial-gradient(circle at 82% 20%, color-mix(in srgb, var(--wp--preset--color--medical-teal) 10%, transparent), transparent 30rem),
			linear-gradient(145deg, color-mix(in srgb, var(--wp--preset--color--surface) 92%, var(--wp--preset--color--medical-navy)), var(--wp--preset--color--background));
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-home-contact-location .codxn-location__card {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 31%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--surface) 94%, var(--wp--preset--color--medical-navy));
		box-shadow: 0 1.5rem 4rem color-mix(in srgb, var(--wp--preset--color--black) 30%, transparent);
	}
}

@media (max-width: 900px) {
	.codxn-home-contact-location .codxn-location__grid.wp-block-columns {
		grid-template-columns: minmax(18rem, 0.9fr) minmax(0, 1.1fr);
		gap: 1.25rem;
	}

	.codxn-home-contact-location .codxn-location__card {
		padding: 1.25rem;
	}

	.codxn-home-contact-location .codxn-location__map {
		block-size: clamp(28rem, 55vw, 33rem);
		min-block-size: 28rem;
	}
}

@media (max-width: 700px) {
	.codxn-home-contact-location.codxn-location {
		padding-block: clamp(3rem, 12vw, 4.5rem);
		padding-inline: 0.75rem;
	}

	.codxn-home-contact-location .codxn-location__card {
		inline-size: 100%;
		padding: clamp(1rem, 4vw, 1.35rem);
		border-radius: 1.5rem;
	}

	.codxn-home-contact-location .codxn-location__grid.wp-block-columns {
		grid-template-columns: minmax(0, 1fr);
		gap: 1.5rem;
	}

	.codxn-home-contact-location .codxn-location__details {
		align-items: center;
		padding-block: 0;
		text-align: center;
	}

	.codxn-home-contact-location .codxn-location__details > :is(.codxn-eyebrow, .wp-block-heading, .codxn-location__lead) {
		margin-inline: auto;
		text-align: center;
	}

	.codxn-home-contact-location .codxn-location__address {
		inline-size: 100%;
		max-inline-size: 34rem;
		margin-inline: auto;
		border-inline-start: 0;
		border-block-start: 3px solid var(--wp--preset--color--medical-teal);
		text-align: center;
	}

	.codxn-home-contact-location .codxn-location__address > *,
	.codxn-location__contact-item > * {
		margin-inline: auto;
		text-align: center;
	}

	.codxn-location__contacts,
	.codxn-location__contact-item {
		inline-size: 100%;
		max-inline-size: 34rem;
		margin-inline: auto;
		text-align: center;
	}

	.codxn-location__label,
	.codxn-location__contact-label {
		justify-content: center;
	}

	.codxn-location__contact-value a {
		justify-content: center;
		max-inline-size: 100%;
		text-align: center;
	}

	.codxn-location__contact-actions {
		justify-content: center;
		margin-inline: auto;
	}

	.codxn-location__map-actions {
		justify-content: center;
		margin-inline: auto;
	}

	.codxn-location__map-column {
		inline-size: 100%;
		min-inline-size: 0;
	}

	.codxn-home-contact-location .codxn-location__map {
		inline-size: 100%;
		block-size: clamp(21rem, 82vw, 28rem);
		min-block-size: 21rem;
		aspect-ratio: auto;
		border-radius: 1.25rem;
	}
}

/* -----------------------------------------------------------------------
   Appointment — final page composition
   Scoped to the Appointment template. Shared working-hours, location, and
   Client Core request contracts remain untouched outside this composition.
------------------------------------------------------------------------ */

.codxn-unified-appointment-page .codxn-unified-hero__layout {
	grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr);
	gap: 0 !important;
	padding: 0;
	background: var(--wp--preset--color--surface);
}

.codxn-unified-appointment-page .codxn-unified-hero__content {
	box-sizing: border-box;
	padding: clamp(2rem, 5vw, 4.5rem);
}

.codxn-unified-appointment-page .codxn-appointment-hero__media {
	min-block-size: 100%;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.codxn-unified-appointment-page .codxn-appointment-hero__media figure {
	block-size: 100%;
	min-block-size: clamp(24rem, 38vw, 34rem);
	border-radius: 0;
}

.codxn-unified-appointment-page .codxn-appointment-hero__media img {
	block-size: 100%;
	max-block-size: none;
	object-fit: cover;
	object-position: center;
}

.codxn-unified-appointment-page .codxn-appointment-hero__media .codxn-unified-hero__signal {
	position: absolute;
	inset-inline: clamp(1rem, 3vw, 1.5rem) auto;
	inset-block-end: clamp(1rem, 3vw, 1.5rem);
	inline-size: min(calc(100% - 2rem), 25rem);
	margin: 0;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 88%, transparent);
	backdrop-filter: blur(10px);
}

.codxn-unified-appointment-page .codxn-unified-request {
	padding-block: clamp(3.5rem, 7vw, 5.5rem) !important;
	background-image: none !important;
}

.codxn-unified-appointment-page .codxn-unified-request__shell {
	max-inline-size: 78rem;
}

.codxn-unified-appointment-page .codxn-unified-request .codxn-whatsapp-request {
	border-block-start: 4px solid var(--wp--preset--color--medical-teal);
	box-shadow: none;
}

.codxn-unified-appointment-page .codxn-unified-request .codxn-whatsapp-request__intro {
	max-inline-size: 44rem;
	margin-inline: auto;
	text-align: center;
}

.codxn-unified-appointment-page .codxn-unified-request .codxn-whatsapp-request__intro > * {
	margin-inline: auto;
}

.codxn-unified-appointment-page .codxn-unified-request .codxn-whatsapp-request__intro h2 {
	max-inline-size: 20ch;
}

.codxn-unified-appointment-page .codxn-unified-request .codxn-whatsapp-request__form {
	max-inline-size: 62rem;
	padding-block-start: clamp(0.5rem, 2vw, 1rem);
}

.codxn-unified-appointment-page .codxn-unified-request .codxn-whatsapp-request__grid {
	padding-block-end: 1.25rem;
	border-block-end: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 16%, var(--wp--preset--color--border));
}

.codxn-unified-appointment-page .codxn-unified-request .codxn-whatsapp-request__conditional {
	padding-inline-start: clamp(0.75rem, 2vw, 1.25rem);
	border-inline-start: 2px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 28%, var(--wp--preset--color--border));
}

.codxn-unified-appointment-page .codxn-appointment-reassurance {
	padding-inline: clamp(1rem, 3vw, 2rem) !important;
}

.codxn-unified-appointment-page .codxn-appointment-reassurance__inner {
	inline-size: min(100%, 76rem);
	margin-inline: auto;
}

.codxn-unified-appointment-page .codxn-appointment-reassurance__inner > :is(.codxn-eyebrow, h2) {
	margin-inline: auto;
}

.codxn-unified-appointment-page .codxn-appointment-reassurance__inner > h2 {
	max-inline-size: 23ch;
	margin-block: 0.7rem 0;
	text-wrap: balance;
}

.codxn-unified-appointment-page .codxn-appointment-reassurance__items {
	margin-block: clamp(1.5rem, 3vw, 2.5rem) 0;
	gap: 0;
}

.codxn-unified-appointment-page .codxn-appointment-reassurance__items > .wp-block-column {
	min-inline-size: 0;
	padding-inline: clamp(1rem, 2.5vw, 2rem);
	border-inline-start: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 18%, var(--wp--preset--color--border));
}

.codxn-unified-appointment-page .codxn-appointment-reassurance__items > .wp-block-column:first-child {
	border-inline-start: 0;
}

.codxn-unified-appointment-page .codxn-appointment-reassurance__items :is(h3, p) {
	margin-block: 0;
}

.codxn-unified-appointment-page .codxn-appointment-reassurance__items h3 {
	margin-block-start: 0.45rem;
	font-size: 1.1rem !important;
}

.codxn-unified-appointment-page .codxn-appointment-reassurance__items p {
	margin-block-start: 0.45rem;
	color: var(--wp--preset--color--text-muted);
	font-size: 0.94rem;
	line-height: 1.7;
}

.codxn-unified-appointment-page .codxn-appointment-reassurance__icon {
	display: grid;
	place-items: center;
	inline-size: 2.875rem;
	block-size: 2.875rem;
	margin-block-end: 0.75rem;
	border-radius: 0.875rem;
	background: color-mix(in srgb, var(--wp--preset--color--medical-teal) 13%, var(--wp--preset--color--surface));
	color: var(--wp--preset--color--brand-text);
}

.codxn-unified-appointment-page .codxn-appointment-reassurance__icon :where(.codxn-icon, svg) {
	inline-size: 1.625rem;
	block-size: 1.625rem;
}

.codxn-unified-appointment-page .codxn-unified-hours {
	padding-block: clamp(3rem, 6vw, 4.75rem);
	background: color-mix(in srgb, var(--wp--preset--color--background) 92%, var(--wp--preset--color--accent-soft));
}

.codxn-unified-appointment-page .codxn-appointment-visit-intro,
.codxn-unified-appointment-page .codxn-appointment-location-intro {
	max-inline-size: 46rem;
	margin-inline: auto;
}

.codxn-unified-appointment-page .codxn-appointment-visit-intro > * {
	margin-inline: 0;
}

.codxn-unified-appointment-page .codxn-appointment-visit-intro h2 {
	margin-block: 0.7rem;
	text-wrap: balance;
}

.codxn-unified-appointment-page .codxn-appointment-visit-intro > p:last-child,
.codxn-unified-appointment-page .codxn-appointment-location-intro > p:last-child {
	color: var(--wp--preset--color--text-muted);
	line-height: 1.75;
}

.codxn-unified-appointment-page .codxn-unified-hours .codxn-home-hours-appointment {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	inline-size: min(100%, 88rem) !important;
	max-inline-size: 88rem !important;
	margin: clamp(1.5rem, 3vw, 2.5rem) auto 0 !important;
}

.codxn-unified-appointment-page .codxn-unified-hours .codxn-home-hours {
	inline-size: 100% !important;
	max-inline-size: none !important;
	margin: 0 !important;
}

.codxn-unified-appointment-page .codxn-unified-hours .codxn-visit-layout {
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
}

.codxn-unified-appointment-page .codxn-unified-hours .codxn-calendar-panel::before {
	content: none;
	background-image: none;
}

.codxn-unified-appointment-page .codxn-unified-location {
	padding-block-start: clamp(2.5rem, 5vw, 4rem);
	background-color: var(--wp--preset--color--background) !important;
	background-image: none !important;
}

.codxn-unified-appointment-page .codxn-appointment-location-intro {
	padding-inline: clamp(1rem, 3vw, 2rem);
	padding-block-end: 0.5rem;
}

.codxn-unified-appointment-page .codxn-appointment-location-intro > * {
	margin-inline: 0;
}

.codxn-unified-appointment-page .codxn-unified-location .codxn-home-contact-location {
	padding-block: clamp(2rem, 5vw, 4rem);
	background: none;
}

.codxn-unified-appointment-page .codxn-unified-location .codxn-home-contact-location::before {
	display: none;
}

.codxn-unified-appointment-page .codxn-unified-location .codxn-location__card {
	box-shadow: none;
}

.codxn-unified-appointment-page .codxn-unified-location .codxn-location__map {
	block-size: clamp(22rem, 34vw, 30rem);
	min-block-size: 22rem;
	box-shadow: none;
}

.codxn-unified-appointment-page .codxn-unified-final-cta {
	padding-inline: clamp(1rem, 3vw, 2rem) !important;
	background-color: var(--wp--preset--color--background) !important;
	background-image: none !important;
	color: var(--wp--preset--color--foreground) !important;
}

.codxn-unified-appointment-page .codxn-unified-final-cta::before,
.codxn-unified-appointment-page .codxn-unified-final-cta::after {
	content: none !important;
	background-image: none !important;
}

.codxn-unified-appointment-page .codxn-unified-final-cta__inner {
	box-sizing: border-box;
	inline-size: min(100%, 78rem);
	max-inline-size: 78rem !important;
	margin-inline: auto;
	padding: clamp(2rem, 5vw, 4rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 28%, transparent);
	border-radius: 1.75rem;
	background: color-mix(in srgb, var(--wp--preset--color--medical-navy) 94%, var(--wp--preset--color--brand-fill));
	box-shadow: none;
	color: var(--wp--preset--color--white);
	text-align: center;
}

.codxn-unified-appointment-page .codxn-unified-final-cta__inner > * {
	margin-inline: auto;
}

.codxn-unified-appointment-page .codxn-unified-final-cta__inner > .codxn-eyebrow {
	color: var(--wp--preset--color--accent-soft) !important;
}

.codxn-unified-appointment-page .codxn-unified-final-cta__inner > h2 {
	max-inline-size: 21ch;
	margin-block: 0;
	background: none !important;
	color: var(--wp--preset--color--white) !important;
	-webkit-text-fill-color: currentColor !important;
	line-height: 1.15;
	text-wrap: balance;
}

.codxn-unified-appointment-page .codxn-unified-final-cta__inner > p:not(.codxn-eyebrow) {
	max-inline-size: 46rem;
	margin-block: 1rem 0;
	color: color-mix(in srgb, var(--wp--preset--color--white) 82%, transparent) !important;
	line-height: 1.8;
}

.codxn-unified-appointment-page .codxn-unified-final-cta .codxn-unified-actions {
	justify-content: center;
	margin-block-start: clamp(1.5rem, 3vw, 2rem);
}

html[data-codxn-color-scheme="dark"] .codxn-unified-appointment-page :is(.codxn-appointment-reassurance, .codxn-unified-hours) {
	background: color-mix(in srgb, var(--wp--preset--color--surface) 94%, var(--wp--preset--color--medical-navy));
}

html[data-codxn-color-scheme="dark"] .codxn-unified-appointment-page .codxn-unified-final-cta__inner {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 28%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--medical-navy) 88%, var(--wp--preset--color--surface));
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) .codxn-unified-appointment-page :is(.codxn-appointment-reassurance, .codxn-unified-hours) {
		background: color-mix(in srgb, var(--wp--preset--color--surface) 94%, var(--wp--preset--color--medical-navy));
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-unified-appointment-page .codxn-unified-final-cta__inner {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 28%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--medical-navy) 88%, var(--wp--preset--color--surface));
	}
}

@media (max-width: 900px) {
	.codxn-unified-appointment-page .codxn-unified-hero__layout,
	.codxn-unified-appointment-page .codxn-unified-hours .codxn-visit-layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.codxn-unified-appointment-page .codxn-appointment-hero__media figure {
		min-block-size: clamp(20rem, 58vw, 28rem);
	}
}

@media (max-width: 700px) {
	.codxn-unified-appointment-page .codxn-appointment-reassurance__items {
		gap: 1.25rem;
	}

	.codxn-unified-appointment-page .codxn-appointment-reassurance__items > .wp-block-column {
		padding-inline: 0;
		padding-block-start: 1.25rem;
		border-inline-start: 0;
		border-block-start: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 18%, var(--wp--preset--color--border));
	}

	.codxn-unified-appointment-page .codxn-appointment-reassurance__items > .wp-block-column:first-child {
		padding-block-start: 0;
		border-block-start: 0;
	}

	.codxn-unified-appointment-page .codxn-unified-final-cta {
		padding-inline: var(--wp--preset--spacing--sm) !important;
	}

	.codxn-unified-appointment-page .codxn-unified-final-cta__inner {
		padding: 1.5rem 1.25rem;
		border-radius: 1.5rem;
	}

	.codxn-unified-appointment-page .codxn-unified-final-cta .codxn-unified-actions {
		inline-size: 100%;
		justify-content: center;
	}

	.codxn-unified-appointment-page .codxn-unified-final-cta .codxn-unified-actions .wp-block-button,
	.codxn-unified-appointment-page .codxn-unified-final-cta .codxn-unified-actions .wp-block-button__link {
		inline-size: fit-content;
		max-inline-size: 100%;
	}
}

@media (max-width: 600px) {
	.codxn-unified-appointment-page .codxn-unified-hero__content {
		padding: 1.5rem 1.25rem 0;
	}

	.codxn-unified-appointment-page .codxn-unified-hero__lead {
		inline-size: min(100%, 20rem);
		margin-inline: auto;
	}

	.codxn-unified-appointment-page .codxn-unified-final-cta__inner > h2,
	.codxn-unified-appointment-page .codxn-appointment-visit-intro h2 {
		font-size: clamp(2rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
	}

	.codxn-unified-appointment-page .codxn-appointment-actions {
		inline-size: fit-content;
		max-inline-size: 100%;
		margin-inline: auto;
	}

	.codxn-unified-appointment-page .codxn-hero-media-frame-column {
		margin-block-start: 1.5rem;
	}

	.codxn-unified-appointment-page .codxn-appointment-hero__media .codxn-unified-hero__signal {
		position: relative;
		inset: auto;
		inline-size: 100%;
		margin-block-start: 0.75rem;
		border-radius: 0.875rem;
		backdrop-filter: none;
	}

	.codxn-unified-appointment-page .codxn-unified-request .codxn-whatsapp-request__conditional {
		padding-inline-start: 0;
		padding-block-start: 1rem;
		border-inline-start: 0;
		border-block-start: 2px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 28%, var(--wp--preset--color--border));
	}

	.codxn-unified-appointment-page .codxn-unified-location .codxn-location__map {
		block-size: clamp(20rem, 90vw, 24rem);
		min-block-size: 20rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.codxn-unified-appointment-page .codxn-appointment-hero__media,
	.codxn-unified-appointment-page .codxn-unified-request .codxn-whatsapp-request {
		transition: none;
	}
}

@media (forced-colors: active) {
	.codxn-unified-appointment-page :is(
		.codxn-appointment-reassurance__items > .wp-block-column,
		.codxn-appointment-visit-intro,
		.codxn-appointment-location-intro,
		.codxn-unified-final-cta__inner
	) {
		border-color: CanvasText;
		background: Canvas;
		color: CanvasText;
		box-shadow: none;
	}

	.codxn-unified-appointment-page .codxn-unified-final-cta__inner :is(.codxn-eyebrow, h2, p, a) {
		color: CanvasText !important;
		-webkit-text-fill-color: currentColor !important;
	}
}


/* Bundled doctor fallback image remains intentional when no media exists. */
img[src*="doctor-placeholder"] {
	box-sizing: border-box;
	padding: 10%;
	border-radius: 1.25rem;
	background: radial-gradient(
		circle at 32% 28%,
		color-mix(in srgb, var(--wp--preset--color--accent-soft) 75%, var(--wp--preset--color--surface)) 0%,
		color-mix(in srgb, var(--wp--preset--color--accent-soft) 30%, var(--wp--preset--color--surface)) 100%
	);
}

/* --------------------------------------------------------------------------
 * CODXN product foundation — normalized visual contracts
 * -------------------------------------------------------------------------- */
.codxn-hero-media-frame {
	position: relative;
	overflow: hidden;
	min-height: clamp(18rem, 32vw, 34rem);
	border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 20%, transparent);
	border-radius: 1.25rem;
	background: linear-gradient(145deg, color-mix(in srgb, var(--codxn-palette-soft) 68%, transparent), var(--codxn-palette-surface));
	box-shadow: var(--codxn-depth-3);
}

.codxn-hero-media-frame::before {
	content: "";
	position: absolute;
	inset: -30% -10% auto auto;
	inset-inline-start: 55%;
	block-size: 70%;
	aspect-ratio: 1;
	z-index: 0;
	pointer-events: none;
	background: radial-gradient(
		circle,
		color-mix(in srgb, var(--codxn-palette-accent) 32%, transparent) 0%,
		transparent 68%
	);
	filter: blur(2px);
}

.codxn-hero-media-frame > * {
	position: relative;
	z-index: 1;
}

.codxn-hero-media-frame :is(.wp-block-image, .wp-block-post-featured-image) { height: 100%; margin: 0; }
.codxn-hero-media-frame :is(img, svg) { display: block; width: 100%; height: 100%; min-height: inherit; object-fit: cover; }
.codxn-icon svg { display: block; width: 100%; height: 100%; }
.codxn-medical-background {
	--codxn-medical-line-opacity: 0.14;
	--codxn-medical-soft-glow-opacity: 0.72;
	position: relative;
	isolation: isolate;
	overflow: clip;
}

/* Approved v1.1.0 inline medical SVG backgrounds. The SVG files retain their
 * own geometry, icon distribution, and internal opacity; this layer only
 * establishes decorative stacking and connects semantic SVG variables to the
 * existing WordPress Theme palette. */
.codxn-medical-background--inline-svg {
	position: relative;
	isolation: isolate;
	overflow: clip;
}

.codxn-medical-background--inline-svg > .codxn-medical-background__asset {
	position: absolute;
	inset: 0;
	display: flex;
	z-index: 0;
	overflow: hidden;
	pointer-events: none;

	/* Gutenberg constrains direct children of constrained sections to the
	 * content width. This decorative, absolutely positioned layer alone must
	 * remain full-section so its preserved SVG canvas can use side gutters. */
	max-width: none;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.codxn-medical-background--inline-svg > .codxn-medical-background__asset > .codxn-medical-background__svg {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	max-inline-size: 100%;
	max-block-size: 100%;
	flex: 0 0 auto;
	object-fit: contain;
	pointer-events: none;

	/* !important is intentional: several approved SVGs define these fallback
	 * properties directly on their root element or through internal :root CSS. */
	--medical-primary: var(--wp--preset--color--primary) !important;
	--medical-accent: var(--wp--preset--color--accent) !important;
	--pattern-line: var(--wp--preset--color--border) !important;
	--pattern-node: var(--wp--preset--color--text-muted) !important;
	--pattern-accent: var(--wp--preset--color--accent) !important;
}

.codxn-medical-background__mobile-pattern {
	display: none;
}

/* Only the seven placement-marked secondary layers animate. Each profile
 * moves the complete approved SVG so no fragile path-level hooks are needed;
 * static instances of the same file remain outside these selectors. */
.codxn-medical-background__asset--animated {
	--codxn-medical-motion-duration: 10s;
	--codxn-medical-motion-x: 16px;
	--codxn-medical-motion-y: -12px;
	--codxn-medical-mobile-motion-duration: 12s;
	--codxn-medical-mobile-motion-x: 9px;
	--codxn-medical-mobile-motion-y: -7px;
}

.codxn-medical-background__asset--pattern-network { --codxn-medical-motion-duration: 10s; --codxn-medical-motion-x: 16px; --codxn-medical-motion-y: -12px; --codxn-medical-mobile-motion-duration: 12s; --codxn-medical-mobile-motion-x: 9px; --codxn-medical-mobile-motion-y: -7px; }
.codxn-medical-background__asset--illustration-corner-right { --codxn-medical-motion-duration: 10s; --codxn-medical-motion-x: 10px; --codxn-medical-motion-y: -16px; --codxn-medical-mobile-motion-duration: 12s; --codxn-medical-mobile-motion-x: 6px; --codxn-medical-mobile-motion-y: -9px; }
.codxn-medical-background__asset--hero-right { --codxn-medical-motion-duration: 11s; --codxn-medical-motion-x: 11px; --codxn-medical-motion-y: -15px; --codxn-medical-mobile-motion-duration: 13s; --codxn-medical-mobile-motion-x: 7px; --codxn-medical-mobile-motion-y: -8px; }
.codxn-medical-background__asset--simple-edges { --codxn-medical-motion-duration: 12s; --codxn-medical-motion-x: 9px; --codxn-medical-motion-y: -15px; --codxn-medical-mobile-motion-duration: 14s; --codxn-medical-mobile-motion-x: 6px; --codxn-medical-mobile-motion-y: -9px; }
.codxn-medical-background__asset--illustration-diagonal { --codxn-medical-motion-duration: 12s; --codxn-medical-motion-x: 16px; --codxn-medical-motion-y: -14px; --codxn-medical-mobile-motion-duration: 14s; --codxn-medical-mobile-motion-x: 9px; --codxn-medical-mobile-motion-y: -8px; }
.codxn-medical-background__asset--hero-corners { --codxn-medical-motion-duration: 11s; --codxn-medical-motion-x: 14px; --codxn-medical-motion-y: -12px; --codxn-medical-mobile-motion-duration: 13s; --codxn-medical-mobile-motion-x: 8px; --codxn-medical-mobile-motion-y: -7px; }
.codxn-medical-background__asset--hero-diagonal { --codxn-medical-motion-duration: 12s; --codxn-medical-motion-x: 16px; --codxn-medical-motion-y: -14px; --codxn-medical-mobile-motion-duration: 14s; --codxn-medical-mobile-motion-x: 9px; --codxn-medical-mobile-motion-y: -8px; }

.codxn-medical-background__asset--animated > .codxn-medical-background__svg {
	animation: codxn-medical-background-drift var(--codxn-medical-motion-duration) ease-in-out infinite alternate;
	transform-origin: center;
	will-change: transform;
}

@keyframes codxn-medical-background-drift {
	0%, 100% { transform: translate3d(0, 0, 0); }
	50% { transform: translate3d(var(--codxn-medical-motion-x), var(--codxn-medical-motion-y), 0); }
}

@media (max-width: 767px) {
	.codxn-medical-background__mobile-pattern--animated {
		animation: codxn-medical-background-mobile-drift var(--codxn-medical-mobile-motion-duration) ease-in-out infinite alternate;
		transform-origin: center;
		will-change: transform;
	}
}

@keyframes codxn-medical-background-mobile-drift {
	0%, 100% { transform: translate3d(0, 0, 0); }
	50% { transform: translate3d(var(--codxn-medical-mobile-motion-x), var(--codxn-medical-mobile-motion-y), 0); }
}

@media (prefers-reduced-motion: reduce) {
	.codxn-medical-background__asset--animated > .codxn-medical-background__svg,
	.codxn-medical-background__mobile-pattern--animated {
		animation: none;
		transform: none;
		will-change: auto;
	}
}

/* Keep each source canvas whole inside its section viewport. Family-specific
 * alignment respects the original composition without using crop/cover sizing. */
.codxn-medical-background__asset--family-hero {
	align-items: flex-start;
	justify-content: center;
}

.codxn-medical-background__asset--family-hero > .codxn-medical-background__svg {
	object-position: var(--codxn-medical-art-position, center top);
}

.codxn-medical-background__asset--family-wide {
	align-items: center;
	justify-content: center;
}

.codxn-medical-background__asset--family-wide > .codxn-medical-background__svg {
	object-position: var(--codxn-medical-art-position, center);
}

.codxn-medical-background__asset--family-simple {
	align-items: center;
	justify-content: center;
}

.codxn-medical-background__asset--family-simple > .codxn-medical-background__svg {
	object-position: var(--codxn-medical-art-position, center);
}

/* Approved open-surface placement profiles. Each asset remains a whole,
 * full-section layer; these align the un-cropped source canvas only. */
.codxn-about-principles > .codxn-medical-background__asset--simple-asymmetric {
	--codxn-medical-art-position: center top;
}

.codxn-services-guidance > .codxn-medical-background__asset--scatter-pattern,
.codxn-unified-appointment-page .codxn-appointment-reassurance > .codxn-medical-background__asset--pattern-icons-network {
	--codxn-medical-art-position: center bottom;
}

.codxn-faq-next-step > .codxn-medical-background__asset--illustration-two-corners {
	--codxn-medical-art-position: center;
}

/* On narrow screens, tall decorated sections use complete, repeated copies
 * of the approved scatter-pattern source. The source canvas is never cropped
 * or stretched; repeat placement is measured from each target's real height. */
@media (max-width: 767px) {
	.codxn-medical-background--inline-svg > .codxn-medical-background__asset--has-mobile-pattern > .codxn-medical-background__svg {
		display: none;
	}

	.codxn-medical-background__asset--has-mobile-pattern > .codxn-medical-background__mobile-pattern {
		display: block;
		position: absolute;
		inset: 0;
		overflow: hidden;
	}

	.codxn-medical-background__mobile-repeat {
		position: absolute;
		inset-inline: 0;
		top: var(--codxn-medical-repeat-position);
		transform: translateY(var(--codxn-medical-repeat-translate));
	}

	.codxn-medical-background__mobile-repeat > .codxn-medical-background__svg {
		display: block;
		inline-size: 100%;
		block-size: auto;
		max-inline-size: none;
		max-block-size: none;
		pointer-events: none;
		--medical-primary: var(--wp--preset--color--primary) !important;
		--medical-accent: var(--wp--preset--color--accent) !important;
		--pattern-line: var(--wp--preset--color--border) !important;
		--pattern-node: var(--wp--preset--color--text-muted) !important;
		--pattern-accent: var(--wp--preset--color--accent) !important;
	}
}


.codxn-medical-background--inline-svg > :not(.codxn-medical-background__asset) {
	position: relative;
	z-index: 1;
}

/* Supersede the legacy pseudo decoration only on sections that now receive an
 * approved inline SVG. Other v1.0.0 medical-background treatments stay live. */
.codxn-medical-background.codxn-medical-background--inline-svg::before,
.codxn-medical-background.codxn-medical-background--inline-svg::after,
.codxn-home-patient-journey.codxn-surface-patient-journey.codxn-medical-background--inline-svg::after {
	content: none !important;
}

.codxn-medical-background::before,
.codxn-medical-background::after,
.codxn-home-services.codxn-surface-clinical::after,
.codxn-home-patient-journey.codxn-surface-patient-journey::after {
	content: "";
	position: absolute;
	pointer-events: none;
	z-index: 0;
}

.codxn-medical-background > *,
.codxn-home-services.codxn-surface-clinical > *,
.codxn-home-patient-journey.codxn-surface-patient-journey > * {
	position: relative;
	z-index: 1;
}

/* The Patient Journey content rule above also matches the injected asset.
 * Reassert the established decorative-layer role so this animated SVG cannot
 * participate in layout or create any section height. */
.codxn-home-patient-journey.codxn-surface-patient-journey.codxn-medical-background--inline-svg > .codxn-medical-background__asset {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.codxn-medical-background::before {
	inset: 0;
	background:
		radial-gradient(circle at 12% 18%, color-mix(in srgb, var(--codxn-palette-soft) 42%, transparent) 0 10%, transparent 32%),
		radial-gradient(circle at 88% 72%, color-mix(in srgb, var(--codxn-palette-primary) 9%, transparent) 0 8%, transparent 28%);
}

.codxn-medical-background--ecg::after {
	inset-inline-end: -2%;
	inset-block-end: 8%;
	inline-size: min(34rem, 46vw);
	block-size: 8rem;
	opacity: var(--codxn-medical-line-opacity);
	background: var(--codxn-palette-accent);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 120'%3E%3Cpath d='M0 64h110l22-30 32 58 38-84 38 70 24-14h82l20-28 25 50 35-64 35 54 28-12h111' fill='none' stroke='black' stroke-width='5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 120'%3E%3Cpath d='M0 64h110l22-30 32 58 38-84 38 70 24-14h82l20-28 25 50 35-64 35 54 28-12h111' fill='none' stroke='black' stroke-width='5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

:is(
	.codxn-medical-background--structure,
	.codxn-medical-background--grid,
	.codxn-home-services.codxn-surface-clinical,
	.codxn-home-patient-journey.codxn-surface-patient-journey
) {
	--codxn-medical-line-opacity: 0.08;
	--codxn-medical-structure-inline-start: auto;
	--codxn-medical-structure-inline-end: clamp(-4rem, -4vw, -1.5rem);
	--codxn-medical-structure-block-start: 50%;
	--codxn-medical-structure-inline-size: clamp(13rem, 24vw, 22rem);
	--codxn-medical-structure-block-size: clamp(15rem, 28vw, 25rem);
	--codxn-medical-structure-transform: translateY(-50%);
}

:is(
	.codxn-medical-background--structure,
	.codxn-medical-background--grid,
	.codxn-home-services.codxn-surface-clinical,
	.codxn-home-patient-journey.codxn-surface-patient-journey
)::after {
	inset-inline-start: var(--codxn-medical-structure-inline-start);
	inset-inline-end: var(--codxn-medical-structure-inline-end);
	inset-block-start: var(--codxn-medical-structure-block-start);
	inline-size: var(--codxn-medical-structure-inline-size);
	block-size: var(--codxn-medical-structure-block-size);
	transform: var(--codxn-medical-structure-transform);
	opacity: var(--codxn-medical-line-opacity);
	background: var(--codxn-palette-accent);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 360'%3E%3Cg fill='none' stroke='black' stroke-width='4' stroke-linejoin='round'%3E%3Cpath d='M82 24l56 32v64l-56 32-56-32V56zM194 88l56 32v64l-56 32-56-32v-64zM82 216l56 32v64l-56 32-56-32v-64z'/%3E%3Cpath d='M138 88h28M110 160l28 48M166 224l-28 24'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 360'%3E%3Cg fill='none' stroke='black' stroke-width='4' stroke-linejoin='round'%3E%3Cpath d='M82 24l56 32v64l-56 32-56-32V56zM194 88l56 32v64l-56 32-56-32v-64zM82 216l56 32v64l-56 32-56-32v-64z'/%3E%3Cpath d='M138 88h28M110 160l28 48M166 224l-28 24'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat;
}

:is(.codxn-medical-background--soft, .codxn-home-doctors.codxn-medical-background--ecg)::before {
	opacity: var(--codxn-medical-soft-glow-opacity);
	background:
		radial-gradient(circle at 18% 22%, color-mix(in srgb, var(--codxn-palette-soft) 34%, transparent) 0 12%, transparent 38%),
		radial-gradient(circle at 82% 74%, color-mix(in srgb, var(--codxn-palette-primary) 10%, transparent) 0 9%, transparent 32%),
		linear-gradient(120deg, transparent 42%, color-mix(in srgb, var(--codxn-palette-accent) 8%, transparent) 50%, transparent 58%);
}

/* Existing Home content used the earlier ECG class; keep its live rendering
   aligned with the new Featured Doctor soft-family assignment in the blueprint. */
.codxn-home-doctors.codxn-medical-background--ecg::after {
	content: none;
}

html[data-codxn-color-scheme="dark"] .codxn-medical-background {
	--codxn-medical-line-opacity: 0.085;
	--codxn-medical-soft-glow-opacity: 0.5;
}

html[data-codxn-color-scheme="dark"] :is(
	.codxn-medical-background--structure,
	.codxn-medical-background--grid,
	.codxn-home-services.codxn-surface-clinical,
	.codxn-home-patient-journey.codxn-surface-patient-journey
) {
	--codxn-medical-line-opacity: 0.055;
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) .codxn-medical-background {
		--codxn-medical-line-opacity: 0.085;
		--codxn-medical-soft-glow-opacity: 0.5;
	}

	html:not([data-codxn-color-scheme="light"]) :is(
		.codxn-medical-background--structure,
		.codxn-medical-background--grid,
		.codxn-home-services.codxn-surface-clinical,
		.codxn-home-patient-journey.codxn-surface-patient-journey
	) {
		--codxn-medical-line-opacity: 0.055;
	}
}

@media (max-width: 640px) {
	:is(
		.codxn-medical-background--structure,
		.codxn-medical-background--grid,
		.codxn-home-services.codxn-surface-clinical,
		.codxn-home-patient-journey.codxn-surface-patient-journey
	)::after {
		--codxn-medical-structure-inline-end: -5rem;
		--codxn-medical-structure-inline-size: 13rem;
		--codxn-medical-structure-block-size: 15rem;
		--codxn-medical-line-opacity: 0.06;
	}

	:is(.codxn-medical-background--soft, .codxn-home-doctors.codxn-medical-background--ecg)::before {
		--codxn-medical-soft-glow-opacity: 0.58;
	}
}

@media (prefers-reduced-motion: no-preference) {
	:is(.codxn-medical-background--soft, .codxn-home-doctors.codxn-medical-background--ecg)::before {
		animation: codxn-medical-soft-drift 18s ease-in-out infinite alternate;
	}
}

@keyframes codxn-medical-soft-drift {
	from { transform: translate3d(0, 0, 0) scale(1); }
	to { transform: translate3d(-1%, 1%, 0) scale(1.02); }
}

@media (prefers-reduced-motion: reduce) {
	:is(.codxn-medical-background--soft, .codxn-home-doctors.codxn-medical-background--ecg)::before {
		animation: none;
	}
}

/* -----------------------------------------------------------------------
   Doctors Page — real Gutenberg Page with a native codxn_doctor Query Loop.
   Page framing stays editable; portraits, names, and specialties remain
   owned by the queried Doctor records.
----------------------------------------------------------------------- */

.codxn-doctors-page-hero {
	position: relative;
	overflow: clip;
	padding-block: clamp(1.75rem, 4vw, 3.75rem) !important;
	background-image: none !important;
}

.codxn-doctors-page-hero__layout {
	display: grid !important;
	grid-template-columns: minmax(0, 46fr) minmax(0, 54fr);
	align-items: stretch !important;
	box-sizing: border-box;
	inline-size: min(100%, 84rem);
	margin-inline: auto;
	gap: clamp(1.75rem, 4vw, 4rem) !important;
	padding: clamp(1.25rem, 3.5vw, 3.5rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 20%, var(--wp--preset--color--border));
	border-radius: 2rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 94%, var(--wp--preset--color--accent-soft));
	box-shadow: 0 1.25rem 3rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 9%, transparent);
}

.codxn-doctors-page-hero__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	min-inline-size: 0;
	padding-block: clamp(0.75rem, 2vw, 1.75rem);
	text-align: start;
}

.codxn-doctors-page-hero__content :where(h1, p) {
	max-inline-size: 42rem;
	margin-inline: 0;
	text-align: start;
}

.codxn-doctors-page-hero__content h1 {
	max-inline-size: 12ch;
	margin-block: 0;
	font-weight: 700;
	text-wrap: balance;
}

.codxn-doctors-page-hero__content > .codxn-eyebrow {
	margin-block: 0 0.65rem;
}

.codxn-doctors-page-hero__content > p:not(.codxn-eyebrow) {
	margin-block: clamp(1rem, 2vw, 1.4rem) 0;
	color: var(--wp--preset--color--text-muted) !important;
	font-size: clamp(1rem, 1.4vw, 1.125rem) !important;
	line-height: 1.85;
	text-wrap: pretty;
}

.codxn-doctors-page-hero__media {
	position: relative;
	isolation: isolate;
	display: grid;
	place-items: end center;
	min-inline-size: 0;
	min-block-size: clamp(27rem, 38vw, 36rem);
	overflow: clip;
}

.codxn-doctors-page-hero__media::before,
.codxn-doctors-page-hero__media::after {
	content: "";
	position: absolute;
	pointer-events: none;
}

.codxn-doctors-page-hero__media::before {
	z-index: 0;
	inset-inline: 5% 1%;
	inset-block: 8% 3%;
	border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 30%, transparent);
	border-radius: 42% 58% 46% 54% / 52% 40% 60% 48%;
	background:
		radial-gradient(circle at 34% 20%, color-mix(in srgb, var(--codxn-palette-soft) 76%, transparent), transparent 40%),
		linear-gradient(145deg, color-mix(in srgb, var(--codxn-palette-accent) 22%, transparent), color-mix(in srgb, var(--codxn-palette-soft) 60%, transparent));
	box-shadow: var(--codxn-depth-2);
}

.codxn-doctors-page-hero__media::after {
	z-index: 0;
	inset-block-start: clamp(1rem, 3vw, 2rem);
	inset-inline-end: 3%;
	inline-size: clamp(3.25rem, 5vw, 4.75rem);
	block-size: clamp(3.25rem, 5vw, 4.75rem);
	border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 24%, transparent);
	border-radius: 46% 54% 42% 58%;
	background: color-mix(in srgb, var(--codxn-palette-surface) 64%, transparent);
	box-shadow: var(--codxn-depth-1);
}

.codxn-doctors-page-hero__image {
	position: relative;
	z-index: 1;
	display: grid;
	place-items: end center;
	overflow: hidden;
	inline-size: 100%;
	block-size: 100%;
	min-block-size: 0;
	aspect-ratio: 5 / 4;
	margin: 0;
	border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 20%, var(--wp--preset--color--border));
	border-radius: 52% 48% 46% 54% / 18% 22% 16% 20%;
	background: transparent;
	box-shadow: var(--codxn-depth-3);
}

.codxn-doctors-page-hero__image img {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	object-fit: contain;
	object-position: center bottom;
}

.codxn-doctors-catalog {
	padding-block: clamp(4rem, 7vw, 5.75rem) !important;
}

.codxn-doctors-catalog__intro {
	max-inline-size: 52rem;
	margin-inline: auto;
	margin-block-end: clamp(2rem, 4vw, 3rem);
}

.codxn-doctors-catalog__intro :where(h2, p) {
	margin-inline: auto;
	text-wrap: balance;
}

.codxn-doctors-catalog__intro > p:last-child {
	max-inline-size: 42rem;
	line-height: 1.8;
}

.codxn-doctors-catalog__query {
	inline-size: 100%;
	max-inline-size: var(--wp--style--global--wide-size, 1200px);
	margin-inline: auto;
}

.codxn-doctors-catalog__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	inline-size: 100%;
	gap: clamp(1.25rem, 2.4vw, 2rem);
	margin: 0;
	padding: 0;
}

.codxn-doctors-catalog__grid > .wp-block-post {
	display: flex;
	inline-size: 100%;
	min-inline-size: 0;
	margin: 0;
	padding: 0;
}

.codxn-doctor-profile {
	display: grid;
	inline-size: 100%;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	min-inline-size: 0;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 18%, var(--wp--preset--color--border));
	border-radius: 1.375rem;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 96%, var(--wp--preset--color--accent-soft));
	box-shadow: 0 0.65rem 1.6rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 7%, transparent);
	overflow: hidden;
}

.codxn-doctor-profile:not(:has(.codxn-doctor-profile__details)) {
	grid-template-columns: minmax(0, 1fr);
}

.codxn-doctor-profile__primary,
.codxn-doctor-profile__details {
	min-inline-size: 0;
	padding: clamp(1.5rem, 3vw, 2.5rem);
}

.codxn-doctor-profile__primary {
	border-inline-end: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 16%, var(--wp--preset--color--border));
	padding: clamp(1rem, 2vw, 1.5rem);
}

.codxn-doctor-profile:not(:has(.codxn-doctor-profile__details)) .codxn-doctor-profile__primary {
	border-inline-end: 0;
}

.codxn-doctor-profile__media {
	position: relative;
	display: grid;
	min-block-size: clamp(20rem, 28vw, 28rem);
	aspect-ratio: 4 / 5;
	overflow: hidden;
	isolation: isolate;
	border-radius: 1.125rem;
	background:
		radial-gradient(circle at 18% 14%, color-mix(in srgb, var(--codxn-palette-soft) 86%, transparent), transparent 38%),
		linear-gradient(145deg, color-mix(in srgb, var(--codxn-palette-surface) 82%, var(--codxn-palette-soft)), color-mix(in srgb, var(--codxn-palette-accent) 18%, var(--codxn-palette-surface)));
	box-shadow: var(--codxn-depth-2);
}

.codxn-doctor-profile__media :is(.codxn-doctor-profile__fallback, .codxn-doctor-profile__image) { position: absolute; z-index: 1; inset: clamp(0.35rem, 1vw, 0.65rem); inline-size: auto; block-size: auto; margin: 0; overflow: hidden; border-radius: 0.85rem; }
.codxn-doctor-profile__media :is(.codxn-doctor-profile__fallback, .codxn-doctor-profile__image) img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; object-position: center 18%; }
.codxn-doctor-profile__fallback img { padding: 13%; object-position: center 24%; }
.codxn-doctor-profile__medical-shape { position: absolute; z-index: 2; inset-inline-start: -12%; inset-block-start: 8%; inline-size: 55%; block-size: 43%; border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 35%, transparent); border-radius: 48% 52% 58% 42% / 42% 56% 44% 58%; background: color-mix(in srgb, var(--codxn-palette-soft) 38%, transparent); pointer-events: none; }
.codxn-doctor-profile__media-chip { position: absolute; z-index: 3; display: inline-flex; align-items: center; gap: 0.45rem; max-inline-size: calc(100% - 2rem); margin: 0; padding: 0.45rem 0.65rem; border: 1px solid color-mix(in srgb, var(--codxn-palette-accent) 24%, var(--wp--preset--color--border)); border-radius: 999px; background: color-mix(in srgb, var(--codxn-palette-surface) 90%, transparent); box-shadow: var(--codxn-depth-1); color: var(--wp--preset--color--foreground); font-size: 0.78rem; font-weight: 700; line-height: 1.35; pointer-events: none; }
.codxn-doctor-profile__media-chip > span:first-child { display: grid; flex: 0 0 auto; place-items: center; inline-size: 1.35rem; block-size: 1.35rem; border-radius: 50%; background: color-mix(in srgb, var(--codxn-palette-soft) 70%, var(--wp--preset--color--surface)); color: var(--wp--preset--color--brand-text); }
.codxn-doctor-profile__media-chip-icon { inline-size: 0.85rem; block-size: 0.85rem; }
.codxn-doctor-profile__media-chip--upper { inset-block-start: 1.1rem; inset-inline-start: 1.1rem; }
.codxn-doctor-profile__media-chip--lower { inset-block-end: 1.1rem; inset-inline-end: 1.1rem; }
.codxn-doctor-profile__name { margin-block: 1.25rem 0.45rem; font-size: clamp(1.35rem, 2vw, 1.75rem); line-height: 1.3; }
.codxn-doctor-profile__name a { color: var(--wp--preset--color--foreground); text-decoration: none; }
.codxn-doctor-profile__excerpt, .codxn-doctor-profile__excerpt .wp-block-post-excerpt__excerpt { margin-block: 0; color: var(--wp--preset--color--text-muted); line-height: 1.75; }
.codxn-doctor-profile__excerpt a { display: inline-flex; margin-block-start: 0.75rem; color: var(--wp--preset--color--brand-text); font-weight: 700; }

.codxn-doctor-profile__details { display: grid; align-content: start; gap: 1.25rem; }
.codxn-doctor-profile__indicators { display: grid; gap: 0.75rem; }
.codxn-doctor-profile__indicators > div { display: flex; align-items: center; gap: 0.75rem; }
.codxn-doctor-profile__indicator-icon { display: grid; flex: 0 0 auto; place-items: center; inline-size: 2.75rem; block-size: 2.75rem; border-radius: 0.75rem; background: color-mix(in srgb, var(--wp--preset--color--medical-teal) 13%, var(--wp--preset--color--surface)); color: var(--wp--preset--color--brand-text); }
.codxn-doctor-profile__indicator-icon > :is(svg, .codxn-icon, .codxn-icon-library-block__svg) { inline-size: 1.55rem; block-size: 1.55rem; }
.codxn-doctor-profile__indicators small, .codxn-doctor-profile__indicators strong { display: block; }
.codxn-doctor-profile__indicators small { color: var(--wp--preset--color--text-muted); font-size: 0.8rem; }
.codxn-doctor-profile__group { padding-block-start: 1rem; border-block-start: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 16%, var(--wp--preset--color--border)); }
.codxn-doctor-profile__group h3 { display: flex; align-items: center; gap: 0.65rem; margin: 0; font-size: 1rem; }
.codxn-doctor-profile__group h3 svg { inline-size: 1.5rem; block-size: 1.5rem; color: var(--wp--preset--color--brand-text); }
.codxn-doctor-profile__group ul { display: grid; gap: 0.35rem; margin: 0.65rem 0 0; padding-inline-start: 1.1rem; color: var(--wp--preset--color--text-muted); }

.codxn-doctor-profile :is(h3 a, .wp-block-post-featured-image a, .wp-block-post-excerpt__more-link):focus-visible,
.codxn-doctors-page-cta a:focus-visible {
	outline: 3px solid var(--wp--preset--color--control-focus);
	outline-offset: 3px;
}

.codxn-doctors-empty {
	max-inline-size: 44rem;
	margin-inline: auto;
	padding: clamp(2rem, 5vw, 3.5rem);
	border: 1px solid var(--wp--preset--color--border);
	border-block-start: 3px solid var(--wp--preset--color--medical-teal);
	border-radius: 1.25rem;
	background: var(--wp--preset--color--surface);
	text-align: center;
}

.codxn-doctors-page-cta {
	padding-block: clamp(3.5rem, 7vw, 5.25rem) !important;
	background-image: none !important;
}

.codxn-doctors-page-cta__inner {
	box-sizing: border-box;
	max-inline-size: 68rem;
	margin-inline: auto;
	padding: clamp(2.25rem, 5vw, 4rem);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 26%, var(--wp--preset--color--border));
	border-radius: 1.75rem;
	background: color-mix(in srgb, var(--wp--preset--color--medical-navy) 94%, var(--wp--preset--color--medical-teal));
	box-shadow: 0 1rem 2.5rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 12%, transparent);
	color: var(--wp--preset--color--white);
	text-align: center;
}

.codxn-doctors-page-cta__inner > * {
	margin-inline: auto;
}

.codxn-doctors-page-cta__inner > .codxn-eyebrow {
	margin-block: 0 0.7rem;
	color: var(--wp--preset--color--accent-soft) !important;
}

.codxn-doctors-page-cta__inner > h2 {
	max-inline-size: 18ch;
	margin-block: 0;
	color: var(--wp--preset--color--white) !important;
	font-size: clamp(2rem, 4.5vw, 3.5rem) !important;
	line-height: 1.15;
	text-wrap: balance;
}

.codxn-doctors-page-cta__inner > p:not(.codxn-eyebrow) {
	max-inline-size: 44rem;
	margin-block: 1rem 0;
	color: color-mix(in srgb, var(--wp--preset--color--white) 82%, transparent);
	line-height: 1.8;
}

.codxn-doctors-page-cta__inner .wp-block-buttons {
	justify-content: center;
	margin-block-start: clamp(1.5rem, 3vw, 2rem);
}

html[data-codxn-color-scheme="dark"] :is(.codxn-doctors-page-hero__layout, .codxn-doctor-profile) {
	border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 25%, var(--wp--preset--color--border));
	background: color-mix(in srgb, var(--wp--preset--color--surface) 95%, var(--wp--preset--color--medical-navy));
}

html[data-codxn-color-scheme="dark"] .codxn-doctors-page-hero__media::before {
	border-color: color-mix(in srgb, var(--codxn-palette-accent) 36%, transparent);
	background:
		radial-gradient(circle at 34% 20%, color-mix(in srgb, var(--codxn-palette-accent) 20%, transparent), transparent 40%),
		linear-gradient(145deg, color-mix(in srgb, var(--codxn-palette-deep) 74%, var(--codxn-palette-surface)), color-mix(in srgb, var(--codxn-palette-soft) 28%, var(--codxn-palette-deep)));
}

html[data-codxn-color-scheme="dark"] .codxn-doctors-page-hero__media::after,
html[data-codxn-color-scheme="dark"] .codxn-doctors-page-hero__image {
	border-color: color-mix(in srgb, var(--codxn-palette-accent) 28%, var(--wp--preset--color--border));
}

html[data-codxn-color-scheme="dark"] .codxn-doctors-page-cta__inner {
	box-shadow: 0 1rem 2.5rem color-mix(in srgb, var(--wp--preset--color--black) 26%, transparent);
}

@media (prefers-color-scheme: dark) {
	html:not([data-codxn-color-scheme="light"]) :is(.codxn-doctors-page-hero__layout, .codxn-doctor-profile) {
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 25%, var(--wp--preset--color--border));
		background: color-mix(in srgb, var(--wp--preset--color--surface) 95%, var(--wp--preset--color--medical-navy));
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-doctors-page-hero__media::before {
		border-color: color-mix(in srgb, var(--codxn-palette-accent) 36%, transparent);
		background:
			radial-gradient(circle at 34% 20%, color-mix(in srgb, var(--codxn-palette-accent) 20%, transparent), transparent 40%),
			linear-gradient(145deg, color-mix(in srgb, var(--codxn-palette-deep) 74%, var(--codxn-palette-surface)), color-mix(in srgb, var(--codxn-palette-soft) 28%, var(--codxn-palette-deep)));
	}

	html:not([data-codxn-color-scheme="light"]) .codxn-doctors-page-hero__media::after,
	html:not([data-codxn-color-scheme="light"]) .codxn-doctors-page-hero__image {
		border-color: color-mix(in srgb, var(--codxn-palette-accent) 28%, var(--wp--preset--color--border));
	}
}

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
	.codxn-doctor-profile {
		transition: transform 240ms var(--wp--custom--motion--easing--standard), box-shadow 240ms var(--wp--custom--motion--easing--standard), border-color 240ms var(--wp--custom--motion--easing--standard);
	}

	.codxn-doctor-profile:hover {
		transform: translateY(-0.25rem);
		border-color: color-mix(in srgb, var(--wp--preset--color--medical-teal) 36%, var(--wp--preset--color--border));
		box-shadow: 0 1rem 2rem color-mix(in srgb, var(--wp--preset--color--medical-navy) 12%, transparent);
	}

	.codxn-doctor-profile__image img {
		transition: transform 420ms var(--wp--custom--motion--easing--standard);
	}

	.codxn-doctor-profile:hover .codxn-doctor-profile__image img {
		transform: scale(1.025);
	}
}

@media (max-width: 1024px) {
	.codxn-doctors-page-hero__layout {
		grid-template-columns: minmax(0, 1fr);
		inline-size: min(100%, 48rem);
	}

	.codxn-doctors-page-hero__image {
		aspect-ratio: 5 / 4;
	}

	.codxn-doctors-page-hero__media {
		min-block-size: clamp(21rem, 62vw, 29rem);
	}

}

@media (max-width: 600px) {
	.codxn-doctors-page-hero,
	.codxn-doctors-catalog,
	.codxn-doctors-page-cta {
		padding-inline: var(--wp--preset--spacing--sm) !important;
	}

	.codxn-doctors-page-hero__layout {
		gap: 1.5rem !important;
		padding: 1rem;
		border-radius: 1.375rem;
	}

	.codxn-doctors-page-hero__content {
		align-items: center;
		padding: 0.75rem 0.25rem 0;
		text-align: center;
	}

	.codxn-doctors-page-hero__content :where(h1, p) {
		margin-inline: auto;
		text-align: center;
	}

	.codxn-doctors-page-hero__content h1 {
		font-size: clamp(2rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
	}

	.codxn-doctors-catalog__intro h2 {
		font-size: clamp(2rem, 8.5vw, 2.25rem) !important;
		line-height: 1.22;
	}

	.codxn-doctors-page-hero__image {
		aspect-ratio: 5 / 4;
		border-radius: 50% 50% 46% 54% / 16% 18% 14% 16%;
	}

	.codxn-doctors-page-hero__media {
		min-block-size: clamp(19rem, 90vw, 25rem);
	}

	.codxn-doctors-page-hero__media::after {
		inset-block-start: 0.75rem;
		inset-inline-end: 0.5rem;
		inline-size: 3rem;
		block-size: 3rem;
	}

	.codxn-doctors-catalog__grid { gap: 1rem; }

	.codxn-doctor-profile {
		grid-template-columns: minmax(0, 1fr);
		border-radius: 1.125rem;
	}

	.codxn-doctor-profile__primary {
		border-inline-end: 0;
		border-block-end: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 16%, var(--wp--preset--color--border));
	}

	.codxn-doctor-profile__media {
		min-block-size: clamp(17rem, 90vw, 23rem);
	}

	.codxn-doctor-profile__media-chip--upper { inset-block-start: 0.75rem; inset-inline-start: 0.75rem; }
	.codxn-doctor-profile__media-chip--lower { inset-block-end: 0.75rem; inset-inline-end: 0.75rem; }

	.codxn-doctors-page-cta__inner {
		padding: 1.75rem 1.25rem;
		border-radius: 1.375rem;
	}

	.codxn-doctors-page-cta__inner .wp-block-buttons {
		inline-size: 100%;
		justify-content: center;
	}

	.codxn-doctors-page-cta__inner .wp-block-button,
	.codxn-doctors-page-cta__inner .wp-block-button__link {
		inline-size: fit-content;
		max-inline-size: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.codxn-doctor-profile,
	.codxn-doctor-profile__image img {
		transform: none !important;
		transition: none !important;
	}
}

@media (forced-colors: active) {
	.codxn-doctors-page-hero__layout,
	.codxn-doctor-profile,
	.codxn-doctors-empty,
	.codxn-doctors-page-cta__inner {
		border-color: CanvasText;
		background: Canvas;
		color: CanvasText;
		box-shadow: none;
	}

	.codxn-doctors-page-cta__inner :is(.codxn-eyebrow, h2, p, a) {
		color: CanvasText !important;
	}
}
/* -----------------------------------------------------------------------
   Home — Featured doctor spotlight
   Presentation-only refinements for the existing dynamic spotlight.
----------------------------------------------------------------------- */
.codxn-home-doctors .codxn-doctor-spotlight {
	inline-size: 100%;
	max-inline-size: none;
	box-sizing: border-box;
}

.codxn-home-doctors .codxn-doctor-spotlight__layout {
	grid-template-columns: minmax(0, 0.86fr) minmax(24rem, 1.14fr);
	gap: clamp(2rem, 4vw, 5rem);
	align-items: center;
}

.codxn-home-doctors .codxn-doctor-spotlight__media-column {
	min-inline-size: 0;
}

.codxn-home-doctors .codxn-doctor-spotlight__media-stage {
	position: relative;
	isolation: isolate;
	min-block-size: clamp(34rem, 44vw, 44rem);
	overflow: hidden;
	border-radius: clamp(1.5rem, 2.5vw, 2.25rem);
	background: linear-gradient(145deg, color-mix(in srgb, var(--codxn-palette-soft) 72%, var(--wp--preset--color--surface)), color-mix(in srgb, var(--codxn-palette-accent) 20%, var(--wp--preset--color--surface)));
}

.codxn-home-doctors .codxn-doctor-spotlight__media-stage::before {
	position: absolute;
	z-index: 0;
	inset: -30%;
	content: "";
	background:
		radial-gradient(circle at 20% 28%, color-mix(in srgb, var(--wp--preset--color--medical-cyan) 46%, transparent), transparent 28%),
		radial-gradient(circle at 78% 72%, color-mix(in srgb, var(--codxn-palette-primary) 28%, transparent), transparent 32%);
	filter: blur(0.25rem);
	opacity: 0.78;
	transform: translate3d(-3%, -2%, 0) scale(1.04);
}

.codxn-home-doctors .codxn-doctor-spotlight__visual {
	position: relative;
	z-index: 1;
	inset: clamp(0.55rem, 1.15vw, 0.9rem);
	inline-size: auto;
	block-size: auto;
	margin: 0;
	border-radius: clamp(1rem, 1.8vw, 1.5rem);
	overflow: hidden;
	box-shadow: 0 1.35rem 3.25rem color-mix(in srgb, var(--codxn-palette-deep) 18%, transparent);
}

.codxn-home-doctors .codxn-doctor-spotlight__image {
	inline-size: 100%;
	block-size: 100%;
	object-fit: cover;
	object-position: center 18%;
}

.codxn-home-doctors .codxn-doctor-spotlight__media-stage::after {
	position: absolute;
	z-index: 3;
	inset-block-end: clamp(1rem, 2.4vw, 1.65rem);
	inset-inline-start: clamp(1rem, 2.4vw, 1.65rem);
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	max-inline-size: calc(100% - 2rem);
	padding: 0.65rem 0.85rem;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--medical-teal) 30%, var(--wp--preset--color--border));
	border-radius: 999px;
	background: color-mix(in srgb, var(--wp--preset--color--surface) 90%, transparent);
	box-shadow: 0 0.75rem 1.6rem color-mix(in srgb, var(--codxn-palette-deep) 15%, transparent);
	color: var(--wp--preset--color--brand-text);
	content: "✚ رعاية مهنية قريبة منك";
	font-size: clamp(0.78rem, 1vw, 0.9rem);
	font-weight: 700;
	line-height: 1.35;
	pointer-events: none;
}

@media (prefers-reduced-motion: no-preference) {
	.codxn-home-doctors .codxn-doctor-spotlight__media-stage::before {
		animation: codxn-home-doctor-ambient-drift 14s ease-in-out infinite alternate;
	}
}

@keyframes codxn-home-doctor-ambient-drift {
	from {
		transform: translate3d(-3%, -2%, 0) scale(1.04);
	}

	to {
		transform: translate3d(4%, 3%, 0) scale(1.12);
	}
}

@media (max-width: 900px) {
	.codxn-home-doctors .codxn-doctor-spotlight__layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.codxn-home-doctors .codxn-doctor-spotlight__media-stage {
		min-block-size: clamp(28rem, 94vw, 38rem);
	}
}

@media (max-width: 600px) {
	.codxn-home-doctors .codxn-doctor-spotlight__media-stage {
		min-block-size: clamp(23rem, 108vw, 31rem);
	}

	.codxn-home-doctors .codxn-doctor-spotlight__media-stage::after {
		inset-inline: 0.85rem;
		justify-content: center;
		text-align: center;
	}
}

/* Global reveal system: opt-in only after codxn-motion.js confirms support. */
:root {
	--codxn-motion-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--codxn-motion-offset: 16px;
	--codxn-motion-duration-copy: 560ms;
	--codxn-motion-duration-heading: 640ms;
	--codxn-motion-duration-media: 680ms;
	--codxn-motion-duration-card: 600ms;
	--codxn-motion-duration-cta: 520ms;
}

:where(html.codxn-motion-ready) .codxn-motion-item {
	--codxn-motion-translate: var(--codxn-motion-offset);
	--codxn-motion-scale: 1;
	opacity: 0;
	transform: translateY(var(--codxn-motion-translate)) scale(var(--codxn-motion-scale));
	transition: opacity var(--codxn-motion-duration-copy) var(--codxn-motion-ease), transform var(--codxn-motion-duration-copy) var(--codxn-motion-ease);
	transition-delay: var(--codxn-motion-delay, 0ms);
}

:where(html.codxn-motion-ready) .codxn-motion-item--fade-up:is(h1, h2) { transition-duration: var(--codxn-motion-duration-heading), var(--codxn-motion-duration-heading); }
:where(html.codxn-motion-ready) .codxn-motion-item--fade-in { --codxn-motion-translate: 0px; }
:where(html.codxn-motion-ready) .codxn-motion-item--media-reveal { --codxn-motion-translate: 14px; --codxn-motion-scale: 0.985; transition-duration: var(--codxn-motion-duration-media), var(--codxn-motion-duration-media); }
:where(html.codxn-motion-ready) .codxn-motion-item--card-reveal { --codxn-motion-translate: 16px; --codxn-motion-scale: 0.985; transition-duration: var(--codxn-motion-duration-card), var(--codxn-motion-duration-card); }
:where(html.codxn-motion-ready) .codxn-motion-item--cta-reveal { --codxn-motion-translate: 12px; transition-duration: var(--codxn-motion-duration-cta), var(--codxn-motion-duration-cta); }

:where(html.codxn-motion-ready) .codxn-motion-item.is-codxn-visible {
	--codxn-motion-translate: 0px;
	--codxn-motion-scale: 1;
	opacity: 1;
}

@media (max-width: 900px) {
	:root { --codxn-motion-offset: 12px; }
	:where(html.codxn-motion-ready) .codxn-motion-item--media-reveal,
	:where(html.codxn-motion-ready) .codxn-motion-item--card-reveal { --codxn-motion-translate: 12px; }
}

@media (max-width: 640px) {
	:root { --codxn-motion-offset: 9px; --codxn-motion-duration-copy: 480ms; --codxn-motion-duration-heading: 520ms; --codxn-motion-duration-media: 520ms; --codxn-motion-duration-card: 500ms; --codxn-motion-duration-cta: 440ms; }
	:where(html.codxn-motion-ready) .codxn-motion-item--media-reveal,
	:where(html.codxn-motion-ready) .codxn-motion-item--card-reveal { --codxn-motion-translate: 9px; }
}
@media (max-width: 640px) { .codxn-hero-media-frame { min-height: 16rem; } .codxn-medical-background--ecg::after { width: 82vw; opacity: var(--codxn-medical-line-opacity); } }
@media (prefers-reduced-motion: reduce) { :where(html.codxn-motion-ready) .codxn-motion-item { opacity: 1 !important; transform: none !important; transition: none !important; transition-delay: 0ms !important; } }
@media (forced-colors: active), (prefers-contrast: more) { .codxn-medical-background::before, .codxn-medical-background::after { display: none; } }
