/**

 * BlueMed Dental — warstwa premium (UX, mikrointerakcje, layout).

 */



:root {

	--text-primary: #33343D;

	--text-heading: #33343D;

	--text-on-dark: #ffffff;

	--text-on-dark-soft: #F8F9FD;

	--primary-50: #EEF3FC;

	--primary-100: #DCE8F8;

	--primary-200: #C2D6F3;

	--primary-300: #9DBCEB;

	--primary-400: #6D98DF;

	--primary-500: #3E6FCD;

	--primary-600: #153D8A;

	--primary-700: #12367A;

	--primary-800: #102F6A;

	--primary-900: #0C2554;

	--accent-primary: var(--primary-600);

	--accent-primary-hover: var(--primary-700);

	--accent-secondary: #EAF0FA;

	--background-primary: #F8F9FD;

	--background-secondary: #F4F5FA;

	--bluemed-white: #ffffff;

	--bluemed-sand: var(--background-primary);

	--bluemed-oak: #CDD8E4;

	--bluemed-ash: #8B969B;

	--bluemed-graphite: var(--accent-primary);

	--bluemed-spa: var(--accent-secondary);

	--bluemed-spa-soft: #F0F3FA;

	--bluemed-spa-muted: rgba(234, 240, 250, 0.55);

	--bluemed-terracotta-deep: var(--accent-primary-hover);

	--bluemed-terracotta-soft: var(--primary-500);

	--bluemed-section-y: clamp(3.5rem, 10vw, 7.5rem);

	--bluemed-radius-sm: 18px;

	--bluemed-radius-md: 24px;

	--bluemed-radius-lg: 36px;

	--bluemed-shadow-soft: 0 20px 56px rgba(51, 52, 61, 0.06);

	--bluemed-shadow-card: 0 10px 36px rgba(51, 52, 61, 0.04), 0 1px 0 rgba(255, 255, 255, 0.8) inset;

	--bluemed-ease-out: cubic-bezier(0.22, 1, 0.36, 1);

	--bluemed-line: rgba(226, 231, 241, 0.72);

}



/* WordPress core FSE: remove default 24px vertical gap between root blocks (:where has 0 specificity; !important beats late-loaded global styles) */

.wp-site-blocks > * {

	margin-block-start: 0 !important;

	margin-block-end: 0 !important;

}



/* ——— Global polish ——— */

a:focus-visible,

.wp-block-button__link:focus-visible,

.wp-element-button:focus-visible,

.bluemed-nav a:focus-visible {

	outline: 2px solid var(--accent-secondary);

	outline-offset: 3px;

}



.wp-block-post-title a {

	transition: color 0.22s var(--bluemed-ease-out);

}



.wp-block-post-title a:hover {

	color: var(--accent-primary);

}



/* Nagłówek — sticky, premium bar */

.bluemed-header {

	position: sticky;

	top: 0;

	z-index: 100;

	border-bottom: 1px solid var(--bluemed-line);

	backdrop-filter: saturate(160%) blur(14px);

	-webkit-backdrop-filter: saturate(160%) blur(14px);

	background-color: rgba(255, 255, 255, 0.94) !important;

	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.9);

}



/*

 * Desktop header (≥1101px) — inset + flex distribution.

 * Below 1101px the compact/mobile header is used (see mega-menu + header mobile block):

 * eight uppercase nav labels cannot share a row with a 270px logo + CTA.

 */

@media (min-width: 1101px) {

	.bluemed-header > .wp-block-group {

		padding-left: clamp(1.25rem, 4vw, 2.5rem);

		padding-right: clamp(1.25rem, 4vw, 2.5rem);

		box-sizing: border-box;

	}



	/*

	 * Brand + CTA size to content; nav takes the remaining space.

	 * Logo width is fluid so it never forces the nav to overflow.

	 */

	.bluemed-header__row.wp-block-columns {

		gap: clamp(0.75rem, 1.8vw, 2.5rem) !important;

	}



	.bluemed-header__brand {

		flex: 0 1 auto !important;

		flex-basis: auto !important;

		width: auto !important;

		max-width: min(270px, max(150px, calc(100vw - 1000px)));

		min-width: 0;

	}



	.bluemed-header__brand > .wp-block-group,

	.bluemed-header__brand .bluemed-site-logo,

	.bluemed-header__brand .bluemed-brand-logo {

		max-width: 100%;

	}



	.bluemed-header__brand .bluemed-brand-logo__img,

	.bluemed-header__brand .bluemed-site-logo img,

	.bluemed-header__brand .bluemed-site-logo .custom-logo {

		max-width: 100%;

	}



	.bluemed-header__nav-col {

		flex: 1 1 0 !important;

		flex-basis: 0 !important;

		width: auto !important;

		min-width: 0;

	}



	.bluemed-header__cta-col {

		flex: 0 0 auto !important;

		flex-basis: auto !important;

		width: auto !important;

		min-width: 0;

	}

}



.bluemed-header__brand .wp-block-site-title {

	margin: 0;

}



.bluemed-header .wp-block-site-title a {

	color: var(--text-heading);

	transition: color 0.25s var(--bluemed-ease-out);

	letter-spacing: 0.12em;

}



.bluemed-header .wp-block-site-title a:hover {

	color: var(--accent-primary);

}



.bluemed-brand-logo {

	display: inline-flex;

	align-items: center;

	line-height: 0;

	text-decoration: none;

}



.bluemed-brand-logo__img,

.bluemed-site-logo img,

.bluemed-site-logo .custom-logo {

	display: block;

	height: auto;

	width: auto;

	/* Cap by container (not only vw) so the logo never escapes the brand column */

	max-width: min(270px, 100%);

	max-height: 68px;

	object-fit: contain;

	object-position: left center;

	transition: transform 0.35s var(--bluemed-ease-out), opacity 0.25s ease;

}



.bluemed-brand-logo--footer .bluemed-brand-logo__img {

	max-width: min(240px, 70vw);

	max-height: 64px;

	opacity: 0.96;

}



.bluemed-brand-logo:hover .bluemed-brand-logo__img,

.bluemed-site-logo a:hover img,

.bluemed-site-logo a:hover .custom-logo {

	transform: scale(1.03);

	opacity: 0.9;

}



.bluemed-brand-logo--footer:hover .bluemed-brand-logo__img {

	opacity: 1;

}



/* Nawigacja desktop (pełny rząd linków) */

@media (min-width: 1101px) {

	.bluemed-header__nav-col {

		text-align: center;

	}



	.bluemed-header__nav-col .bluemed-primary-nav {

		display: flex;

		justify-content: center;

	}



	.bluemed-nav .wp-block-navigation__container {

		justify-content: center;

		gap: clamp(0.4rem, 1.4vw, 1.35rem);

	}



	.bluemed-nav .wp-block-navigation-item .wp-block-navigation-item__content {

		padding: 0.35rem 0.15rem;

		position: relative;

		transition: color 0.22s var(--bluemed-ease-out);

	}



	.bluemed-nav .wp-block-navigation-item .wp-block-navigation-item__content::after {

		content: "";

		position: absolute;

		left: 0;

		right: 0;

		bottom: 0;

		height: 2px;

		background: var(--accent-primary);

		transform: scaleX(0);

		transform-origin: center;

		transition: transform 0.28s var(--bluemed-ease-out);

	}



	.bluemed-nav .wp-block-navigation-item .wp-block-navigation-item__content:hover::after,

	.bluemed-nav .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content::after {

		transform: scaleX(1);

	}

}



/* Nawigacja — overlay mobile */

.bluemed-nav .wp-block-navigation__responsive-container:not(.is-menu-open.is-menu-open) {

	background-color: transparent !important;

	color: inherit !important;

}



.bluemed-nav .wp-block-navigation__responsive-container.is-menu-open {

	background-color: var(--bluemed-sand) !important;

}



.bluemed-nav .wp-block-navigation__responsive-container-close {

	border-radius: 999px;

	opacity: 0.85;

	transition: opacity 0.2s ease, transform 0.2s ease;

}



.bluemed-nav .wp-block-navigation__responsive-container-close:hover {

	opacity: 1;

	transform: rotate(90deg);

}



.bluemed-nav .wp-block-navigation__responsive-container-open {

	padding: 0.55rem 0.85rem;

	border: 1px solid var(--bluemed-line);

	background: #fff;

	transition: border-color 0.2s ease, box-shadow 0.25s ease;

}



.bluemed-nav .wp-block-navigation__responsive-container-open:hover {

	border-color: rgba(215, 227, 225, 0.85);

	box-shadow: var(--bluemed-shadow-soft);

}



/* CTA w nagłówku */

.bluemed-header__cta .wp-block-button__link {

	min-height: 2.75rem;

	display: inline-flex;

	align-items: center;

	justify-content: center;

	padding-left: 1.35rem;

	padding-right: 1.35rem;

	font-size: 0.8125rem;

	letter-spacing: 0.06em;

	text-transform: uppercase;

	box-shadow: 0 10px 28px rgba(21, 61, 138, 0.1);

}



.bluemed-header__cta .wp-block-button__link:hover {

	box-shadow: 0 14px 36px rgba(21, 61, 138, 0.14);

	filter: brightness(1.03);

}



/* Przyciski — spójny „agency” */

.wp-block-button__link,

.wp-element-button {

	transition:

		transform 0.26s var(--bluemed-ease-out),

		box-shadow 0.28s var(--bluemed-ease-out),

		background-color 0.25s ease,

		color 0.25s ease,

		border-color 0.25s ease,

		filter 0.25s ease;

}



.wp-block-button__link:hover,

.wp-element-button:hover {

	transform: translateY(-2px);

	box-shadow: var(--bluemed-shadow-soft);

}



.wp-block-button.is-style-outline .wp-block-button__link:hover {

	transform: translateY(-1px);

	box-shadow: 0 8px 24px rgba(21, 61, 138, 0.06);

}



.bluemed-btn-primary .wp-block-button__link,

.bluemed-cta-band__actions .wp-block-button:not(.is-style-outline) .wp-block-button__link {

	box-shadow: 0 12px 32px rgba(21, 61, 138, 0.11);

}



.bluemed-btn-primary .wp-block-button__link:hover,

.bluemed-cta-band__actions .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {

	box-shadow: 0 18px 44px rgba(21, 61, 138, 0.14);

	filter: brightness(1.04);

}



/* Karty premium */

.is-style-bluemed-card {

	box-shadow:

		var(--bluemed-shadow-card),

		inset 0 0 0 1px rgba(215, 227, 225, 0.35);

	background-color: var(--bluemed-white);

	transition:

		transform 0.3s var(--bluemed-ease-out),

		box-shadow 0.3s var(--bluemed-ease-out),

		background-color 0.25s ease;

}



.is-style-bluemed-card:hover {

	transform: translateY(var(--bm-card-lift, -4px));

	box-shadow:

		var(--bluemed-shadow-soft),

		inset 0 0 0 1px rgba(215, 227, 225, 0.65);

	background-color: rgba(215, 227, 225, 0.12);

}



/* Obrazy — delikatny zoom */

.wp-block-image img,

.wp-block-media-text__media img,

.wp-block-post-featured-image img {

	transition: transform 0.45s ease;

}



.wp-block-image:hover img,

.wp-block-media-text:hover .wp-block-media-text__media img,

.wp-block-post-featured-image:hover img {

	transform: scale(1.03);

}



/* Scroll reveal */

.js-reveal {

	opacity: 0;

	transform: translateY(20px);

	transition:

		opacity 0.65s var(--bluemed-ease-out),

		transform 0.7s var(--bluemed-ease-out);

}



.js-reveal.is-visible {

	opacity: 1;

	transform: translateY(0);

}



@media (prefers-reduced-motion: reduce) {

	.js-reveal {

		opacity: 1;

		transform: none;

		transition: none;

	}

}



/* Okruszki */

.bluemed-breadcrumbs {

	margin-bottom: 1rem;

}



.bluemed-breadcrumbs__list {

	display: flex;

	flex-wrap: wrap;

	align-items: center;

	gap: 0.35rem 0.5rem;

	list-style: none;

	margin: 0;

	padding: 0;

	font-size: 0.8125rem;

	color: var(--bluemed-ash);

}



.bluemed-breadcrumbs__item {

	display: inline-flex;

	align-items: center;

}



.bluemed-breadcrumbs__item + .bluemed-breadcrumbs__item::before {

	content: "/";

	color: var(--bluemed-ash);

	opacity: 0.65;

	margin-right: 0.5rem;

}



.bluemed-breadcrumbs__link {

	color: var(--bluemed-ash);

	text-decoration: underline;

	text-underline-offset: 3px;

}



.bluemed-breadcrumbs__current {

	color: var(--text-primary);

	font-weight: 600;

}



/* Shortcodes / stopka */

.bluemed-sc--phone {

	font-size: 1.125rem;

	font-weight: 600;

	letter-spacing: 0.02em;

}



.bluemed-social {

	list-style: none;

	margin: 0.75rem 0 0;

	padding: 0;

	display: flex;

	flex-wrap: wrap;

	gap: 0.75rem 1rem;

}



.bluemed-social a {

	font-weight: 500;

	border-bottom: 1px solid transparent;

}



.bluemed-social a:hover {

	border-bottom-color: var(--accent-secondary);

}



/* Komunikaty formularza */

.bluemed-notice {

	max-width: 1440px;

	margin: 0 auto;

	padding: 1rem 1.25rem;

	border-radius: var(--bluemed-radius-sm);

	font-size: 0.9375rem;

}



.bluemed-notice--success {

	background: rgba(215, 227, 225, 0.45);

	color: var(--text-primary);

}



.bluemed-notice--error {

	background: rgba(168, 168, 168, 0.25);

	color: var(--text-primary);

}



/* Formularz rejestracji */

.bluemed-reg-form {

	display: grid;

	gap: 1rem 1.25rem;

	grid-template-columns: repeat(12, 1fr);

}



.bluemed-reg-form .bluemed-field--full {

	grid-column: 1 / -1;

}



@media (min-width: 768px) {

	.bluemed-reg-form .bluemed-field--half {

		grid-column: span 6;

	}

}



@media (max-width: 767px) {

	.bluemed-reg-form .bluemed-field--half {

		grid-column: 1 / -1;

	}

}



.bluemed-field label {

	display: block;

	font-size: 0.8125rem;

	font-weight: 600;

	letter-spacing: 0.04em;

	text-transform: uppercase;

	color: var(--bluemed-ash);

	margin-bottom: 0.35rem;

}



.bluemed-field input,

.bluemed-field select,

.bluemed-field textarea {

	width: 100%;

	border: 1px solid rgba(168, 168, 168, 0.55);

	border-radius: var(--bluemed-radius-sm);

	padding: 0.75rem 1rem;

	font: inherit;

	background: #fff;

	transition: border-color 0.22s ease, box-shadow 0.22s ease;

}



.bluemed-field input:focus,

.bluemed-field select:focus,

.bluemed-field textarea:focus {

	outline: none;

	border-color: var(--accent-primary);

	box-shadow: 0 0 0 3px rgba(21, 61, 138, 0.18);

}



.bluemed-field textarea {

	min-height: 140px;

	resize: vertical;

}



.bluemed-reg-actions {

	display: flex;

	flex-wrap: wrap;

	gap: 1rem;

	align-items: center;

	margin-top: 0.5rem;

}



/* Mapa responsywna */

.bluemed-sc--map iframe {

	width: 100%;

	min-height: 320px;

	border: 0;

	border-radius: var(--bluemed-radius-md);

}



/* Płatności — ikonowe etykiety */

.bluemed-pay-badges {

	display: flex;

	flex-wrap: wrap;

	gap: 0.5rem 0.75rem;

	margin-top: 0.75rem;

}



.bluemed-pay-badge {

	display: inline-flex;

	align-items: center;

	padding: 0.35rem 0.75rem;

	border-radius: 999px;

	border: 1px solid rgba(168, 168, 168, 0.45);

	font-size: 0.75rem;

	font-weight: 600;

	letter-spacing: 0.04em;

	text-transform: uppercase;

	color: var(--text-primary);

	background: #fff;

}



/* Szablon usługi — subtelna sekcja */

.bluemed-tpl-service .entry-content {

	max-width: 100%;

}



/* CTA na ciemnym tle */

.has-graphite-background-color .wp-block-button.is-style-outline .wp-block-button__link {

	border-color: rgba(255, 255, 255, 0.55) !important;

	color: #fff !important;

	background: transparent !important;

}



.has-graphite-background-color .wp-block-button.is-style-outline .wp-block-button__link:hover {

	border-color: #fff !important;

	color: var(--bluemed-oak) !important;

}



/* Hero — „łuk” / kapsuła wizualna (inspiracja arch, bez klonowania) */

.bluemed-hero-arch {

	overflow: hidden;

	border-radius: 50% 50% 28px 28px / 42% 42% 28px 28px;

	box-shadow: var(--bluemed-shadow-card);

	max-width: 420px;

	margin-left: auto;

	margin-right: 0;

}



@media (max-width: 781px) {

	.bluemed-hero-arch {

		margin-left: auto;

		margin-right: auto;

		max-width: 100%;

	}

}



/* Pasek zaufania — lekki „float” nad kolejną sekcją */

.bluemed-trust-strip-wrap {

	margin-top: -2.75rem;

	margin-bottom: 0;

	position: relative;

	z-index: 2;

}



.bluemed-trust-strip {

	box-shadow: var(--bluemed-shadow-soft);

	border: 1px solid rgba(168, 168, 168, 0.2);

}



.bluemed-trust-strip a {

	color: var(--accent-primary);

	text-decoration: none;

	border-bottom: 1px solid transparent;

}



.bluemed-trust-strip a:hover {

	color: var(--bluemed-oak);

	border-bottom-color: var(--bluemed-oak);

}



/* Stopka grafitowa — typografia i shortcodes */

.bluemed-footer.has-graphite-background-color {

	color: rgba(255, 255, 255, 0.88);

}



.bluemed-footer .wp-block-site-title a {

	color: #fff !important;

}



.bluemed-footer .wp-block-site-title a:hover {

	color: var(--bluemed-oak) !important;

}



.bluemed-footer .bluemed-sc--phone {

	color: #fff !important;

	font-size: 1.35rem;

	text-decoration: none;

	border-bottom: 1px solid rgba(205, 216, 228, 0.45);

}



.bluemed-footer .bluemed-sc--phone:hover {

	color: var(--bluemed-oak) !important;

}



.bluemed-footer .bluemed-sc--email a {

	color: #fff;

	border-bottom: 1px solid rgba(205, 216, 228, 0.45);

}



.bluemed-footer .bluemed-sc--email a:hover {

	color: var(--bluemed-oak);

}



.bluemed-footer .bluemed-sc--address,

.bluemed-footer .bluemed-sc--hours,

.bluemed-footer .bluemed-sc--address p,

.bluemed-footer .bluemed-sc--hours p {

	color: #ffffff !important;

	opacity: 1 !important;

}



.bluemed-footer .wp-block-site-title,

.bluemed-footer .wp-block-site-title a {

	color: #ffffff !important;

}



.bluemed-footer .bluemed-social a {

	color: rgba(255, 255, 255, 0.9);

	border-bottom-color: rgba(205, 216, 228, 0.35);

}



.bluemed-footer p.has-white-color a {

	color: rgba(255, 255, 255, 0.88);

	text-decoration: none;

	border-bottom: 1px solid rgba(205, 216, 228, 0.35);

}



.bluemed-footer p.has-white-color a:hover {

	color: var(--bluemed-oak);

}



/* Testimonial split — na mobile pełna szerokość kolumn */

@media (max-width: 781px) {

	.bluemed-testimonial-split .bluemed-testimonial-split__visual {

		min-height: 220px !important;

	}

}



/* Wyróżniony lekarz — delikatne uniesienie */

.bluemed-doctor-card--lead {

	position: relative;

}



@media (min-width: 782px) {

	.bluemed-doctor-card--lead {

		transform: translateY(-0.35rem);

	}

}



/* Statystyki — subtelne separatory między kolumnami */

@media (min-width: 782px) {

	.bluemed-trust-stats__cols > .wp-block-column:not(:first-child) {

		border-left: 1px solid var(--bluemed-line);

		padding-left: clamp(1.25rem, 3vw, 2.5rem);

	}

}



.bluemed-trust-stats .wp-block-heading {

	letter-spacing: -0.03em;

}



/* Pas CTA grafitowy */

.bluemed-cta-band {

	position: relative;

	overflow: hidden;

}



.bluemed-cta-band::before {

	content: "";

	position: absolute;

	inset: 0;

	background: radial-gradient(120% 80% at 50% -20%, rgba(205, 216, 228, 0.12), transparent 55%);

	pointer-events: none;

}



.bluemed-cta-band > .wp-block-group {

	position: relative;

	z-index: 1;

}



/* Tabele (cennik) */

.wp-block-table table {

	border-collapse: separate;

	border-spacing: 0;

	border-radius: var(--bluemed-radius-md);

	overflow: hidden;

	box-shadow: var(--bluemed-shadow-card);

}



.wp-block-table td,

.wp-block-table th {

	padding: 0.85rem 1.15rem;

	border-color: var(--bluemed-line) !important;

	vertical-align: middle;

}



.wp-block-table tr:nth-child(even) td {

	background: rgba(245, 242, 237, 0.45);

}



.wp-block-table td:last-child {

	font-weight: 600;

	color: var(--text-heading);

	white-space: nowrap;

}



/* Lista wpisów / archiwum — karty wierszy */

.wp-block-query .wp-block-post-template.is-layout-flow > *,

.wp-block-query .wp-block-post-template > li,

.wp-block-latest-posts__list > li {

	border-bottom: 1px solid var(--bluemed-line);

	padding-bottom: var(--wp--preset--spacing--50, 1.5rem);

	margin-bottom: var(--wp--preset--spacing--50, 1.5rem);

}



.wp-block-query .wp-block-post-template.is-layout-flow > *:last-child,

.wp-block-query .wp-block-post-template > li:last-child,

.wp-block-latest-posts__list > li:last-child {

	border-bottom: none;

	margin-bottom: 0;

	padding-bottom: 0;

}



.wp-block-latest-posts__post-title {

	font-weight: 600;

	letter-spacing: -0.02em;

	transition: color 0.2s ease;

}



.wp-block-latest-posts__post-title a:hover {

	color: var(--bluemed-oak);

}



.bluemed-latest-wrap .wp-block-latest-posts__featured-image img {

	border-radius: var(--bluemed-radius-md);

}



/* Sidebar blog */

.bluemed-sidebar-card .wp-block-heading {

	letter-spacing: 0.08em;

	text-transform: uppercase;

	font-size: 0.75rem !important;

	color: var(--bluemed-ash);

	margin-bottom: 1rem;

}



.wp-block-categories-list a {

	transition: color 0.2s ease, padding-left 0.2s ease;

}



.wp-block-categories-list a:hover {

	color: var(--bluemed-oak);

	padding-left: 0.15rem;

}



/* Stopka — górny akcent */

.bluemed-footer {

	position: relative;

}



.bluemed-footer::before {

	content: none;

	display: none;

}



/* Kadrowanie obrazów — spójność z motywem */

.wp-block-post-featured-image img,

.wp-block-image img {

	border-radius: inherit;

}



.wp-block-post-featured-image {

	overflow: hidden;

}



/* Kategorie wpisów (single) */

.wp-block-post-terms a {

	font-weight: 600;

	font-size: 0.8125rem;

	letter-spacing: 0.04em;

	text-transform: uppercase;

}



/* Compact / mobile header — logo + menu toggle (≤1100px) */

@media (max-width: 1100px) {

	.bluemed-header {

		position: sticky;

		top: 0;

		z-index: 300;

		padding-top: max(0.55rem, env(safe-area-inset-top, 0px)) !important;

		padding-bottom: 0.55rem !important;

		background-color: rgba(255, 255, 255, 0.98) !important;

		backdrop-filter: saturate(160%) blur(12px);

		-webkit-backdrop-filter: saturate(160%) blur(12px);

		box-shadow: 0 1px 0 rgba(21, 61, 138, 0.08);

	}



	body.bluemed-mobile-nav-open .bluemed-header {

		z-index: 420;

		box-shadow: 0 1px 0 rgba(21, 61, 138, 0.12);

	}



	.bluemed-header > .wp-block-group {

		padding-left: clamp(1rem, 4.5vw, 1.35rem);

		padding-right: clamp(1rem, 4.5vw, 1.35rem);

	}



	.bluemed-header__row.wp-block-columns,

	.bluemed-header__row.is-not-stacked-on-mobile {

		display: flex !important;

		flex-direction: row !important;

		flex-wrap: nowrap !important;

		align-items: center !important;

		justify-content: space-between !important;

		gap: 0.75rem !important;

	}



	.bluemed-header__row.is-not-stacked-on-mobile > .wp-block-column,

	.bluemed-header__row > .wp-block-column {

		flex-basis: auto !important;

		width: auto !important;

		max-width: none !important;

		min-width: 0;

		margin: 0 !important;

	}



	.bluemed-header__brand {

		flex: 1 1 auto !important;

		min-width: 0 !important;

		max-width: calc(100% - 3.5rem);

	}



	.bluemed-header__brand .bluemed-brand-logo__img,

	.bluemed-header__brand .bluemed-site-logo img,

	.bluemed-header__brand .bluemed-site-logo .custom-logo {

		max-width: min(210px, 58vw) !important;

		max-height: 62px !important;

	}



	/* CTA tylko w panelu menu w trybie compact */

	.bluemed-header__cta-col {

		display: none !important;

	}



	.bluemed-header__nav-col {

		flex: 0 0 auto !important;

		width: auto !important;

		margin-left: auto !important;

	}



	.bluemed-header__nav-col .bluemed-primary-nav {

		display: flex;

		align-items: center;

		justify-content: flex-end;

		width: auto;

	}



	.bluemed-header,

	.bluemed-header > .wp-block-group,

	.bluemed-header__nav-col {

		overflow: visible;

	}

}



@media (max-width: 400px) {

	.bluemed-header__brand .bluemed-brand-logo__img,

	.bluemed-header__brand .bluemed-site-logo img {

		max-width: min(180px, 52vw) !important;

		max-height: 56px !important;

	}

}



/* Formularz — focus */

.bluemed-field input:focus,

.bluemed-field select:focus,

.bluemed-field textarea:focus {

	border-color: var(--accent-primary);

	box-shadow: 0 0 0 3px rgba(21, 61, 138, 0.18);

	outline: none;

}



/* ——— Strony wewnętrzne — intro, rytm sekcji ——— */

.bluemed-page-intro .wp-block-heading {

	max-width: min(100%, 26ch);

}



.bluemed-page-intro > p.has-xs-font-size:first-child {

	margin-bottom: 0;

}



/* Hero — delikatny „wash” (nadal edytowalny w Gutenbergu) */

.bluemed-hero-band {

	position: relative;

}



.bluemed-hero-band::before {

	content: "";

	position: absolute;

	inset: 0;

	background: radial-gradient(85% 55% at 18% 0%, rgba(205, 216, 228, 0.18), transparent 58%);

	pointer-events: none;

}



.bluemed-hero-band > .wp-block-group {

	position: relative;

	z-index: 1;

}



/* Cennik — hierarchia nagłówków sekcji */

.bluemed-pricing-section h2 {

	position: relative;

	margin-bottom: var(--wp--preset--spacing--50, 1.5rem);

	padding-left: 1rem;

}



.bluemed-pricing-section h2::before {

	content: "";

	position: absolute;

	left: 0;

	top: 0.28em;

	bottom: 0.28em;

	width: 3px;

	border-radius: 999px;

	background: var(--bluemed-oak);

}



.bluemed-pricing-section--alt h2::before {

	opacity: 0.95;

}



/* Kontakt — panel danych */

.bluemed-contact-panel .wp-block-heading {

	margin-top: 0;

}



.bluemed-contact-panel .wp-block-heading:not(:first-child) {

	margin-top: var(--wp--preset--spacing--60, 2rem);

}



/* Płatności — czytelna sekcja */

.bluemed-pay-strip .bluemed-pay-badges {

	margin-top: 0.25rem;

}



/* O nas — wartości */

.bluemed-values-panel {

	border-left: 4px solid var(--bluemed-oak);

}



.bluemed-values-panel .wp-block-list {

	margin: 0;

	padding-left: 1.15rem;

}



.bluemed-values-panel .wp-block-list li::marker {

	color: var(--bluemed-oak);

}



/* Timeline — punkty przy akapitach */

.bluemed-timeline .wp-block-separator {

	margin-top: var(--wp--preset--spacing--50, 1.5rem);

	margin-bottom: var(--wp--preset--spacing--60, 2rem);

	max-width: 3.5rem;

	border-width: 2px;

}



.bluemed-timeline p.has-md-font-size {

	position: relative;

	padding-left: 1.35rem;

	margin-bottom: 1.1rem;

}



.bluemed-timeline p.has-md-font-size::before {

	content: "";

	position: absolute;

	left: 0;

	top: 0.55em;

	width: 7px;

	height: 7px;

	border-radius: 50%;

	background: linear-gradient(145deg, var(--bluemed-oak), #c4a882);

	box-shadow: 0 0 0 3px rgba(205, 216, 228, 0.25);

}



/* Zespół — placeholder zdjęcia */

.bluemed-team-photo {

	background: linear-gradient(155deg, #efe4d4, var(--bluemed-oak)) !important;

	box-shadow:

		inset 0 1px 0 rgba(255, 255, 255, 0.55),

		0 12px 28px rgba(21, 61, 138, 0.08);

}



/* Formularz rejestracji — obudowa */

.bluemed-reg-shell .bluemed-reg-form {

	margin-top: 0;

}



/* FAQ / szczegóły — „akordeon” premium */

.wp-block-details {

	border: 1px solid var(--bluemed-line);

	border-radius: var(--bluemed-radius-sm);

	padding: 0.65rem 1rem;

	background: #fff;

	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.9) inset;

	transition:

		border-color 0.22s var(--bluemed-ease-out),

		box-shadow 0.25s ease;

}



.wp-block-details:hover {

	border-color: rgba(205, 216, 228, 0.45);

}



.wp-block-details[open] {

	border-color: rgba(205, 216, 228, 0.55);

	box-shadow: var(--bluemed-shadow-card);

}



.wp-block-details summary {

	cursor: pointer;

	font-weight: 600;

	font-size: 0.9375rem;

	letter-spacing: -0.01em;

	list-style: none;

	display: flex;

	justify-content: space-between;

	align-items: flex-start;

	gap: 1rem;

}



.wp-block-details summary::-webkit-details-marker {

	display: none;

}



.wp-block-details summary::after {

	content: "+";

	flex-shrink: 0;

	font-weight: 700;

	color: var(--bluemed-oak);

	line-height: 1.2;

	transition: transform 0.25s var(--bluemed-ease-out);

}



.wp-block-details[open] summary::after {

	content: "−";

	transform: rotate(180deg);

}



/* Listy w treści — mniej „domyślnego WP” */

main .wp-block-list li::marker {

	color: rgba(205, 216, 228, 0.95);

}



main .wp-block-list li {

	padding-left: 0.15rem;

}



/* Stopka — newsletter jako „panel” */

.bluemed-footer__newsletter {

	margin-top: var(--wp--preset--spacing--60, 2rem);

	padding-left: clamp(1rem, 3vw, 1.75rem) !important;

	padding-right: clamp(1rem, 3vw, 1.75rem) !important;

	border-radius: var(--bluemed-radius-md);

	background: rgba(255, 255, 255, 0.04);

	border: 1px solid rgba(255, 255, 255, 0.1);

	box-shadow: 0 18px 48px rgba(21, 61, 138, 0.12);

}



.bluemed-footer__newsletter > p:first-of-type {

	letter-spacing: 0.12em !important;

}



/* Stopka — wiersz prawny */

.bluemed-footer__legal {

	gap: 0.75rem 1.5rem;

	align-items: center;

}



@media (max-width: 781px) {

	.bluemed-footer__legal {

		flex-direction: column;

		align-items: center;

		text-align: center;

	}

}



/* Skip link — widoczny focus bez szorstkości */

.skip-link:focus,

.wp-skip-link:focus {

	outline: 2px solid var(--accent-secondary);

	outline-offset: 3px;

}



/* ——— Redesign: hero mega, usługi, ikony Lucide, strona usługi ——— */

.bluemed-lucide,

.bluemed-lucide svg {

	display: block;

	width: 1.5rem;

	height: 1.5rem;

	color: var(--accent-primary);

	stroke: currentColor;

}



.bluemed-lucide--lg,

.bluemed-lucide--lg svg {

	width: 2rem;

	height: 2rem;

}



.bluemed-trust-ribbon__ico,

.bluemed-trust-ribbon__ico svg {

	width: 1.75rem;

	height: 1.75rem;

}



.bluemed-svc-card__icon,

.bluemed-svc-card__icon svg {

	width: 1.65rem;

	height: 1.65rem;

	margin-bottom: 0.15rem;

}



.bluemed-benefit-ico,

.bluemed-benefit-ico svg {

	width: 2.1rem;

	height: 2.1rem;

}



.bluemed-hero-mega {

	background: linear-gradient(115deg, var(--bluemed-sand) 0%, #F8F9FD 42%, #F0F3FA 100%);

	overflow: hidden;

}



.bluemed-hero-mega__cols {

	min-height: min(88vh, 920px);

}



.bluemed-hero-mega__copy {

	background: transparent;

}



@media (min-width: 782px) {

	.bluemed-hero-mega__visual-inner {

		min-height: min(88vh, 920px);

		display: flex;

		flex-direction: column;

		justify-content: flex-end;

	}

}



.bluemed-hero-mega__chips p {

	border-radius: 999px;

}



.bluemed-trust-ribbon {

	border-block: 1px solid var(--bluemed-line);

}



.bluemed-trust-stats--float {

	margin-top: clamp(-3.5rem, -6vw, -1.5rem);

	position: relative;

	z-index: 3;

	box-shadow: var(--bluemed-shadow-soft);

	border-radius: 0 0 24px 24px;

}



.bluemed-svc-grid-wrap .bluemed-svc-card {

	overflow: hidden;

	transition:

		transform 0.32s var(--bluemed-ease-out),

		box-shadow 0.32s var(--bluemed-ease-out);

}



.bluemed-svc-grid-wrap .bluemed-svc-card:hover {

	transform: translateY(-4px);

	box-shadow: var(--bluemed-shadow-soft);

}



.bluemed-page-services-hero {

	background: linear-gradient(180deg, #F8F9FD 0%, var(--bluemed-white) 100%);

}



.bluemed-service-hero-split__cols {

	min-height: clamp(420px, 65vh, 720px);

}



.bluemed-service-hero-split__text .wp-block-group {

	min-height: 100%;

}



.bluemed-service-hero-split__media {

	display: flex;

	flex-direction: column;

}



.bluemed-service-hero-split__media .wp-block-image {

	flex: 1;

	margin: 0;

	display: flex;

}



.bluemed-service-hero-split__media .wp-block-image img {

	width: 100%;

	height: 100%;

	min-height: 360px;

	object-fit: cover;

	border-radius: 0 !important;

}



@media (max-width: 781px) {

	.bluemed-service-hero-split__media .wp-block-image img {

		min-height: 260px;

		border-radius: var(--bluemed-radius-md) !important;

	}



	.bluemed-hero-mega__cols {

		min-height: 0;

	}



	.bluemed-trust-stats--float {

		margin-top: 0;

		border-radius: 0;

	}

}



.bluemed-service-hero-split .wp-block-post-title a,

.bluemed-service-hero-split .wp-block-post-title {

	color: #fff !important;

	text-decoration: none;

}



.bluemed-service-hero-split .wp-block-post-excerpt {

	color: rgba(255, 255, 255, 0.88) !important;

}



.bluemed-counter {

	font-variant-numeric: tabular-nums;

}



.has-graphite-background-color .wp-block-button.is-style-outline .wp-block-button__link {

	border-color: rgba(255, 255, 255, 0.45) !important;

	color: #fff !important;

}



.has-graphite-background-color .wp-block-button.is-style-outline .wp-block-button__link:hover {

	border-color: #fff !important;

	color: var(--bluemed-oak) !important;

}



/* ——— v1.2: nagłówek jednoliniowy, hero v2, ząb, CTA bez „szwu”, opinie ——— */

@media (min-width: 1101px) {

	.bluemed-header__row .wp-block-columns {

		align-items: center;

	}



	.bluemed-header__nav-col .bluemed-nav .wp-block-navigation__container,

	.bluemed-header__nav-col .bluemed-nav__list {

		flex-wrap: nowrap !important;

		justify-content: center;

		white-space: nowrap;

	}



	.bluemed-header__cta-col .wp-block-buttons {

		justify-content: flex-end;

		align-items: center;

	}

}



/* Tighter nav gaps on mid-width laptops so labels stay fully readable */

@media (min-width: 1101px) and (max-width: 1366px) {

	.bluemed-nav .wp-block-navigation__container,

	.bluemed-nav__list {

		gap: clamp(0.35rem, 1vw, 0.9rem) !important;

	}

}



.bluemed-latest-wrap {

	margin-bottom: 0 !important;

}



.bluemed-cta-band--flush {

	margin-top: -2px;

	border-top: 1px solid rgba(21, 61, 138, 0.35);

}



.bluemed-testimonials-band {

	position: relative;

}



.bluemed-testimonials-band::before {

	content: "";

	position: absolute;

	inset: 0;

	pointer-events: none;

	background: radial-gradient(55% 40% at 12% 0%, rgba(205, 216, 228, 0.12), transparent 62%);

}



.bluemed-testimonial-split__visual {

	overflow: hidden;

}



.bluemed-testimonial-split__visual img {

	display: block;

}



.bluemed-hero-mega--v2 .bluemed-hero-mega__cols {

	min-height: clamp(440px, 58vh, 680px);

}



@media (min-width: 782px) {

	.bluemed-hero-mega--v2 .bluemed-hero-mega__visual-inner {

		position: relative;

		min-height: clamp(440px, 58vh, 680px);

		justify-content: center;

		padding-top: var(--wp--preset--spacing--40, 1.25rem) !important;

		padding-bottom: var(--wp--preset--spacing--40, 1.25rem) !important;

	}



	.bluemed-hero-mega--v2 .bluemed-hero-mega__photo {

		position: relative;

		z-index: 1;

		margin: 0;

	}



	.bluemed-hero-mega--v2 .bluemed-hero-mega__photo img {

		max-height: min(64vh, 620px);

		border-radius: var(--bluemed-radius-lg);

	}



	.bluemed-hero-tooth {

		position: absolute;

		z-index: 4;

		right: clamp(-1.5rem, -2vw, -0.25rem);

		top: 6%;

		width: min(38%, 240px);

		max-width: 260px;

		margin: 0;

		pointer-events: none;

		filter: drop-shadow(0 26px 42px rgba(21, 61, 138, 0.16));

		animation: bluemed-tooth-float 6s ease-in-out infinite;

	}



	.bluemed-hero-tooth img {

		width: 100%;

		height: auto;

		display: block;

	}



	.bluemed-hero-mega--v2 .bluemed-hero-mega__stats {

		position: absolute;

		z-index: 3;

		left: clamp(0.5rem, 2.5vw, 1.75rem);

		bottom: clamp(0.75rem, 3vw, 2rem);

		width: min(100%, 300px);

		max-width: calc(100% - 1.5rem);

		box-shadow: 0 22px 56px rgba(21, 61, 138, 0.14);

	}

}



@media (max-width: 781px) {

	.bluemed-hero-mega--v2 .bluemed-hero-mega__visual-inner {

		position: relative;

		padding-top: var(--wp--preset--spacing--40, 1.25rem) !important;

	}



	.bluemed-hero-tooth {

		position: absolute;

		right: 0.5rem;

		top: 0.75rem;

		width: min(42%, 160px);

		z-index: 2;

		pointer-events: none;

		filter: drop-shadow(0 14px 28px rgba(21, 61, 138, 0.12));

	}



	.bluemed-hero-tooth img {

		width: 100%;

		height: auto;

		display: block;

	}



	.bluemed-hero-mega--v2 .bluemed-hero-mega__stats {

		position: relative;

		margin-top: -1.75rem;

		margin-left: auto;

		margin-right: auto;

		max-width: 22rem;

		z-index: 3;

	}

}



@keyframes bluemed-tooth-float {

	0%,

	100% {

		transform: translateY(0) rotate(-1deg);

	}

	50% {

		transform: translateY(-10px) rotate(1deg);

	}

}



@media (prefers-reduced-motion: reduce) {

	.bluemed-hero-tooth {

		animation: none !important;

	}

}



/* ——— Homepage hero — asymetryczny „lux clinic” (tylko .bluemed-hero-lux) ——— */

.bluemed-hero-lux {

	position: relative;

	isolation: isolate;

	overflow: clip;

	background:

		linear-gradient(118deg, #F0F3FA 0%, #F8F9FD 38%, #ffffff 52%, #EAF0FA 100%);

}



.bluemed-hero-lux::before {

	content: "";

	position: absolute;

	inset: -20% -10% auto -15%;

	height: 85%;

	background:

		radial-gradient(ellipse 90% 70% at 78% 18%, rgba(205, 216, 228, 0.35), transparent 55%),

		radial-gradient(ellipse 50% 45% at 12% 88%, rgba(255, 255, 255, 0.9), transparent 50%);

	pointer-events: none;

	z-index: 0;

}



.bluemed-hero-lux::after {

	content: "";

	position: absolute;

	right: -4%;

	bottom: -8%;

	width: min(52vw, 520px);

	height: min(52vw, 520px);

	border-radius: 46% 54% 48% 52% / 42% 48% 52% 58%;

	border: 1px solid rgba(21, 61, 138, 0.06);

	background: linear-gradient(145deg, rgba(255, 255, 255, 0.5), transparent 65%);

	opacity: 0.9;

	pointer-events: none;

	z-index: 0;

}



.bluemed-hero-lux__stage {

	position: relative;

	z-index: 1;

	max-width: 1480px;

	margin-left: auto;

	margin-right: auto;

	padding: clamp(1.75rem, 4.5vw, 3.25rem) clamp(1.15rem, 4vw, 2.75rem) clamp(2rem, 5vw, 3.75rem);

	display: flex;

	flex-direction: column;

	gap: clamp(1.5rem, 4vw, 2.5rem);

}



@media (min-width: 900px) {

	.bluemed-hero-lux__stage {

		display: grid;

		grid-template-columns: repeat(12, minmax(0, 1fr));

		grid-template-rows: minmax(0, 1fr);

		align-items: center;

		column-gap: clamp(0.25rem, 2vw, 1.25rem);

		min-height: clamp(440px, 56vh, 700px);

		padding-top: clamp(2rem, 4vw, 3rem);

		padding-bottom: clamp(2rem, 5vw, 3.5rem);

	}



	.bluemed-hero-lux__copy {

		grid-column: 1 / span 5;

		grid-row: 1;

		align-self: center;

		padding-right: clamp(0.5rem, 2vw, 2rem);

		max-width: 36rem;

	}



	.bluemed-hero-lux__visual {

		grid-column: 5 / -1;

		grid-row: 1;

		margin-left: clamp(-2.5rem, -4vw, -0.75rem);

	}

}



.bluemed-hero-lux__copy {

	position: relative;

}



.bluemed-hero-lux__kicker {

	display: inline-flex;

	align-items: center;

	gap: 0.65rem;

	margin-bottom: 0;

}



.bluemed-hero-lux__kicker::before {

	content: "";

	width: 8px;

	height: 8px;

	border-radius: 999px;

	background: linear-gradient(135deg, var(--bluemed-oak), #c4a882);

	box-shadow: 0 0 0 6px rgba(205, 216, 228, 0.2);

	flex-shrink: 0;

}



.bluemed-hero-lux__title {

	max-width: 14ch;

	font-weight: 700;

	color: var(--text-heading);

}



@media (min-width: 900px) {

	.bluemed-hero-lux__title {

		max-width: 12ch;

	}

}



.bluemed-hero-lux__lead {

	max-width: 34rem;

	color: rgba(21, 61, 138, 0.88);

}



.bluemed-hero-lux__trust {

	row-gap: 0.65rem !important;

}



.bluemed-hero-lux__trust-item {

	align-items: center;

	padding: 0.45rem 0.85rem 0.45rem 0.55rem;

	border-radius: 999px;

	background: rgba(255, 255, 255, 0.72);

	backdrop-filter: blur(10px);

	-webkit-backdrop-filter: blur(10px);

	border: 1px solid rgba(255, 255, 255, 0.95);

	box-shadow: 0 4px 20px rgba(21, 61, 138, 0.04);

}



.bluemed-hero-lux__trust-item p {

	margin: 0;

	color: var(--text-primary);

}



.bluemed-hero-lux__trust-ico,

.bluemed-hero-lux__trust-ico svg {

	width: 1.15rem !important;

	height: 1.15rem !important;

	flex-shrink: 0;

}



.bluemed-hero-lux__cta-wrap .wp-block-buttons {

	gap: 0.75rem 1rem !important;

	align-items: center;

}



.bluemed-hero-lux__cta-primary .wp-block-button__link {

	padding: 1rem 1.85rem !important;

	font-size: 0.9375rem !important;

	font-weight: 700 !important;

	letter-spacing: 0.02em !important;

	border-radius: 999px !important;

	box-shadow: 0 14px 40px rgba(21, 61, 138, 0.18);

	transition:

		transform 0.25s var(--bluemed-ease-out),

		box-shadow 0.25s var(--bluemed-ease-out),

		background-color 0.2s ease;

}



.bluemed-hero-lux__cta-primary .wp-block-button__link:hover {

	transform: translateY(-2px);

	box-shadow: 0 18px 48px rgba(21, 61, 138, 0.22);

	background-color: #12367A !important;

}



.bluemed-hero-lux__cta-secondary .wp-block-button__link {

	padding: 0.95rem 1.5rem !important;

	font-weight: 600 !important;

	border-radius: 999px !important;

	border-width: 1.5px !important;

}



.bluemed-hero-lux__cta-note {

	max-width: 26rem;

	line-height: 1.5;

}



.bluemed-hero-lux__visual {

	position: relative;

	align-self: stretch;

	min-height: clamp(280px, 42vw, 460px);

}



.bluemed-hero-lux__visual-ring {

	position: absolute;

	inset: 10% 4% 14% 22%;

	border-radius: 48% 52% 58% 42% / 44% 48% 52% 56%;

	border: 1px solid rgba(21, 61, 138, 0.07);

	background: linear-gradient(168deg, rgba(255, 255, 255, 0.55), transparent 70%);

	pointer-events: none;

	z-index: 0;

}



.bluemed-hero-lux__photo {

	position: relative;

	z-index: 1;

	margin: 0;

	max-width: min(100%, 620px);

	margin-left: auto;

}



.bluemed-hero-lux__photo img {

	display: block;

	width: 100%;

	max-height: min(58vh, 580px);

	object-fit: cover;

	object-position: center 12%;

	border-radius: clamp(20px, 3.5vw, 36px) clamp(20px, 3.5vw, 36px) clamp(20px, 3.5vw, 36px) clamp(8px, 1.5vw, 16px);

	box-shadow:

		0 32px 80px rgba(21, 61, 138, 0.12),

		0 1px 0 rgba(255, 255, 255, 0.65) inset;

}



.bluemed-hero-lux__tooth {

	position: absolute;

	z-index: 4;

	right: clamp(-1rem, -1vw, 0.25rem);

	top: clamp(0.5rem, 4vh, 2.5rem);

	width: min(38%, 200px);

	max-width: 220px;

	margin: 0;

	pointer-events: none;

	filter: drop-shadow(0 28px 50px rgba(21, 61, 138, 0.18));

	animation: bluemed-lux-tooth 7s ease-in-out infinite;

}



.bluemed-hero-lux__tooth img {

	width: 100%;

	height: auto;

	display: block;

}



@keyframes bluemed-lux-tooth {

	0%,

	100% {

		transform: translateY(0) rotate(-2deg);

	}

	50% {

		transform: translateY(-12px) rotate(1.5deg);

	}

}



@media (prefers-reduced-motion: reduce) {

	.bluemed-hero-lux__tooth {

		animation: none !important;

	}

}



.bluemed-hero-lux__pulse {

	position: absolute;

	z-index: 3;

	left: clamp(0.25rem, 2vw, 1.25rem);

	bottom: clamp(0.5rem, 2.5vw, 1.5rem);

	width: min(100%, 280px);

	max-width: calc(100% - 1.5rem);

	box-shadow: 0 24px 60px rgba(21, 61, 138, 0.12);

	border: 1px solid rgba(255, 255, 255, 0.85) !important;

}



.bluemed-hero-lux__pulse p {

	margin-bottom: 0;

}



@media (max-width: 899px) {

	.bluemed-hero-lux__stage {

		padding-top: clamp(1.25rem, 4vw, 2rem);

	}



	.bluemed-hero-lux__visual {

		order: -1;

		min-height: 0;

		padding-bottom: 0.5rem;

	}



	.bluemed-hero-lux__title {

		max-width: none;

	}



	.bluemed-hero-lux__photo {

		margin-left: 0;

		margin-right: 0;

		max-width: none;

	}



	.bluemed-hero-lux__photo img {

		max-height: min(48vh, 420px);

		border-radius: 24px;

	}



	.bluemed-hero-lux__tooth {

		width: min(34%, 150px);

		right: 0.35rem;

		top: 0.5rem;

	}



	.bluemed-hero-lux__pulse {

		position: relative;

		left: auto;

		bottom: auto;

		margin-top: -2.25rem;

		margin-left: auto;

		margin-right: auto;

		max-width: 22rem;

	}

}



.bluemed-services-hero-premium {

	position: relative;

	overflow: hidden;

}



.bluemed-services-hero-premium::before {

	content: "";

	position: absolute;

	inset: 0;

	pointer-events: none;

	background: radial-gradient(70% 55% at 88% 12%, rgba(205, 216, 228, 0.2), transparent 58%);

}



.bluemed-services-hero-premium > * {

	position: relative;

	z-index: 1;

}



.bluemed-services-hero__badges p {

	border-radius: 999px;

}



.bluemed-doctors-band {

	position: relative;

}



.bluemed-doctors-band::after {

	content: "";

	display: block;

	position: absolute;

	left: 8%;

	right: 8%;

	bottom: 0;

	height: 1px;

	background: linear-gradient(90deg, transparent, var(--bluemed-line), transparent);

	opacity: 0.65;

}



.bluemed-doctor-avatar {

	margin: 0;

	overflow: hidden;

}



.bluemed-doctor-avatar img {

	display: block;

	box-shadow: 0 8px 28px rgba(21, 61, 138, 0.08);

}



.bluemed-doctor-avatar--lg img {

	max-width: 152px;

	margin: 0 auto;

}



.bluemed-doctor-card--compact .bluemed-doctor-avatar--sm {

	margin-bottom: 0 !important;

}



.bluemed-team-card__photo {

	margin: 0;

	overflow: hidden;

}



.bluemed-team-card__photo img {

	display: block;

}



.bluemed-team-grid-wrap .bluemed-team-card {

	transition:

		transform 0.3s var(--bluemed-ease-out),

		box-shadow 0.3s var(--bluemed-ease-out);

}



.bluemed-team-grid-wrap .bluemed-team-card:hover {

	transform: translateY(-4px);

	box-shadow: var(--bluemed-shadow-soft);

}



.bluemed-reg-page .bluemed-reg-shell {

	box-shadow: var(--bluemed-shadow-card);

}



.bluemed-reg-form {

	gap: 1.25rem 1.5rem;

}



.bluemed-reg-form__trust {

	display: flex;

	flex-wrap: wrap;

	gap: 0.65rem 1.25rem;

	margin-bottom: 1.35rem;

	padding-bottom: 1.15rem;

	border-bottom: 1px solid var(--bluemed-line);

	font-size: 0.8125rem;

	color: var(--text-primary);

	line-height: 1.45;

}



.bluemed-reg-form__trust-item {

	display: inline-flex;

	align-items: center;

	gap: 0.4rem;

	max-width: 100%;

}



.bluemed-reg-form__trust-ico {

	width: 1.1rem !important;

	height: 1.1rem !important;

	flex-shrink: 0;

	color: var(--bluemed-oak);

}



.bluemed-field label {

	font-size: 0.78rem;

	margin-bottom: 0.45rem;

}



.bluemed-field input,

.bluemed-field select,

.bluemed-field textarea {

	padding: 0.9rem 1.15rem;

	border-radius: var(--bluemed-radius-sm);

	font-size: 1rem;

}



.bluemed-reg-actions {

	margin-top: 0.75rem;

}



.bluemed-reg-actions .wp-block-button__link.has-oak-background-color {

	font-weight: 700;

	padding-left: 2rem;

	padding-right: 2rem;

	box-shadow: 0 12px 32px rgba(21, 61, 138, 0.1);

}



.bluemed-blog-hero-band {

	position: relative;

	background: linear-gradient(165deg, #F8F9FD 0%, #ffffff 55%, #F4F5FA 100%);

}



.bluemed-blog-hero-band::before {

	content: "";

	position: absolute;

	inset: 0;

	pointer-events: none;

	background: radial-gradient(50% 40% at 12% 0%, rgba(205, 216, 228, 0.14), transparent 55%);

}



.bluemed-blog-featured {

	overflow: hidden;

	transition: box-shadow 0.35s var(--bluemed-ease-out), transform 0.35s var(--bluemed-ease-out);

}



.bluemed-blog-featured:hover {

	box-shadow: var(--bluemed-shadow-soft);

	transform: translateY(-2px);

}



.bluemed-blog-featured .wp-block-post-featured-image img {

	width: 100%;

	height: 100%;

	min-height: 260px;

	object-fit: cover;

}



.bluemed-blog-card {

	overflow: hidden;

	transition:

		transform 0.28s var(--bluemed-ease-out),

		box-shadow 0.28s var(--bluemed-ease-out);

}



.bluemed-blog-card:hover {

	transform: translateY(var(--bm-card-lift, -4px));

	box-shadow: var(--bm-card-shadow-hover, var(--bluemed-shadow-soft));

}



.bluemed-blog-card .wp-block-post-featured-image img {

	width: 100%;

	aspect-ratio: 16 / 10;

	object-fit: cover;

}



@media (max-width: 781px) {

	.bluemed-blog-featured .wp-block-columns {

		flex-direction: column !important;

	}



	.bluemed-blog-featured .wp-block-post-featured-image img {

		border-radius: 32px 32px 0 0 !important;

		min-height: 220px;

	}

}



.bluemed-svc-grid-wrap .bluemed-svc-card .is-style-bluemed-card-photo img {

	transition: transform 0.45s var(--bluemed-ease-out);

}



.bluemed-svc-grid-wrap .bluemed-svc-card:hover .is-style-bluemed-card-photo img {

	transform: scale(1.04);

}



.bluemed-about-band {

	position: relative;

}



.bluemed-about-band::before {

	content: "";

	position: absolute;

	right: 6%;

	top: 12%;

	width: 120px;

	height: 120px;

	border-radius: 50%;

	border: 1px solid rgba(205, 216, 228, 0.35);

	pointer-events: none;

}



@media (max-width: 900px) {

	.bluemed-blog-grid-band .wp-block-post-template.is-layout-grid {

		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

	}

}



@media (max-width: 560px) {

	.bluemed-blog-grid-band .wp-block-post-template.is-layout-grid {

		grid-template-columns: 1fr !important;

	}

}



/* ========== Homepage flagship (art direction — tylko sekcje strony głównej) ========== */



/* Pasek pod hero — asymetryczny „split bar” */

.bluemed-home-strip {

	position: relative;

	z-index: 2;

	margin-top: clamp(-2.25rem, -4vw, -1rem);

}



.bluemed-home-strip__bar {

	display: flex;

	flex-wrap: wrap;

	align-items: stretch;

	gap: 0;

	border-radius: 22px;

	overflow: hidden;

	box-shadow: 0 28px 70px rgba(21, 61, 138, 0.12);

}



.bluemed-home-strip__links {

	flex: 1 1 320px;

	background: var(--bluemed-graphite);

	padding: clamp(1.25rem, 3vw, 1.75rem) clamp(1.25rem, 3vw, 2rem);

}



.bluemed-home-strip__links a {

	color: rgba(255, 255, 255, 0.92) !important;

	text-decoration: none;

	border-bottom: 1px solid transparent;

	transition:

		color 0.2s ease,

		border-color 0.2s ease;

}



.bluemed-home-strip__links a:hover {

	color: var(--bluemed-oak) !important;

	border-bottom-color: rgba(205, 216, 228, 0.5);

}



.bluemed-home-strip__dot {

	opacity: 0.45;

}



.bluemed-home-strip__stat {

	flex: 0 1 min(380px, 100%);

	background: #fff;

	padding: clamp(1.25rem, 3vw, 1.65rem) clamp(1.25rem, 3vw, 2rem);

	display: flex;

	flex-direction: column;

	justify-content: center;

}



.bluemed-home-strip__stat-ico,

.bluemed-home-strip__stat-ico svg {

	width: 1.5rem !important;

	height: 1.5rem !important;

	color: var(--bluemed-oak);

}



/* Wstążka zaufania — „mozaika” zamiast równych kolumn */

.bluemed-home-ribbon__grid {

	display: grid;

	gap: clamp(1rem, 2.2vw, 1.5rem);

}



@media (min-width: 900px) {

	.bluemed-home-ribbon__grid {

		grid-template-columns: 1.05fr 0.95fr 1fr 0.88fr;

		align-items: start;

	}



	.bluemed-home-ribbon__tile--2 {

		transform: translateY(1.25rem);

	}



	.bluemed-home-ribbon__tile--4 {

		transform: translateY(0.5rem);

	}

}



@media (max-width: 899px) {

	.bluemed-home-ribbon__grid {

		grid-template-columns: 1fr 1fr;

	}

}



@media (max-width: 560px) {

	.bluemed-home-ribbon__grid {

		grid-template-columns: 1fr;

	}

}



.bluemed-home-ribbon__tile {

	transition:

		transform 0.35s var(--bluemed-ease-out),

		box-shadow 0.35s var(--bluemed-ease-out);

}



.bluemed-home-ribbon__tile:hover {

	transform: translateY(-3px);

	box-shadow: var(--bluemed-shadow-soft);

}



.bluemed-home-ribbon__ico--on-dark,

.bluemed-home-ribbon__ico--on-dark svg {

	color: var(--bluemed-oak) !important;

	stroke: var(--bluemed-oak) !important;

}



/* Statystyki — karty + ikony */

.bluemed-home-stats .bluemed-home-stats__grid {

	display: grid;

	gap: clamp(1rem, 2vw, 1.5rem);

}



@media (min-width: 782px) {

	.bluemed-home-stats .bluemed-home-stats__grid {

		grid-template-columns: 1fr 1fr 1.08fr;

		align-items: stretch;

	}

}



.bluemed-home-stats__ico,

.bluemed-home-stats__ico svg {

	width: 1.65rem !important;

	height: 1.65rem !important;

	color: var(--bluemed-oak);

}



.bluemed-home-stats__ico--on-dark,

.bluemed-home-stats__ico--on-dark svg {

	color: var(--bluemed-oak) !important;

}



.bluemed-home-stats__suffix {

	color: var(--bluemed-oak);

	font-weight: 700;

	margin-left: 0.05em;

}



.bluemed-home-stats__card {

	transition:

		transform 0.3s var(--bluemed-ease-out),

		box-shadow 0.3s var(--bluemed-ease-out);

}



.bluemed-home-stats__card:hover {

	transform: translateY(-4px);

	box-shadow: var(--bluemed-shadow-soft);

}



.bluemed-trust-stats--float.bluemed-home-stats {

	margin-top: clamp(-2.5rem, -5vw, -1.25rem);

	position: relative;

	z-index: 3;

}



@media (max-width: 781px) {

	.bluemed-trust-stats--float.bluemed-home-stats {

		margin-top: 0;

	}



	.bluemed-home-stats .bluemed-home-stats__grid {

		grid-template-columns: 1fr;

	}

}



/* Usługi — bento */

.bluemed-home-services__head {

	gap: clamp(1rem, 3vw, 2rem);

	align-items: flex-end;

}



@media (min-width: 900px) {

	.bluemed-home-services__head {

		flex-wrap: nowrap;

	}



	.bluemed-home-services__head > p {

		max-width: 28rem;

		text-align: right;

	}

}



.bluemed-home-services__bento {

	display: grid;

	gap: clamp(0.85rem, 2vw, 1.35rem);

}



@media (min-width: 900px) {

	.bluemed-home-services__bento {

		grid-template-columns: repeat(12, minmax(0, 1fr));

		grid-auto-rows: minmax(0, auto);

	}



	.bluemed-home-svc-cell--a {

		grid-column: 1 / span 7;

		grid-row: 1 / span 2;

	}



	.bluemed-home-svc-cell--b {

		grid-column: 8 / span 5;

		grid-row: 1;

	}



	.bluemed-home-svc-cell--c {

		grid-column: 8 / span 5;

		grid-row: 2;

	}



	.bluemed-home-svc-cell--d {

		grid-column: 1 / span 4;

		grid-row: 3;

	}



	.bluemed-home-svc-cell--e {

		grid-column: 5 / span 4;

		grid-row: 3;

	}



	.bluemed-home-svc-cell--f {

		grid-column: 9 / span 4;

		grid-row: 3;

	}

}



@media (max-width: 899px) {

	.bluemed-home-services__bento {

		grid-template-columns: 1fr;

	}

}



.bluemed-home-svc-card--hero {

	display: flex;

	flex-direction: column;

	min-height: 100%;

}



.bluemed-home-svc-card--hero .bluemed-home-svc-card__img {

	flex: 1 1 auto;

	margin: 0;

	min-height: 220px;

	overflow: hidden;

}



.bluemed-home-svc-card--hero .bluemed-home-svc-card__img img {

	min-height: 260px;

	height: 100%;

	object-fit: cover;

}



.bluemed-home-services .bluemed-home-svc-card .is-style-bluemed-card-photo img,

.bluemed-home-services .bluemed-home-svc-card__img img {

	transition: transform 0.5s var(--bluemed-ease-out);

}



.bluemed-home-services .bluemed-home-svc-card:hover .is-style-bluemed-card-photo img,

.bluemed-home-services .bluemed-home-svc-card:hover .bluemed-home-svc-card__img img {

	transform: scale(1.05);

}



/* O klinice — editorial */

.bluemed-home-about__figure {

	position: relative;

}



.bluemed-home-about__photo-wrap {

	box-shadow: var(--bluemed-shadow-soft);

}



@media (min-width: 900px) {

	.bluemed-home-about__media {

		transform: translateY(1.5rem);

	}



	.bluemed-home-about__cols {

		align-items: flex-start !important;

	}

}



.bluemed-home-about__pull {

	max-width: 38rem;

}



/* Zespół — deck */

@media (min-width: 900px) {

	.bluemed-home-team .bluemed-home-team__deck {

		align-items: stretch;

	}



	.bluemed-home-team .bluemed-home-team__deck > .wp-block-column:last-child {

		transform: none;

	}

}



.bluemed-home-team .bluemed-doctor-card--lead {

	box-shadow: var(--bluemed-shadow-soft);

}



/* Opinie — ciemny pas */

.bluemed-home-testimonials {

	position: relative;

	overflow: clip;

}



.bluemed-home-testimonials::before {

	content: "";

	position: absolute;

	inset: 0;

	pointer-events: none;

	background: radial-gradient(55% 50% at 88% 20%, rgba(205, 216, 228, 0.12), transparent 55%);

}



.bluemed-home-testimonials__head > p {

	max-width: 22rem;

}



.bluemed-home-testimonials__frame {

	border-radius: 28px;

	overflow: hidden;

	box-shadow: 0 24px 60px rgba(21, 61, 138, 0.25);

}



.bluemed-home-testimonials__quote {

	position: relative;

	box-shadow: 0 28px 70px rgba(21, 61, 138, 0.18);

}



.bluemed-home-testimonials__mark,

.bluemed-home-testimonials__mark svg {

	width: 2rem !important;

	height: 2rem !important;

	color: var(--bluemed-oak);

	opacity: 0.85;

}



@media (max-width: 781px) {

	.bluemed-home-testimonials__split {

		flex-direction: column !important;

	}



	.bluemed-home-testimonials__visual,

	.bluemed-home-testimonials__quote-col {

		flex-basis: 100% !important;

	}

}



/* Blog — magazine */

.bluemed-home-magazine__featured {

	overflow: hidden;

	transition:

		box-shadow 0.35s var(--bluemed-ease-out),

		transform 0.35s var(--bluemed-ease-out);

}



.bluemed-home-magazine__featured:hover {

	box-shadow: var(--bluemed-shadow-soft);

	transform: translateY(-2px);

}



.bluemed-home-magazine__featured .wp-block-post-featured-image img {

	width: 100%;

	min-height: 280px;

	object-fit: cover;

}



.bluemed-home-magazine__tile {

	overflow: hidden;

	transition:

		transform 0.3s var(--bluemed-ease-out),

		box-shadow 0.3s var(--bluemed-ease-out);

}



.bluemed-home-magazine__tile:hover {

	transform: translateY(-4px);

	box-shadow: var(--bluemed-shadow-soft);

}



.bluemed-home-magazine__tile .wp-block-post-featured-image img {

	aspect-ratio: 16 / 10;

	object-fit: cover;

	width: 100%;

}



@media (max-width: 781px) {

	.bluemed-home-magazine__featured .wp-block-post-featured-image img {

		border-radius: 32px 32px 0 0 !important;

		min-height: 220px;

	}



	.bluemed-home-magazine .wp-block-post-template.is-layout-grid {

		grid-template-columns: 1fr !important;

	}

}



/* CTA finał */

.bluemed-home-cta {

	position: relative;

	overflow: clip;

}



.bluemed-home-cta__glow {

	position: absolute;

	inset: -40% -20% auto;

	height: 90%;

	background: radial-gradient(ellipse 70% 55% at 50% 0%, rgba(205, 216, 228, 0.2), transparent 58%);

	pointer-events: none;

}



.bluemed-home-cta__inner {

	position: relative;

	z-index: 1;

}



.bluemed-home-cta__trust {

	align-items: center;

	justify-content: center;

	gap: 0.75rem 1rem !important;

	font-size: clamp(1.05rem, 2.2vw, 1.35rem);

	font-weight: 600;

	letter-spacing: 0.04em;

}



/* Bloki shortcode nie rozwalają flexa (ikona + numer w jednym rzędzie) */

.bluemed-home-cta__trust > .wp-block-shortcode {

	display: contents;

}



.bluemed-home-cta__trust-ico,

.bluemed-home-cta__trust-ico svg {

	width: 1.35rem !important;

	height: 1.35rem !important;

	color: var(--bluemed-oak);

	flex-shrink: 0;

}



.bluemed-home-cta__btn-main .wp-block-button__link {

	padding: 1.05rem 2.25rem !important;

	font-size: 1rem !important;

	font-weight: 700 !important;

	box-shadow: 0 16px 48px rgba(21, 61, 138, 0.28);

}



.bluemed-home-cta__btn-sec .wp-block-button__link {

	padding: 1rem 1.75rem !important;

	font-weight: 600 !important;

}



/* Delikatny motion reveal dla sekcji flagowych */

.js-reveal.bluemed-home-strip,

.js-reveal.bluemed-home-ribbon,

.js-reveal.bluemed-home-stats,

.js-reveal.bluemed-home-services,

.js-reveal.bluemed-home-about,

.js-reveal.bluemed-home-team,

.js-reveal.bluemed-home-testimonials,

.js-reveal.bluemed-home-magazine,

.js-reveal.bluemed-home-cta {

	will-change: transform, opacity;

}



/* ==========================================================================

   HOMEPAGE V2 — Flagship premium redesign

   Senior UI Designer · Conversion Expert · Premium Dental Brand

   ========================================================================== */



/* --------------------------------------------------------------------------

   DESIGN TOKENS V2

   -------------------------------------------------------------------------- */

:root {

	--bm-sand-deep: #EAF0FA;

	--bm-sand-subtle: #F0F3FA;

	--bm-oak-deep: #CDD8E4;

	--bm-spa-muted: var(--bluemed-spa-muted);

	--bm-graphite-soft: var(--bluemed-terracotta-soft);

	--bm-shadow-hero: 0 40px 100px rgba(51, 52, 61, 0.08), 0 8px 32px rgba(21, 61, 138, 0.04);

	--bm-shadow-xl: 0 32px 80px rgba(51, 52, 61, 0.09), 0 6px 20px rgba(21, 61, 138, 0.05);

	--bm-shadow-float: 0 16px 48px rgba(51, 52, 61, 0.08), 0 2px 8px rgba(21, 61, 138, 0.04);

	--bm-radius-xl: 44px;

	--bm-radius-hero: 36px 36px 60% 36px / 36px 36px 52% 36px;

	--bm-ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);

}



/* --------------------------------------------------------------------------

   HEADER V2 — Elevated sticky with scroll state

   -------------------------------------------------------------------------- */

.bluemed-header {

	transition: box-shadow 0.4s ease, background-color 0.3s ease;

}



.bluemed-header.is-scrolled {

	box-shadow: 0 4px 24px rgba(21, 61, 138, 0.08), 0 1px 0 rgba(168, 168, 168, 0.2) !important;

}



.bluemed-header__cta .wp-block-button__link {

	border-radius: 999px !important;

	font-size: 0.78rem !important;

	letter-spacing: 0.1em !important;

	font-weight: 700 !important;

	padding: 0.7rem 1.6rem !important;

	background-color: var(--bluemed-graphite) !important;

	color: #fff !important;

	box-shadow: 0 8px 24px rgba(21, 61, 138, 0.15) !important;

	transition: transform 0.25s var(--bluemed-ease-out), box-shadow 0.28s var(--bluemed-ease-out), background-color 0.22s ease !important;

}



.bluemed-header__cta .wp-block-button__link:hover {

	transform: translateY(-2px) !important;

	box-shadow: 0 14px 36px rgba(21, 61, 138, 0.2) !important;

	background-color: var(--bm-graphite-soft) !important;

}



.bluemed-nav .wp-block-navigation-item__content {

	font-size: 0.775rem !important;

	letter-spacing: 0.11em !important;

	font-weight: 600 !important;

}



/* --------------------------------------------------------------------------

   HERO V2 — Asymmetric flagship hero (82vh max)

   -------------------------------------------------------------------------- */

.bluemed-hero-mega {

	position: relative;

	overflow: hidden;

	background: var(--bluemed-white);

	min-height: 78vh;

	max-height: 92vh;

	display: flex;

	align-items: stretch;

}



/* Large decorative circle — right side background orb */

.bluemed-hero-mega::before {

	content: "";

	position: absolute;

	right: -8%;

	top: -20%;

	width: min(58vw, 780px);

	height: min(58vw, 780px);

	border-radius: 50%;

	background: radial-gradient(ellipse at 40% 40%, var(--bm-sand-deep) 0%, var(--bluemed-sand) 60%, transparent 100%);

	pointer-events: none;

	z-index: 0;

}



/* Subtle second orb - top left accent */

.bluemed-hero-mega::after {

	content: "";

	position: absolute;

	left: -6%;

	bottom: -15%;

	width: min(28vw, 320px);

	height: min(28vw, 320px);

	border-radius: 50%;

	background: radial-gradient(ellipse, rgba(205, 216, 228, 0.18) 0%, transparent 70%);

	pointer-events: none;

	z-index: 0;

}



.bluemed-hero-lux__stage {

	display: grid;

	grid-template-columns: 45fr 55fr;

	align-items: center;

	gap: clamp(2.5rem, 5vw, 6rem);

	max-width: 1480px;

	width: 100%;

	margin: 0 auto;

	padding: clamp(0.75rem, 1.6vw, 1.35rem) clamp(1.5rem, 5vw, 3.5rem) clamp(2.75rem, 5.5vw, 4.25rem);

	position: relative;

	z-index: 1;

	box-sizing: border-box;

}



/* COPY — left column */

.bluemed-hero-lux__copy {

	display: flex;

	flex-direction: column;

	gap: 0;

	position: relative;

	z-index: 2;

}



.bluemed-hero-lux__kicker {

	display: inline-flex;

	align-items: center;

	gap: 0.5rem;

	font-size: 0.72rem !important;

	letter-spacing: 0.3em !important;

	text-transform: uppercase !important;

	font-weight: 700 !important;

	color: var(--bluemed-ash) !important;

	margin: 0 0 1.5rem !important;

	padding: 0.45rem 1rem;

	border: 1px solid rgba(168, 168, 168, 0.3);

	border-radius: 999px;

	width: fit-content;

}



.bluemed-hero-lux__title {

	font-size: clamp(2.6rem, 5.5vw, 4.4rem) !important;

	line-height: 1.02 !important;

	letter-spacing: -0.04em !important;

	font-weight: 800 !important;

	color: var(--text-heading) !important;

	margin: 0 0 1.75rem !important;

}



.bluemed-hero-lux__lead {

	font-size: clamp(1rem, 1.4vw, 1.15rem) !important;

	line-height: 1.7 !important;

	color: var(--bluemed-ash) !important;

	font-weight: 400 !important;

	margin: 0 0 2.25rem !important;

	max-width: 44ch;

}



.bluemed-hero-lux__cta-wrap {

	margin-top: 0 !important;

}



.bluemed-hero-lux__cta-primary .wp-block-button__link,

.bluemed-hero-lux__cta-primary a.wp-block-button__link {

	background-color: var(--bluemed-graphite) !important;

	color: #fff !important;

	border-radius: 999px !important;

	padding: 1rem 2.25rem !important;

	font-size: 0.9rem !important;

	font-weight: 700 !important;

	letter-spacing: 0.06em !important;

	box-shadow: 0 16px 44px rgba(21, 61, 138, 0.22) !important;

	border: none !important;

	transition: transform 0.3s var(--bluemed-ease-out), box-shadow 0.3s var(--bluemed-ease-out) !important;

}



.bluemed-hero-lux__cta-primary .wp-block-button__link:hover {

	transform: translateY(-3px) !important;

	box-shadow: 0 24px 56px rgba(21, 61, 138, 0.28) !important;

}



.bluemed-hero-lux__cta-secondary .wp-block-button__link,

.bluemed-hero-lux__cta-secondary a.wp-block-button__link {

	border: 1.5px solid rgba(21, 61, 138, 0.22) !important;

	color: var(--bluemed-graphite) !important;

	background: transparent !important;

	border-radius: 999px !important;

	padding: 0.95rem 2rem !important;

	font-size: 0.9rem !important;

	font-weight: 600 !important;

	letter-spacing: 0.04em !important;

	transition: border-color 0.25s ease, color 0.25s ease, transform 0.25s var(--bluemed-ease-out) !important;

}



.bluemed-hero-lux__cta-secondary .wp-block-button__link:hover {

	border-color: var(--bluemed-graphite) !important;

	transform: translateY(-2px) !important;

}



.bluemed-hero-lux__cta-note {

	margin-top: 1.1rem !important;

	font-size: 0.72rem !important;

	color: var(--bluemed-ash) !important;

	letter-spacing: 0.04em !important;

}



/* Trust row */

.bluemed-hero-lux__trust {

	margin-top: 2.75rem !important;

	display: flex !important;

	flex-wrap: wrap;

	gap: 0 !important;

	align-items: stretch;

	border: 1px solid rgba(168, 168, 168, 0.2);

	border-radius: 18px;

	overflow: hidden;

	background: var(--bm-sand-subtle);

	width: fit-content;

}



.bluemed-hero-lux__trust-item {

	display: flex;

	flex-direction: column;

	align-items: center;

	justify-content: center;

	padding: 0.9rem 1.5rem !important;

	gap: 0.15rem !important;

	text-align: center;

	position: relative;

	flex: 0 0 auto;

}



.bluemed-hero-lux__trust-item + .bluemed-hero-lux__trust-item::before {

	content: "";

	position: absolute;

	left: 0;

	top: 20%;

	height: 60%;

	width: 1px;

	background: rgba(168, 168, 168, 0.25);

}



.bluemed-hero-lux__trust-item .bluemed-trust-val {

	font-size: 1.15rem;

	font-weight: 800;

	letter-spacing: -0.02em;

	color: var(--text-heading);

	display: block;

}



.bluemed-hero-lux__trust-item .bluemed-trust-label {

	font-size: 0.68rem;

	font-weight: 600;

	letter-spacing: 0.1em;

	text-transform: uppercase;

	color: var(--bluemed-ash);

	display: block;

}



.bluemed-hero-lux__trust-ico,

.bluemed-hero-lux__trust-ico svg {

	color: var(--bluemed-oak) !important;

	width: 1.1rem !important;

	height: 1.1rem !important;

}



/* VISUAL — right column */

.bluemed-hero-lux__visual {

	position: relative;

	display: flex;

	align-items: center;

	justify-content: center;

	min-height: min(55vw, 600px);

}



/* Main photo frame — arch organic shape */

.bluemed-hero-lux__photo {

	position: relative;

	z-index: 2;

}



.bluemed-hero-lux__photo img {

	width: 100%;

	height: min(55vw, 580px);

	object-fit: cover;

	object-position: center top;

	border-radius: 40% 50% 50% 40% / 48% 48% 52% 52%;

	box-shadow: var(--bm-shadow-hero);

	display: block;

}



/* Beige decorative ring behind image */

.bluemed-hero-lux__visual-ring {

	position: absolute;

	top: 50%;

	left: 50%;

	transform: translate(-50%, -50%);

	width: 92%;

	aspect-ratio: 1;

	border-radius: 50%;

	background: var(--bluemed-sand);

	z-index: 1;

	box-shadow: inset 0 0 0 1px rgba(205, 216, 228, 0.4);

}



/* Second ring (outer, subtle) */

.bluemed-hero-lux__visual-ring::after {

	content: "";

	position: absolute;

	top: -8%;

	left: -8%;

	right: -8%;

	bottom: -8%;

	border-radius: 50%;

	border: 1px dashed rgba(205, 216, 228, 0.3);

}



/* Tooth / secondary floating image — cutout effect */

.bluemed-hero-lux__tooth {

	position: absolute;

	bottom: 4%;

	right: -4%;

	z-index: 4;

	width: min(38%, 200px);

	aspect-ratio: 1;

}



.bluemed-hero-lux__tooth img {

	width: 100%;

	height: 100%;

	object-fit: cover;

	object-position: center;

	border-radius: 50%;

	box-shadow: var(--bm-shadow-float);

	border: 4px solid #fff;

}



/* Pulse card (floating info box) */

.bluemed-hero-lux__pulse {

	position: absolute !important;

	bottom: 14%;

	left: -6%;

	z-index: 5;

	min-width: min(200px, 44%);

	background: #fff !important;

	border-radius: 20px !important;

	box-shadow: var(--bm-shadow-float) !important;

	border: 1px solid rgba(168, 168, 168, 0.14) !important;

	padding: 1rem 1.25rem !important;

}



@media (max-width: 960px) {

	.bluemed-hero-mega {

		min-height: auto;

		max-height: none;

	}



	.bluemed-hero-lux__stage {

		grid-template-columns: 1fr;

		gap: 2.5rem;

		padding: 1.15rem 1.25rem 2.25rem;

	}



	.bluemed-hero-lux__visual {

		min-height: min(80vw, 420px);

		order: -1;

	}



	.bluemed-hero-lux__photo img {

		height: min(80vw, 420px);

	}



	.bluemed-hero-lux__title {

		font-size: clamp(2.2rem, 7vw, 3.2rem) !important;

	}



	.bluemed-hero-lux__trust {

		width: 100%;

		justify-content: space-around;

	}



	.bluemed-hero-mega::before {

		display: none;

	}

}



@media (max-width: 600px) {

	.bluemed-hero-lux__stage {

		padding: 2rem 1rem 2rem;

	}



	.bluemed-hero-lux__title {

		font-size: clamp(1.9rem, 9vw, 2.6rem) !important;

	}



	.bluemed-hero-lux__pulse {

		display: none !important;

	}



	.bluemed-hero-lux__tooth {

		width: 25%;

		right: 0;

	}

}



/* --------------------------------------------------------------------------

   TRUST STRIP V2 — 4-counter horizontal section

   -------------------------------------------------------------------------- */

.bluemed-trust-strip-v2 {

	background: var(--bm-sand-subtle);

	border-top: 1px solid rgba(205, 216, 228, 0.35);

	border-bottom: 1px solid rgba(205, 216, 228, 0.35);

}



.bluemed-trust-strip-v2__inner {

	display: grid;

	grid-template-columns: repeat(4, 1fr);

	max-width: 1480px;

	margin: 0 auto;

	padding: clamp(2rem, 4vw, 3rem) clamp(1.25rem, 4vw, 3.5rem);

}



.bluemed-trust-strip-v2__item {

	display: flex;

	flex-direction: row;

	align-items: center;

	gap: 1.1rem;

	padding: 1rem clamp(1rem, 2.5vw, 2rem);

	position: relative;

}



.bluemed-trust-strip-v2__item + .bluemed-trust-strip-v2__item::before {

	content: "";

	position: absolute;

	left: 0;

	top: 15%;

	height: 70%;

	width: 1px;

	background: rgba(205, 216, 228, 0.5);

}



.bluemed-trust-strip-v2__icon {

	width: 2.5rem;

	height: 2.5rem;

	border-radius: 12px;

	background: var(--bluemed-oak);

	display: flex;

	align-items: center;

	justify-content: center;

	flex-shrink: 0;

}



.bluemed-trust-strip-v2__icon svg {

	width: 1.2rem !important;

	height: 1.2rem !important;

	color: var(--text-heading) !important;

	stroke: var(--text-heading) !important;

}



.bluemed-trust-strip-v2__text {

	display: flex;

	flex-direction: column;

	gap: 0.1rem;

}



.bluemed-trust-strip-v2__value {

	font-size: clamp(1.25rem, 2vw, 1.6rem);

	font-weight: 800;

	letter-spacing: -0.03em;

	color: var(--text-heading);

	line-height: 1;

}



.bluemed-trust-strip-v2__label {

	font-size: 0.72rem;

	font-weight: 600;

	letter-spacing: 0.1em;

	text-transform: uppercase;

	color: var(--bluemed-ash);

}



@media (max-width: 900px) {

	.bluemed-trust-strip-v2__inner {

		grid-template-columns: repeat(2, 1fr);

		gap: 0.5rem 0;

	}



	.bluemed-trust-strip-v2__item:nth-child(2)::before {

		display: none;

	}



	.bluemed-trust-strip-v2__item:nth-child(3)::before {

		display: none;

	}

}



@media (max-width: 560px) {

	.bluemed-trust-strip-v2__inner {

		grid-template-columns: repeat(2, 1fr);

		padding: 1.5rem 1rem;

	}



	.bluemed-trust-strip-v2__icon {

		display: none;

	}

}



/* --------------------------------------------------------------------------

   SERVICES V2 — 3-col editorial service cards

   -------------------------------------------------------------------------- */

.bluemed-home-services {

	background: var(--bluemed-white) !important;

}



.bluemed-home-services__head {

	display: flex;

	justify-content: space-between;

	align-items: flex-end;

	flex-wrap: wrap;

	gap: 1.5rem;

	margin-bottom: clamp(2rem, 4vw, 3.5rem) !important;

}



.bluemed-home-svc-card--hero {

	position: relative;

	overflow: hidden;

}



.bluemed-home-svc-card--hero::before {

	content: "";

	position: absolute;

	bottom: 0;

	left: 0;

	right: 0;

	height: 65%;

	background: linear-gradient(to top, rgba(21, 61, 138, 0.78) 0%, transparent 100%);

	z-index: 1;

	border-radius: 0 0 32px 32px;

}



.bluemed-home-svc-card--hero .bluemed-home-svc-card__img img {

	height: 100%;

	min-height: 320px;

	transition: transform 0.6s var(--bluemed-ease-out) !important;

}



.bluemed-home-svc-card--hero:hover .bluemed-home-svc-card__img img {

	transform: scale(1.05) !important;

}



.bluemed-home-svc-card--hero .bluemed-home-svc-card__body {

	position: absolute;

	bottom: 0;

	left: 0;

	right: 0;

	z-index: 2;

	background: transparent !important;

	color: #fff !important;

}



.bluemed-home-svc-card--hero .bluemed-home-svc-card__body h3,

.bluemed-home-svc-card--hero .bluemed-home-svc-card__body .wp-block-heading {

	color: #fff !important;

}



.bluemed-home-svc-card--hero .bluemed-home-svc-card__body p {

	color: rgba(255, 255, 255, 0.82) !important;

}



.bluemed-svc-card__icon,

.bluemed-svc-card__icon svg {

	width: 1.35rem !important;

	height: 1.35rem !important;

	color: var(--bluemed-oak) !important;

	stroke: var(--bluemed-oak) !important;

}



.bluemed-home-svc-card--hero .bluemed-svc-card__icon svg {

	color: #fff !important;

	stroke: #fff !important;

	opacity: 0.9;

}



.bluemed-home-svc-card {

	transition: transform 0.35s var(--bluemed-ease-out), box-shadow 0.35s var(--bluemed-ease-out) !important;

}



.bluemed-home-svc-card:hover {

	transform: translateY(-5px) !important;

	box-shadow: 0 24px 64px rgba(21, 61, 138, 0.12) !important;

}



.bluemed-home-services__bento {

	display: grid;

	grid-template-columns: 1.1fr 0.95fr 0.95fr;

	grid-template-rows: auto auto;

	gap: clamp(1rem, 2vw, 1.5rem);

	align-items: start;

}



.bluemed-home-svc-cell--a {

	grid-column: 1;

	grid-row: 1 / 3;

}



.bluemed-home-svc-cell--b {

	grid-column: 2;

	grid-row: 1;

	transform: none;

}



.bluemed-home-svc-cell--c {

	grid-column: 3;

	grid-row: 1;

}



.bluemed-home-svc-cell--d,

.bluemed-home-svc-cell--e,

.bluemed-home-svc-cell--f {

	display: none;

}



@media (max-width: 900px) {

	.bluemed-home-services__bento {

		grid-template-columns: 1fr 1fr;

		grid-template-rows: auto;

	}



	.bluemed-home-svc-cell--a {

		grid-column: 1 / -1;

		grid-row: 1;

	}



	.bluemed-home-svc-cell--b {

		grid-column: 1;

		grid-row: 2;

		transform: none;

	}



	.bluemed-home-svc-cell--c {

		grid-column: 2;

		grid-row: 2;

	}

}



@media (max-width: 600px) {

	.bluemed-home-services__bento {

		grid-template-columns: 1fr;

	}



	.bluemed-home-svc-cell--a,

	.bluemed-home-svc-cell--b,

	.bluemed-home-svc-cell--c {

		grid-column: 1;

		grid-row: auto;

		transform: none;

	}

}



/* Service card arrow CTA link */

.bluemed-svc-link-arrow {

	display: inline-flex;

	align-items: center;

	gap: 0.4rem;

	font-size: 0.8rem;

	font-weight: 700;

	letter-spacing: 0.06em;

	text-transform: uppercase;

	color: var(--bluemed-oak);

	text-decoration: none;

	border-bottom: 1px solid transparent;

	transition: color 0.22s ease, border-color 0.22s ease, gap 0.22s ease;

}



.bluemed-svc-link-arrow::after {

	content: "→";

	transition: transform 0.25s var(--bluemed-ease-out);

}



.bluemed-svc-link-arrow:hover {

	color: var(--bluemed-graphite);

	border-bottom-color: var(--bluemed-graphite);

	gap: 0.7rem;

}



/* --------------------------------------------------------------------------

   ABOUT V2 — Editorial magazine split with image depth

   -------------------------------------------------------------------------- */

.bluemed-home-about {

	background: var(--bm-sand-subtle) !important;

	position: relative;

}



.bluemed-home-about::after {

	content: "";

	position: absolute;

	right: 5%;

	bottom: 10%;

	width: 180px;

	height: 180px;

	border-radius: 50%;

	border: 1px solid rgba(205, 216, 228, 0.28);

	pointer-events: none;

}



.bluemed-home-about__cols {

	gap: clamp(2.5rem, 6vw, 6rem) !important;

}



.bluemed-home-about__figure {

	position: relative;

}



.bluemed-home-about__photo-wrap {

	overflow: hidden;

	border-radius: 40px !important;

	box-shadow: var(--bm-shadow-hero) !important;

}



.bluemed-home-about__img img {

	aspect-ratio: 3 / 4;

	object-fit: cover;

	width: 100%;

	display: block;

	min-height: 320px;

	transition: transform 0.6s var(--bluemed-ease-out) !important;

}



.bluemed-home-about__photo-wrap:hover .bluemed-home-about__img img {

	transform: scale(1.04) !important;

}



/* Floating accent chip on the about image */

.bluemed-home-about__figure::after {

	content: "Doświadczeni specjaliści";

	white-space: pre;

	position: absolute;

	top: -1.2rem;

	right: -1.5rem;

	background: var(--bluemed-graphite);

	color: #fff;

	font-size: 0.68rem;

	font-weight: 700;

	letter-spacing: 0.08em;

	text-transform: uppercase;

	padding: 0.65rem 1rem;

	border-radius: 14px;

	line-height: 1.4;

	box-shadow: 0 12px 32px rgba(21, 61, 138, 0.2);

}



.bluemed-home-about__copy {

	display: flex;

	flex-direction: column;

	justify-content: center;

}



.bluemed-home-about__pull {

	border-left-width: 3px !important;

	border-left-style: solid !important;

	border-left-color: var(--bluemed-oak) !important;

	border-radius: 0 4px 4px 0;

	background: rgba(205, 216, 228, 0.1);

}



/* --------------------------------------------------------------------------

   WHY CHOOSE US V2 — 4 premium icon cards

   -------------------------------------------------------------------------- */

.bluemed-home-ribbon {

	background: var(--bluemed-white) !important;

}



.bluemed-home-ribbon__grid {

	display: grid;

	gap: clamp(1rem, 2vw, 1.5rem);

}



@media (min-width: 900px) {

	.bluemed-home-ribbon__grid {

		grid-template-columns: 1.1fr 0.9fr 1fr 0.85fr;

		align-items: start;

	}



	.bluemed-home-ribbon__tile--1 {

		transform: translateY(0);

	}



	.bluemed-home-ribbon__tile--2 {

		transform: translateY(1.75rem);

	}



	.bluemed-home-ribbon__tile--3 {

		transform: translateY(0.5rem);

	}



	.bluemed-home-ribbon__tile--4 {

		transform: translateY(2.25rem);

	}

}



.bluemed-home-ribbon__tile {

	border-radius: 28px !important;

	transition: transform 0.35s var(--bm-ease-spring), box-shadow 0.35s var(--bluemed-ease-out) !important;

}



.bluemed-home-ribbon__tile:hover {

	transform: translateY(-6px) !important;

	box-shadow: var(--bm-shadow-xl) !important;

}



.bluemed-home-ribbon__tile--4:hover {

	transform: translateY(-6px) !important;

}



.bluemed-trust-ribbon__ico,

.bluemed-trust-ribbon__ico svg {

	width: 1.6rem !important;

	height: 1.6rem !important;

	color: var(--bluemed-oak) !important;

	flex-shrink: 0;

}



/* --------------------------------------------------------------------------

   TEAM V2 — Premium doctor cards

   -------------------------------------------------------------------------- */

.bluemed-home-team {

	background: var(--bm-sand-subtle) !important;

}



.bluemed-home-team__deck .bluemed-doctor-card--lead {

	border-radius: 40px !important;

	overflow: hidden;

	box-shadow: var(--bm-shadow-hero) !important;

}



.bluemed-doctor-avatar--lg img {

	width: 100% !important;

	max-width: 160px !important;

	box-shadow: 0 8px 24px rgba(21, 61, 138, 0.12) !important;

}



.bluemed-doctor-card--compact {

	border-radius: 28px !important;

	transition: transform 0.3s var(--bm-ease-spring), box-shadow 0.3s var(--bluemed-ease-out) !important;

}



.bluemed-doctor-card--compact:hover {

	transform: translateY(-4px) !important;

	box-shadow: var(--bm-shadow-xl) !important;

}



/* --------------------------------------------------------------------------

   TESTIMONIALS V2 — Luxury dark section

   -------------------------------------------------------------------------- */

.bluemed-home-testimonials {

	background: var(--bluemed-graphite) !important;

	position: relative;

	overflow: hidden;

}



/* Luxury grain texture overlay */

.bluemed-home-testimonials::before {

	content: "";

	position: absolute;

	inset: 0;

	background-image:

		radial-gradient(ellipse at 20% 80%, rgba(205, 216, 228, 0.08) 0%, transparent 55%),

		radial-gradient(ellipse at 80% 20%, rgba(255, 255, 255, 0.04) 0%, transparent 50%);

	pointer-events: none;

	z-index: 0;

}



.bluemed-home-testimonials .wp-block-group,

.bluemed-home-testimonials .wp-block-columns {

	position: relative;

	z-index: 1;

}



.bluemed-home-testimonials__frame {

	border-radius: 36px;

	overflow: hidden;

	box-shadow: var(--bm-shadow-hero);

}



.bluemed-home-testimonials__img img {

	transition: transform 0.7s var(--bluemed-ease-out) !important;

}



.bluemed-home-testimonials__frame:hover img {

	transform: scale(1.03) !important;

}



.bluemed-home-testimonials__quote {

	border-radius: 28px !important;

	box-shadow: 0 24px 60px rgba(21, 61, 138, 0.22) !important;

	border: 1px solid rgba(255, 255, 255, 0.06) !important;

}



.bluemed-home-testimonials__mark,

.bluemed-home-testimonials__mark svg {

	width: 2.5rem !important;

	height: 2.5rem !important;

	color: var(--bluemed-oak) !important;

	opacity: 0.85;

}



/* --------------------------------------------------------------------------

   BLOG V2 — Editorial magazine layout

   -------------------------------------------------------------------------- */

.bluemed-home-magazine {

	background: var(--bluemed-sand) !important;

}



.bluemed-home-magazine__featured {

	overflow: hidden;

	border-radius: 32px !important;

	box-shadow: var(--bm-shadow-hero) !important;

	transition: box-shadow 0.35s var(--bluemed-ease-out) !important;

}



.bluemed-home-magazine__featured:hover {

	box-shadow: var(--bm-shadow-xl) !important;

}



.bluemed-home-magazine__featured .wp-block-post-featured-image img {

	aspect-ratio: 4 / 3 !important;

	object-fit: cover;

	height: 100% !important;

	min-height: 320px;

	transition: transform 0.6s var(--bluemed-ease-out) !important;

}



.bluemed-home-magazine__featured:hover .wp-block-post-featured-image img {

	transform: scale(1.04) !important;

}



.bluemed-home-magazine__tile {

	overflow: hidden;

	border-radius: 24px !important;

	transition: transform 0.3s var(--bluemed-ease-out), box-shadow 0.3s var(--bluemed-ease-out) !important;

	box-shadow: var(--bluemed-shadow-card) !important;

}



.bluemed-home-magazine__tile:hover {

	transform: translateY(-4px) !important;

	box-shadow: var(--bm-shadow-xl) !important;

}



.bluemed-home-magazine__tile .wp-block-post-featured-image img {

	aspect-ratio: 16 / 9 !important;

	object-fit: cover;

	transition: transform 0.5s var(--bluemed-ease-out) !important;

}



.bluemed-home-magazine__tile:hover .wp-block-post-featured-image img {

	transform: scale(1.04) !important;

}



/* --------------------------------------------------------------------------

   FINAL CTA V2 — Strong premium dark section

   -------------------------------------------------------------------------- */

.bluemed-home-cta {

	background-color: var(--bluemed-graphite);

	position: relative;

	overflow: hidden;

}



.bluemed-home-cta__glow {

	position: absolute;

	top: -30%;

	left: 50%;

	transform: translateX(-50%);

	width: 700px;

	height: 700px;

	border-radius: 50%;

	background: radial-gradient(ellipse at center, rgba(205, 216, 228, 0.12) 0%, transparent 65%);

	pointer-events: none;

}



.bluemed-home-cta__inner {

	position: relative;

	z-index: 1;

}



.bluemed-home-cta__btn-main .wp-block-button__link {

	border-radius: 999px !important;

	padding: 1.15rem 2.75rem !important;

	font-size: 1rem !important;

	font-weight: 700 !important;

	letter-spacing: 0.06em !important;

	background: var(--bluemed-oak) !important;

	color: var(--text-heading) !important;

	box-shadow: 0 20px 52px rgba(21, 61, 138, 0.3) !important;

	transition: transform 0.28s var(--bluemed-ease-out), box-shadow 0.3s var(--bluemed-ease-out) !important;

	border: none !important;

}



.bluemed-home-cta__btn-main .wp-block-button__link:hover {

	transform: translateY(-4px) !important;

	box-shadow: 0 28px 68px rgba(21, 61, 138, 0.38) !important;

	filter: brightness(1.06) !important;

}



.bluemed-home-cta__btn-sec .wp-block-button__link {

	border-radius: 999px !important;

	padding: 1.1rem 2.25rem !important;

	font-size: 0.92rem !important;

	font-weight: 600 !important;

	border: 1.5px solid rgba(255, 255, 255, 0.4) !important;

	color: rgba(255, 255, 255, 0.92) !important;

	background: transparent !important;

	transition: border-color 0.25s ease, color 0.25s ease, transform 0.25s var(--bluemed-ease-out) !important;

}



.bluemed-home-cta__btn-sec .wp-block-button__link:hover {

	border-color: rgba(255, 255, 255, 0.85) !important;

	color: #fff !important;

	transform: translateY(-2px) !important;

}



/* --------------------------------------------------------------------------

   FOOTER V2 — Premium refinements

   -------------------------------------------------------------------------- */

.bluemed-footer {

	background: var(--accent-primary) !important;

	background-color: var(--accent-primary) !important;

}



.bluemed-footer__legal a {

	border-bottom-color: rgba(205, 216, 228, 0.4) !important;

	transition: color 0.2s ease, border-color 0.2s ease !important;

}



.bluemed-footer__legal a:hover {

	color: var(--bluemed-oak) !important;

	border-bottom-color: var(--bluemed-oak) !important;

}



/* --------------------------------------------------------------------------

   GLOBAL SECTION RHYTHM — Premium spacing on homepage

   -------------------------------------------------------------------------- */

.bluemed-hero-mega + .bluemed-home-strip,

.bluemed-hero-mega + .bluemed-trust-strip-v2 {

	margin-top: 0;

}



/* Section heading accent */

.bluemed-section-kicker {

	display: inline-flex;

	align-items: center;

	gap: 0.5rem;

	font-size: 0.7rem;

	font-weight: 700;

	letter-spacing: 0.28em;

	text-transform: uppercase;

	color: var(--bluemed-oak);

}



.bluemed-section-kicker::before {

	content: "";

	display: block;

	width: 1.5rem;

	height: 1.5px;

	background: var(--bluemed-oak);

}



/* Ornamental separator between major sections */

.bluemed-section-ornament {

	display: flex;

	align-items: center;

	justify-content: center;

	gap: 0.75rem;

	padding: 0;

}



.bluemed-section-ornament::before,

.bluemed-section-ornament::after {

	content: "";

	flex: 1;

	height: 1px;

	background: linear-gradient(90deg, transparent, rgba(205, 216, 228, 0.5), transparent);

}



/* Stats counter font weight */

.bluemed-counter {

	font-variant-numeric: tabular-nums;

	font-weight: 800;

}



/* About secondary floating photo */

.bluemed-home-about__photo-secondary {

	position: absolute;

	bottom: -1.5rem;

	right: -1.5rem;

	width: min(140px, 36%);

	aspect-ratio: 1;

	border-radius: 28px;

	overflow: hidden;

	box-shadow: var(--bm-shadow-float);

	border: 4px solid #fff;

	z-index: 2;

}



.bluemed-home-about__photo-secondary img {

	display: block;

}



@media (max-width: 781px) {

	.bluemed-home-about__figure::after {

		display: none;

	}



	.bluemed-home-about__photo-secondary {

		display: none;

	}

}



/* Blog: 3-column grid override */

.bluemed-home-magazine .wp-block-post-template.is-layout-grid {

	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;

	gap: clamp(1rem, 2vw, 1.5rem) !important;

}



@media (max-width: 900px) {

	.bluemed-home-magazine .wp-block-post-template.is-layout-grid {

		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

	}

}



@media (max-width: 560px) {

	.bluemed-home-magazine .wp-block-post-template.is-layout-grid {

		grid-template-columns: 1fr !important;

	}

}



/* Featured post image fills column height */

.bluemed-home-magazine__featured .wp-block-post-featured-image {

	height: 100%;

}



.bluemed-home-magazine__featured .wp-block-post-featured-image img {

	height: 100% !important;

	min-height: 340px;

	object-fit: cover;

	display: block;

}



/* Scroll header state via JS */

.bluemed-header.is-scrolled {

	background-color: rgba(255, 255, 255, 0.97) !important;

}



/* --------------------------------------------------------------------------

   REVEAL ANIMATION — Staggered sections

   -------------------------------------------------------------------------- */

.js-reveal.bluemed-hero-mega {

	opacity: 1 !important;

	transform: none !important;

}



.js-reveal-child {

	opacity: 0;

	transform: translateY(16px);

	transition: opacity 0.55s var(--bluemed-ease-out), transform 0.6s var(--bluemed-ease-out);

}



.js-reveal-child.is-visible {

	opacity: 1;

	transform: translateY(0);

}



.js-reveal-child:nth-child(2) { transition-delay: 0.08s; }

.js-reveal-child:nth-child(3) { transition-delay: 0.16s; }

.js-reveal-child:nth-child(4) { transition-delay: 0.24s; }

.js-reveal-child:nth-child(5) { transition-delay: 0.32s; }



@media (prefers-reduced-motion: reduce) {

	.js-reveal-child {

		opacity: 1;

		transform: none;

		transition: none;

	}

}



/* ==========================================================================

   FINAL PREMIUM POLISH — homepage rhythm, hero asset, slider, blog grid

   ========================================================================== */



:root {

	--bluemed-rhythm-section: clamp(4rem, 11vw, 7.25rem);

}



.home main {

	margin-top: 0 !important;

}



.home main .wp-block-post-content {

	margin-block-start: 0 !important;

	padding-block-start: 0 !important;

}



.home main .wp-block-post-content > .alignfull:first-child {

	margin-block-start: 0 !important;

}



/* Single hero image (PNG) — premium float + shadow */

.bluemed-hero-lux .bluemed-hero-lux__visual-ring,

.bluemed-hero-lux .bluemed-hero-lux__tooth,

.bluemed-hero-lux .bluemed-hero-lux__pulse {

	display: none !important;

}



.bluemed-hero-lux__photo--hero-asset {

	max-width: min(100%, 720px) !important;

	margin-left: auto !important;

	margin-right: auto !important;

}



.bluemed-hero-lux__photo--hero-asset img {

	width: 100% !important;

	height: auto !important;

	max-height: min(68vh, 680px) !important;

	object-fit: contain !important;

	object-position: center !important;

	border-radius: var(--bluemed-radius-lg) !important;

	box-shadow:

		0 48px 100px rgba(21, 61, 138, 0.14),

		0 16px 40px rgba(21, 61, 138, 0.08),

		0 1px 0 rgba(255, 255, 255, 0.75) inset !important;

	animation: bluemed-hero-asset-float 8s ease-in-out infinite;

}



@keyframes bluemed-hero-asset-float {

	0%,

	100% {

		transform: translateY(0);

	}

	50% {

		transform: translateY(-5px);

	}

}



@media (prefers-reduced-motion: reduce) {

	.bluemed-hero-lux__photo--hero-asset img {

		animation: none !important;

	}

}



.bluemed-hero-lux__photo--hero-asset:hover img {

	transform: none !important;

}



/* Services bento — equal row height, no vertical offset */

.bluemed-home-services__bento {

	align-items: stretch !important;

}



.bluemed-home-svc-cell {

	display: flex;

	flex-direction: column;

	min-height: 0;

}



.bluemed-home-services__bento .bluemed-home-svc-card:not(.bluemed-home-svc-card--hero) {

	flex: 1 1 auto;

	display: flex;

	flex-direction: column;

	min-height: 100%;

}



.bluemed-home-services__bento .bluemed-home-svc-cell--b figure img,

.bluemed-home-services__bento .bluemed-home-svc-cell--c figure img {

	aspect-ratio: 16 / 10 !important;

	object-fit: cover !important;

	width: 100% !important;

}



/* Team — balanced stack */

.bluemed-home-team__stack {

	display: flex !important;

	flex-direction: column !important;

	gap: var(--wp--preset--spacing--50, 1.5rem) !important;

}



.bluemed-home-team__deck .bluemed-doctor-card--lead {

	flex: 1 1 auto;

	min-height: 100%;

}



/* Testimonials slider */

.bluemed-sr-only {

	position: absolute !important;

	width: 1px !important;

	height: 1px !important;

	padding: 0 !important;

	margin: -1px !important;

	overflow: hidden !important;

	clip: rect(0, 0, 0, 0) !important;

	white-space: nowrap !important;

	border: 0 !important;

}



.bluemed-testimonials-slider {

	max-width: 920px;

	margin: 0 auto;

}



.bluemed-testimonials-slider__viewport {

	position: relative;

	min-height: clamp(240px, 30vw, 300px);

}



.bluemed-testimonials-slider__slide {

	position: absolute;

	inset: 0;

	opacity: 0;

	transform: translateY(14px);

	pointer-events: none;

	transition:

		opacity 0.55s var(--bluemed-ease-out),

		transform 0.55s var(--bluemed-ease-out);

}



.bluemed-testimonials-slider__slide.is-active {

	position: relative;

	opacity: 1;

	transform: translateY(0);

	pointer-events: auto;

}



.bluemed-testimonials-slider__quote {

	margin: 0;

	padding: clamp(1.75rem, 4vw, 2.75rem) clamp(2rem, 5vw, 3.25rem);

	background: #fff;

	border-radius: var(--bluemed-radius-md);

	box-shadow: 0 24px 70px rgba(21, 61, 138, 0.2);

	border: 1px solid rgba(255, 255, 255, 0.08);

	color: #33343D !important;

}



.bluemed-testimonials-slider__quote::before {

	content: "\201C";

	display: block;

	font-size: 3.25rem;

	line-height: 1;

	color: var(--bluemed-oak);

	opacity: 0.35;

	font-family: Georgia, "Times New Roman", serif;

	margin-bottom: 0.35rem;

}



.bluemed-testimonials-slider__quote p {

	margin: 0 0 1.5rem;

	font-size: clamp(1.05rem, 1.35vw, 1.35rem);

	font-weight: 500;

	line-height: 1.55;

	letter-spacing: -0.015em;

	color: #33343D !important;

	opacity: 1 !important;

	-webkit-text-fill-color: #33343D;

}



.bluemed-testimonials-slider__quote footer {

	display: flex;

	flex-wrap: wrap;

	align-items: baseline;

	justify-content: space-between;

	gap: 0.75rem 1.5rem;

	padding-top: 1.25rem;

	border-top: 1px solid rgba(21, 61, 138, 0.08);

}



.bluemed-testimonials-slider__quote cite {

	font-style: normal;

	font-size: 0.8rem;

	font-weight: 700;

	letter-spacing: 0.08em;

	text-transform: uppercase;

	color: var(--text-primary);

}



.bluemed-testimonials-slider__meta {

	font-size: 0.78rem;

	color: var(--bluemed-ash);

}



.bluemed-testimonials-slider__dots {

	display: flex;

	justify-content: center;

	gap: 0.5rem;

	margin-top: 1.75rem;

}



.bluemed-testimonials-slider__dot {

	width: 8px;

	height: 8px;

	border-radius: 999px;

	border: none;

	padding: 0;

	background: rgba(255, 255, 255, 0.28);

	cursor: pointer;

	transition: transform 0.25s ease, background 0.25s ease, width 0.25s ease;

}



.bluemed-testimonials-slider__dot.is-active {

	background: var(--bluemed-oak);

	width: 1.85rem;

}



/* Blog — 3 equal cards */

.bluemed-home-blog-grid .wp-block-post-template.is-layout-grid {

	align-items: stretch !important;

}



.bluemed-home-blog-card {

	display: flex !important;

	flex-direction: column !important;

	height: 100% !important;

	border-radius: var(--bluemed-radius-md) !important;

	transition: transform 0.3s var(--bluemed-ease-out), box-shadow 0.3s var(--bluemed-ease-out) !important;

}



.bluemed-home-blog-card:hover {

	transform: translateY(-5px) !important;

	box-shadow: var(--bm-shadow-xl) !important;

}



.bluemed-home-blog-card__body {

	flex: 1 1 auto;

	display: flex !important;

	flex-direction: column !important;

}



.bluemed-home-blog-card__media img,

.bluemed-home-blog-card .wp-block-post-featured-image img {

	aspect-ratio: 16 / 10 !important;

	object-fit: cover !important;

	width: 100% !important;

	display: block !important;

}



.bluemed-home-blog-card .wp-block-post-excerpt {

	flex: 1 1 auto;

}



.bluemed-home-blog-card a.wp-block-read-more {

	display: inline-flex !important;

	align-items: center;

	gap: 0.35rem;

	margin-top: auto !important;

	width: fit-content !important;

	font-size: 0.72rem !important;

	font-weight: 700 !important;

	letter-spacing: 0.1em !important;

	text-transform: uppercase !important;

	color: var(--bluemed-oak) !important;

	text-decoration: none !important;

	border-bottom: 1px solid transparent !important;

	transition: color 0.2s ease, border-color 0.2s ease, gap 0.2s ease !important;

}



.bluemed-home-blog-card a.wp-block-read-more:hover {

	color: var(--bluemed-graphite) !important;

	border-bottom-color: var(--bluemed-graphite) !important;

}



/* Final CTA — phone inline with icon */

.bluemed-home-cta__phone-line {

	display: flex !important;

	flex-direction: row !important;

	align-items: center !important;

	justify-content: center !important;

	flex-wrap: wrap !important;

	gap: 0.7rem 1rem !important;

	margin-top: clamp(1.75rem, 4vw, 2.25rem) !important;

}



.bluemed-home-cta__phone-line .bluemed-lucide,

.bluemed-home-cta__phone-line .bluemed-lucide svg {

	flex-shrink: 0;

}



.bluemed-home-cta__phone-text .bluemed-sc--phone {

	font-size: clamp(1.1rem, 2.2vw, 1.35rem) !important;

	font-weight: 600 !important;

	color: rgba(255, 255, 255, 0.95) !important;

	letter-spacing: 0.03em !important;

}



.bluemed-home-cta {

	margin-bottom: 0 !important;

}



@media (max-width: 781px) {

	:root {

		--bluemed-rhythm-section: clamp(3.25rem, 9vw, 5rem);

	}



	.bluemed-hero-lux__photo--hero-asset img {

		max-height: min(50vh, 400px) !important;

	}



	.bluemed-testimonials-slider__viewport {

		min-height: 0;

	}



	.bluemed-hero-lux__review-badge {

		position: static !important;

		margin-top: 1.25rem;

		margin-left: auto;

		margin-right: auto;

	}

}



/* ==========================================================================

   ART DIRECTION — luxury hierarchy, editorial blog, refined motion

   ========================================================================== */



/* —— Hero —— */

.bluemed-hero-lux--art .bluemed-hero-lux__stage {

	padding-top: clamp(1.35rem, 2.8vw, 2.25rem) !important;

	padding-left: clamp(1.35rem, 4.5vw, 3.75rem) !important;

	padding-right: clamp(1.15rem, 4vw, 3rem) !important;

}



@media (min-width: 900px) {

	.bluemed-hero-lux--art .bluemed-hero-lux__copy--art {

		padding-top: clamp(0.25rem, 1vw, 0.75rem);

		padding-left: clamp(0.15rem, 1vw, 0.5rem);

	}



	.bluemed-hero-lux--art .bluemed-hero-lux__title {

		max-width: 13ch !important;

		text-wrap: balance;

	}

}



.bluemed-hero-lux--art .bluemed-hero-lux__kicker {

	margin-bottom: 1.35rem !important;

}



.bluemed-hero-lux--art .bluemed-hero-lux__title {

	margin-bottom: 1.5rem !important;

}



.bluemed-hero-lux--art .bluemed-hero-lux__lead {

	margin-bottom: 2rem !important;

}



.bluemed-hero-lux--art .bluemed-hero-lux__cta-wrap .wp-block-buttons {

	gap: 1rem 1.35rem !important;

	margin-bottom: 0.35rem;

}



.bluemed-hero-lux--art .bluemed-hero-lux__cta-note {

	margin-top: 1.35rem !important;

}



.bluemed-hero-lux__visual--art {

	position: relative;

}



.bluemed-hero-lux__review-badge {

	position: absolute;

	z-index: 4;

	right: clamp(0.35rem, 2.5vw, 1.75rem);

	bottom: clamp(0.5rem, 2.5vw, 1.5rem);

	display: flex;

	flex-direction: column;

	align-items: flex-start;

	gap: 0.15rem;

	padding: 0.85rem 1.1rem 0.95rem;

	border-radius: 18px;

	background: rgba(255, 255, 255, 0.94);

	backdrop-filter: blur(14px);

	-webkit-backdrop-filter: blur(14px);

	border: 1px solid rgba(255, 255, 255, 0.95);

	box-shadow:

		0 20px 50px rgba(21, 61, 138, 0.12),

		0 1px 0 rgba(255, 255, 255, 1) inset;

	animation: bluemed-badge-float 6s ease-in-out infinite;

	max-width: 11.5rem;

}



.bluemed-hero-lux__review-badge__stars {

	font-size: 0.72rem;

	letter-spacing: 0.06em;

	color: var(--bluemed-oak);

	line-height: 1;

}



.bluemed-hero-lux__review-badge__score {

	font-size: 1.35rem;

	font-weight: 800;

	letter-spacing: -0.03em;

	color: var(--text-heading);

	line-height: 1.1;

}



.bluemed-hero-lux__review-badge__label {

	font-size: 0.65rem;

	font-weight: 700;

	letter-spacing: 0.14em;

	text-transform: uppercase;

	color: var(--bluemed-ash);

}



@keyframes bluemed-badge-float {

	0%,

	100% {

		transform: translateY(0);

	}

	50% {

		transform: translateY(-6px);

	}

}



@media (prefers-reduced-motion: reduce) {

	.bluemed-hero-lux__review-badge {

		animation: none;

	}

}



/* —— Services — equal weight + hover —— */

.bluemed-home-services--art .bluemed-home-svc-card--hero,

.bluemed-home-services--art .bluemed-home-svc-card:not(.bluemed-home-svc-card--hero) {

	border-radius: 28px !important;

}



.bluemed-home-services--art .bluemed-home-svc-card--hero::before {

	border-radius: 0 0 26px 26px;

}



.bluemed-home-services--art .bluemed-home-svc-card--hero .bluemed-home-svc-card__img img {

	min-height: 300px !important;

}



.bluemed-home-services--art .bluemed-home-svc-card {

	transition:

		transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),

		box-shadow 0.45s cubic-bezier(0.22, 1, 0.36, 1) !important;

}



.bluemed-home-services--art .bluemed-home-svc-card:hover {

	transform: translateY(-7px) !important;

	box-shadow:

		0 32px 72px rgba(21, 61, 138, 0.11),

		0 0 0 1px rgba(205, 216, 228, 0.18) !important;

}



.bluemed-home-services--art .bluemed-home-svc-card--hero:hover .bluemed-home-svc-card__img img {

	transform: scale(1.04) !important;

}



.bluemed-home-services--art .bluemed-svc-card__icon,

.bluemed-home-services--art .bluemed-svc-card__icon svg {

	width: 1.45rem !important;

	height: 1.45rem !important;

}



/* —— Why us — custom panels —— */

.bluemed-home-ribbon--art .bluemed-home-ribbon__grid--art {

	gap: clamp(1.1rem, 2.2vw, 1.65rem) !important;

}



@media (min-width: 900px) {

	.bluemed-home-ribbon--art .bluemed-home-ribbon__grid--art {

		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;

		align-items: stretch;

	}



	.bluemed-home-ribbon--art .bluemed-home-ribbon__tile--1,

	.bluemed-home-ribbon--art .bluemed-home-ribbon__tile--2,

	.bluemed-home-ribbon--art .bluemed-home-ribbon__tile--3,

	.bluemed-home-ribbon--art .bluemed-home-ribbon__tile--4 {

		transform: none !important;

	}

}



.bluemed-home-ribbon__tile--art {

	box-shadow: none !important;

	border: 1px solid rgba(168, 168, 168, 0.22) !important;

	transition:

		transform 0.4s cubic-bezier(0.22, 1, 0.36, 1),

		border-color 0.35s ease,

		box-shadow 0.4s ease !important;

}



.bluemed-home-ribbon__tile--art:hover {

	transform: translateY(-5px) !important;

	border-color: rgba(205, 216, 228, 0.55) !important;

	box-shadow: 0 24px 56px rgba(21, 61, 138, 0.08) !important;

}



.bluemed-home-ribbon__tile--art .bluemed-trust-ribbon__ico {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	width: 3rem;

	height: 3rem;

	border-radius: 14px;

	margin-bottom: 0.35rem;

	background: rgba(205, 216, 228, 0.22);

	border: 1px solid rgba(205, 216, 228, 0.35);

}



.bluemed-home-ribbon__tile--accent .bluemed-trust-ribbon__ico {

	background: rgba(255, 255, 255, 0.08);

	border-color: rgba(255, 255, 255, 0.14);

}



.bluemed-home-ribbon__tile--art .bluemed-trust-ribbon__ico svg {

	width: 1.45rem !important;

	height: 1.45rem !important;

}



.bluemed-home-ribbon__tile--art h3 {

	letter-spacing: -0.02em !important;

}



/* —— Team — featured dominance —— */

.bluemed-home-team--art .bluemed-doctor-card--lead-art {

	border-radius: 32px !important;

}



.bluemed-home-team--art .bluemed-doctor-card--lead-art h3 {

	font-size: clamp(1.35rem, 2vw, 1.65rem) !important;

	letter-spacing: -0.025em !important;

}



.bluemed-home-team--art .bluemed-doctor-avatar--lg img {

	max-width: 176px !important;

	box-shadow: 0 12px 36px rgba(21, 61, 138, 0.14) !important;

}



.bluemed-home-team--art .bluemed-doctor-card--compact {

	border-radius: 22px !important;

}



.bluemed-home-team--art .bluemed-doctor-card--compact:hover {

	transform: translateY(-5px) !important;

}



/* —— Testimonials — XL impact —— */

.bluemed-home-testimonials__head .wp-block-heading,

.bluemed-home-testimonials__head h2 {

	color: #ffffff !important;

	opacity: 1 !important;

	font-weight: 700 !important;

	text-shadow: 0 1px 18px rgba(51, 52, 61, 0.22);

}



.bluemed-home-testimonials--art .bluemed-testimonials-slider--xl {

	max-width: 100%;

}



.bluemed-testimonials-slider--xl .bluemed-testimonials-slider__viewport {

	min-height: clamp(300px, 38vw, 420px);

}



.bluemed-testimonials-slider--xl .bluemed-testimonials-slider__slide {

	transition:

		opacity 0.88s cubic-bezier(0.22, 1, 0.36, 1),

		transform 0.88s cubic-bezier(0.22, 1, 0.36, 1);

	transform: translateY(18px) scale(0.988);

}



.bluemed-testimonials-slider--xl .bluemed-testimonials-slider__slide.is-active {

	transform: translateY(0) scale(1);

}



.bluemed-testimonials-slider--xl .bluemed-testimonials-slider__quote {

	padding: clamp(2.5rem, 5.2vw, 3.65rem) clamp(2.35rem, 5.5vw, 4rem) !important;

	border-radius: var(--bluemed-radius-md) !important;

}



.bluemed-testimonials-slider--xl .bluemed-testimonials-slider__quote::before {

	font-size: clamp(3.5rem, 8vw, 4.5rem);

	opacity: 0.28;

	margin-bottom: 0.5rem;

}



.bluemed-testimonials-slider--xl .bluemed-testimonials-slider__quote p {

	font-size: clamp(1.32rem, 2.45vw, 1.92rem) !important;

	line-height: 1.5 !important;

	font-weight: 500 !important;

	letter-spacing: -0.021em !important;

	color: #33343D !important;

	opacity: 1 !important;

	-webkit-text-fill-color: #33343D !important;

}



.bluemed-testimonials-slider--xl .bluemed-testimonials-slider__dots {

	margin-top: 2.25rem;

	gap: 0.65rem;

}



.bluemed-testimonials-slider--xl .bluemed-testimonials-slider__dot {

	width: 9px;

	height: 9px;

}



.bluemed-testimonials-slider--xl .bluemed-testimonials-slider__dot.is-active {

	width: 2.15rem;

}



/* —— Blog editorial 1 + 2 —— */

.bluemed-home-blog-editorial__hero {

	box-shadow: var(--bm-shadow-hero) !important;

	transition: box-shadow 0.45s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1) !important;

}



.bluemed-home-blog-editorial__hero:hover {

	box-shadow: var(--bm-shadow-xl) !important;

	transform: translateY(-4px);

}



.bluemed-home-blog-editorial__hero .wp-block-post-featured-image,

.bluemed-home-blog-editorial__hero-img {

	height: 100%;

	min-height: 300px;

}



.bluemed-home-blog-editorial__hero .wp-block-post-featured-image img,

.bluemed-home-blog-editorial__hero-img img {

	width: 100%;

	height: 100%;

	min-height: 300px;

	object-fit: cover;

	transition: transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);

}



.bluemed-home-blog-editorial__hero:hover .wp-block-post-featured-image img {

	transform: scale(1.04);

}



.bluemed-home-blog-editorial .wp-block-post-template.is-layout-grid {

	align-items: stretch !important;

	gap: clamp(1rem, 2vw, 1.5rem) !important;

}



.bluemed-home-blog-editorial__tile {

	display: flex;

	flex-direction: column;

	height: 100%;

	border-radius: 24px !important;

	transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease !important;

}



.bluemed-home-blog-editorial__tile:hover {

	transform: translateY(-5px);

	box-shadow: var(--bm-shadow-xl) !important;

}



.bluemed-home-blog-editorial__tile-img img,

.bluemed-home-blog-editorial__tile .wp-block-post-featured-image img {

	aspect-ratio: 16 / 10;

	object-fit: cover;

	width: 100%;

	transition: transform 0.55s ease;

}



.bluemed-home-blog-editorial__tile:hover .wp-block-post-featured-image img {

	transform: scale(1.03);

}



.bluemed-home-blog-editorial a.wp-block-read-more,

.bluemed-home-blog-editorial__read {

	font-size: 0.72rem !important;

	font-weight: 700 !important;

	letter-spacing: 0.11em !important;

	text-transform: uppercase !important;

	color: var(--bluemed-oak) !important;

}



.bluemed-home-blog-editorial__read--sm {

	font-size: 0.68rem !important;

}



/* —— Final CTA — photo background + single-color overlay —— */

.bluemed-home-cta--art,

.bluemed-home-cta--photo {

	background-color: transparent !important;

	background-image: var(--bluemed-cta-bg-image, url("/wp-content/uploads/2026/05/920.webp"));

	background-size: cover !important;

	background-position: center center !important;

	background-repeat: no-repeat !important;

}



.bluemed-home-cta--art.bluemed-cta-band::before,

.bluemed-home-cta--photo.bluemed-cta-band::before {

	display: none;

}



.bluemed-home-cta--art .bluemed-home-cta__glow,

.bluemed-home-cta--photo .bluemed-home-cta__glow {

	opacity: 0.35;

	mix-blend-mode: soft-light;

}



.bluemed-home-cta--art .bluemed-home-cta__inner,

.bluemed-home-cta--photo .bluemed-home-cta__inner {

	z-index: 2;

}



.bluemed-home-cta--art .bluemed-home-cta__glow {

	width: min(900px, 95vw);

	height: min(900px, 95vw);

	background: radial-gradient(ellipse at center, rgba(205, 216, 228, 0.16) 0%, transparent 62%);

	opacity: 1;

}



.bluemed-home-cta--art .bluemed-home-cta__inner {

	padding-left: clamp(0.5rem, 3vw, 2rem);

	padding-right: clamp(0.5rem, 3vw, 2rem);

}



.bluemed-home-cta--art h2 {

	font-size: clamp(2.35rem, 5.2vw, 3.85rem) !important;

	line-height: 1.04 !important;

	letter-spacing: -0.045em !important;

	text-shadow: 0 2px 40px rgba(21, 61, 138, 0.35);

}



.bluemed-home-cta--art .has-lg-font-size {

	font-size: clamp(1.05rem, 1.65vw, 1.28rem) !important;

	line-height: 1.68 !important;

	opacity: 0.92 !important;

	max-width: 46ch;

	margin-left: auto !important;

	margin-right: auto !important;

}



.bluemed-home-cta__pills {

	display: flex;

	justify-content: center;

	flex-wrap: wrap;

	gap: 0.75rem 1rem;

	margin-bottom: clamp(2rem, 4vw, 2.75rem);

}



.bluemed-home-cta__pill {

	display: inline-flex;

	align-items: center;

	gap: 0.45rem;

	padding: 0.55rem 1.1rem;

	border-radius: 999px;

	font-size: 0.72rem;

	font-weight: 700;

	letter-spacing: 0.1em;

	text-transform: uppercase;

	color: rgba(255, 255, 255, 0.88);

	background: rgba(255, 255, 255, 0.06);

	border: 1px solid rgba(255, 255, 255, 0.14);

	backdrop-filter: blur(10px);

	-webkit-backdrop-filter: blur(10px);

}



/* Checkmark generated via CSS so pill text stays clean in Gutenberg */

.bluemed-home-cta__pill::before {

	content: "✓";

	color: var(--bluemed-oak);

	font-weight: 800;

	flex-shrink: 0;

}



/* Legacy span mark — kept for backward compatibility */

.bluemed-home-cta__pill-mark {

	display: none;

}



.bluemed-home-cta--art .bluemed-home-cta__actions {

	margin-top: 0.25rem;

}



.bluemed-home-cta--art .bluemed-home-cta__btn-main .wp-block-button__link {

	padding: 1.2rem 2.95rem !important;

	font-size: 0.95rem !important;

	letter-spacing: 0.1em !important;

}



/* —— Buttons global polish on homepage CTA —— */

.bluemed-home-cta--art .bluemed-home-cta__btn-sec .wp-block-button__link {

	border-width: 1.5px !important;

	padding: 1.1rem 2.4rem !important;

}



/* ==========================================================================

   PRECISION PASS v5 — homepage art hero (full-height, type, tooth)

   ========================================================================== */



.bluemed-hero-mega.bluemed-hero-lux--art {

	max-height: none !important;

}



@media (min-width: 900px) {

	.bluemed-hero-mega.bluemed-hero-lux--art {

		min-height: 100dvh !important;

		min-height: 100vh !important;

		overflow-x: clip;

		overflow-y: visible;

	}



	.bluemed-hero-mega.bluemed-hero-lux--art .bluemed-hero-lux__stage {

		min-height: min(100dvh, 100vh) !important;

		max-height: none !important;

		align-items: center;

		padding-bottom: clamp(1.5rem, 3vw, 2.5rem) !important;

		grid-template-columns: minmax(0, 45fr) minmax(0, 55fr) !important;

		column-gap: clamp(2.35rem, 5.8vw, 6.75rem) !important;

		row-gap: clamp(1rem, 2vw, 1.75rem);

	}



	.bluemed-hero-mega.bluemed-hero-lux--art .bluemed-hero-lux__copy {

		grid-column: 1 / 2 !important;

		grid-row: 1 !important;

		max-width: min(36rem, 100%) !important;

	}



	.bluemed-hero-mega.bluemed-hero-lux--art .bluemed-hero-lux__visual {

		grid-column: 2 / 3 !important;

		grid-row: 1 !important;

		margin-left: clamp(-1.25rem, -2.5vw, -0.35rem) !important;

	}



	.bluemed-hero-lux--art .bluemed-hero-lux__visual--art {

		position: relative;

		min-height: min(62dvh, 520px) !important;

		align-items: flex-end !important;

		overflow: visible;

	}



	/* Soft accent blob behind tooth */

	.bluemed-hero-lux--art .bluemed-hero-lux__visual--art::before {

		content: "";

		position: absolute;

		right: -4%;

		bottom: 6%;

		width: min(78%, 560px);

		height: min(74%, 520px);

		border-radius: 58% 42% 50% 50% / 48% 52% 46% 54%;

		background:

			radial-gradient(ellipse 70% 60% at 38% 32%, rgba(205, 216, 228, 0.38), transparent 58%),

			radial-gradient(ellipse 50% 45% at 72% 70%, rgba(245, 242, 237, 0.55), transparent 55%);

		pointer-events: none;

		z-index: 0;

		opacity: 0.95;

	}



	.bluemed-hero-lux--art .bluemed-hero-lux__copy--art {

		padding-right: clamp(0.25rem, 1.5vw, 1.35rem);

	}



	.bluemed-hero-lux--art .bluemed-hero-lux__kicker {

		margin-bottom: clamp(0.85rem, 1.5vw, 1.15rem) !important;

	}



	.bluemed-hero-lux--art .bluemed-hero-lux__title {

		margin-bottom: clamp(1rem, 2vw, 1.35rem) !important;

		font-size: clamp(2.05rem, 4.15vw, 3.5rem) !important;

		font-weight: 700 !important;

		line-height: 1.07 !important;

		letter-spacing: -0.034em !important;

		max-width: 15ch !important;

	}



	.bluemed-hero-lux--art .bluemed-hero-lux__lead {

		margin-bottom: clamp(1.25rem, 2.5vw, 1.75rem) !important;

	}



	.bluemed-hero-lux--art .bluemed-hero-lux__cta-wrap {

		margin-top: clamp(1.65rem, 3.2vw, 2.85rem) !important;

	}



	.bluemed-hero-lux--art .bluemed-hero-lux__cta-wrap .wp-block-buttons {

		gap: 1rem 1.85rem !important;

	}



	.bluemed-hero-lux--art .bluemed-hero-lux__cta-note {

		margin-top: 1rem !important;

	}

}



@media (min-width: 900px) {

	.bluemed-hero-lux--art .bluemed-hero-lux__photo--hero-asset {

		position: relative;

		z-index: 2;

		max-width: min(178%, 1196px) !important;

		width: 170% !important;

		margin-right: -26% !important;

		margin-left: -7% !important;

	}



	.bluemed-hero-lux--art .bluemed-hero-lux__photo--hero-asset img {

		max-height: min(90vh, 874px) !important;

		width: 100% !important;

		height: auto !important;

		border-radius: 0 !important;

		box-shadow: none !important;

		filter:

			drop-shadow(0 44px 88px rgba(21, 61, 138, 0.14))

			drop-shadow(0 18px 36px rgba(205, 216, 228, 0.22)) !important;

		transform: translateX(4%) translateY(3%);

		animation: bluemed-hero-asset-float 9s ease-in-out infinite !important;

	}

}



@media (max-width: 899px) {

	.bluemed-hero-lux--art .bluemed-hero-lux__photo--hero-asset {

		width: 100% !important;

		max-width: 100% !important;

		margin-left: 0 !important;

		margin-right: 0 !important;

	}



	.bluemed-hero-lux--art .bluemed-hero-lux__photo--hero-asset img {

		max-height: min(48vh, 400px) !important;

		transform: none;

		border-radius: 0 !important;

		box-shadow: none !important;

		filter: drop-shadow(0 22px 40px rgba(21, 61, 138, 0.12)) !important;

		animation: bluemed-hero-asset-float 9s ease-in-out infinite !important;

	}

}



/* Services: 1 featured + 2×2 */

.bluemed-home-services__split5 {

	display: grid;

	grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr);

	gap: clamp(1rem, 2.2vw, 1.65rem);

	align-items: stretch;

}



@media (max-width: 959px) {

	.bluemed-home-services__split5 {

		grid-template-columns: 1fr;

	}

}



.bluemed-home-services__featured-col,

.bluemed-home-services__quad-wrap {

	min-width: 0;

}



/* Stretch both columns to one row height (WP flow layout resets display) */

.bluemed-home-services__split5 > .bluemed-home-services__featured-col,

.bluemed-home-services__split5 > .bluemed-home-services__quad-wrap {

	display: flex !important;

	flex-direction: column !important;

	align-self: stretch !important;

	min-height: 0;

	height: 100%;

	/*

	 * is-layout-flow injects margin-block-start on the 2nd child (~24px),

	 * which shifts the quad column down while heights still match — bottoms misalign.

	 * Grid gap already spaces the columns; flow margins must be zeroed here.

	 */

	margin-block-start: 0 !important;

	margin-block-end: 0 !important;

}



.bluemed-home-services__split5.is-layout-flow > *,

.bluemed-home-services__split5.wp-block-group-is-layout-flow > * {

	margin-block-start: 0 !important;

	margin-block-end: 0 !important;

}



.bluemed-home-services__featured-col .bluemed-home-svc-card--hero {

	flex: 1 1 auto;

	min-height: 0;

	height: 100%;

	display: flex;

	flex-direction: column;

}



.bluemed-home-services__featured-col .bluemed-home-svc-card--hero .bluemed-home-svc-card__img {

	flex: 1 1 auto;

	min-height: 200px;

}



/* Quad column fills featured height; inner grid is equal 2×2 rows */

.bluemed-home-services__quad-wrap.wp-block-group-is-layout-flow,

.bluemed-home-services__quad-wrap {

	display: flex !important;

	flex-direction: column !important;

	flex: 1 1 auto !important;

	min-height: 0 !important;

	height: 100% !important;

	align-self: stretch !important;

}



.bluemed-home-services__quad-grid {

	display: grid !important;

	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);

	grid-template-rows: 1fr 1fr;

	grid-auto-rows: 1fr;

	gap: clamp(0.75rem, 1.6vw, 1.15rem);

	flex: 1 1 auto !important;

	min-height: 0 !important;

	height: 100% !important;

	width: 100%;

	align-self: stretch;

}



.bluemed-home-services__quad-grid > .bluemed-home-svc-cell--quad {

	display: flex !important;

	min-height: 0;

	height: 100%;

	align-self: stretch;

	margin-block-start: 0 !important;

	margin-block-end: 0 !important;

}



/* Core block layout (is-layout-flow) adds vertical margins between children — zero in 2×2 grid */

.bluemed-home-services__quad-grid.is-layout-flow > *,

.bluemed-home-services__quad-grid.wp-block-group-is-layout-flow > * {

	margin-block-start: 0 !important;

	margin-block-end: 0 !important;

}



.bluemed-home-services--split5 .bluemed-home-svc-cell--quad.is-layout-flow > *,

.bluemed-home-services--split5 .bluemed-home-svc-cell--quad.wp-block-group-is-layout-flow > * {

	margin-block-start: 0 !important;

	margin-block-end: 0 !important;

}



.bluemed-home-services__quad-grid > .bluemed-home-svc-cell--quad > .bluemed-home-svc-card--quad {

	flex: 1 1 auto;

	width: 100%;

	min-height: 0;

}



.bluemed-home-services--split5 .bluemed-home-svc-card--quad {

	height: 100%;

	display: flex;

	flex-direction: column;

}



.bluemed-home-services--split5 .bluemed-home-svc-card--quad figure {

	flex-shrink: 0;

}



.bluemed-home-services--split5 .bluemed-home-svc-card--quad > .wp-block-group:last-of-type {

	flex: 1 1 auto;

	display: flex;

	flex-direction: column;

}



.bluemed-home-services--split5 .bluemed-home-svc-card--quad .bluemed-svc-link-arrow {

	margin-top: auto;

}



.bluemed-home-services--split5 .bluemed-home-svc-card--quad .bluemed-svc-card__icon,

.bluemed-home-services--split5 .bluemed-home-svc-card--quad .bluemed-svc-card__icon svg {

	width: 1.22rem !important;

	height: 1.22rem !important;

}



/* Team: equal premium cards */

.bluemed-home-team--equal .bluemed-home-team__equal-grid .wp-block-column {

	display: flex;

}



.bluemed-home-team--equal .bluemed-home-team__equal-grid .wp-block-column > .wp-block-group {

	width: 100%;

}



.bluemed-home-team-card {

	height: 100%;

	display: flex;

	flex-direction: column;

	align-items: stretch;

	text-align: center;

	transition: transform 0.38s var(--bluemed-ease-out), box-shadow 0.38s ease !important;

}



.bluemed-home-team-card:hover {

	transform: translateY(-5px);

	box-shadow: var(--bm-shadow-xl) !important;

}



.bluemed-home-team-card .bluemed-home-team-card__avatar {

	flex-shrink: 0;

}



.bluemed-home-team-card p:last-of-type {

	margin-bottom: 0;

	flex-grow: 1;

}



@media (max-width: 781px) {

	.bluemed-home-team--equal .bluemed-home-team__equal-grid {

		flex-direction: column !important;

	}

}



/* Section rhythm: testimonials → blog, CTA → footer */

.bluemed-home-testimonials.bluemed-home-testimonials--art.alignfull {

	padding-bottom: clamp(2.5rem, 5.5vw, 3.75rem) !important;

}



.bluemed-home-blog-editorial.alignfull {

	margin-top: 0 !important;

	padding-top: var(--wp--preset--spacing--section-y-md) !important;

}



.bluemed-home-cta.bluemed-home-cta--art.alignfull {

	padding-bottom: clamp(2.25rem, 5vw, 3.25rem) !important;

}



/* --------------------------------------------------------------------------

   HOMEPAGE HERO — header overlays art hero (transparent → solid on scroll)

   Active when page contains .bluemed-hero-mega.bluemed-hero-lux--art

   -------------------------------------------------------------------------- */

body:has(.bluemed-hero-mega.bluemed-hero-lux--art) .bluemed-header {

	position: fixed;

	top: 0;

	left: 0;

	right: 0;

	width: 100%;

	z-index: 200;

	border-bottom: none !important;

	background-color: transparent !important;

	background-image: none !important;

	backdrop-filter: none !important;

	-webkit-backdrop-filter: none !important;

	box-shadow: none !important;

	transition:

		background-color 0.35s ease,

		box-shadow 0.4s ease,

		backdrop-filter 0.35s ease,

		-webkit-backdrop-filter 0.35s ease;

}



body:has(.bluemed-hero-mega.bluemed-hero-lux--art) .bluemed-header.is-scrolled {

	background-color: rgba(255, 255, 255, 0.93) !important;

	backdrop-filter: saturate(180%) blur(16px) !important;

	-webkit-backdrop-filter: saturate(180%) blur(16px) !important;

	border-bottom: none !important;

	box-shadow:

		0 18px 50px rgba(21, 61, 138, 0.065),

		0 1px 0 rgba(255, 255, 255, 0.88) inset !important;

}



body:has(.bluemed-hero-mega.bluemed-hero-lux--art) {

	scroll-padding-top: clamp(4.5rem, 11vw, 6.5rem);

}



@media (min-width: 900px) {

	body:has(.bluemed-hero-mega.bluemed-hero-lux--art) .bluemed-hero-lux--art .bluemed-hero-lux__stage {

		padding-top: clamp(5.35rem, 12.5vw, 7.5rem) !important;

	}

}



@media (max-width: 899px) {

	body:has(.bluemed-hero-mega.bluemed-hero-lux--art) .bluemed-header {

		position: sticky;

		top: 0;

		z-index: 100;

		border-bottom: 1px solid var(--bluemed-line) !important;

		background-color: rgba(255, 255, 255, 0.96) !important;

		backdrop-filter: saturate(160%) blur(12px) !important;

		-webkit-backdrop-filter: saturate(160%) blur(12px) !important;

		box-shadow: 0 1px 0 rgba(255, 255, 255, 0.9) !important;

	}



	body:has(.bluemed-hero-mega.bluemed-hero-lux--art) .bluemed-header.is-scrolled {

		box-shadow: 0 4px 24px rgba(21, 61, 138, 0.08), 0 1px 0 rgba(168, 168, 168, 0.2) !important;

	}

}



/* ==========================================================================

   FINAL LUXURY POLISH — services hovers, team, blog 3-up, CTA rhythm, hero motion

   ========================================================================== */



@media (prefers-reduced-motion: reduce) {

	.bluemed-hero-lux--art .bluemed-hero-lux__photo--hero-asset img {

		animation: none !important;

	}

}



/* Services: quad + featured — lift, shadow, subtle image zoom */

.bluemed-home-services--split5 .bluemed-home-svc-card--quad {

	overflow: hidden;

}



.bluemed-home-services--split5 .bluemed-home-svc-card--quad figure img {

	transition: transform 0.55s var(--bluemed-ease-out);

}



.bluemed-home-services--split5 .bluemed-home-svc-card--quad:hover {

	transform: translateY(-6px) !important;

	box-shadow:

		0 28px 64px rgba(21, 61, 138, 0.11),

		0 0 0 1px rgba(205, 216, 228, 0.22) !important;

}



.bluemed-home-services--split5 .bluemed-home-svc-card--quad:hover figure img {

	transform: scale(1.045);

}



.bluemed-home-services--split5 .bluemed-home-svc-card--hero .bluemed-home-svc-card__img img {

	transition: transform 0.65s var(--bluemed-ease-out);

}



.bluemed-home-services--split5 .bluemed-home-svc-card--hero:hover .bluemed-home-svc-card__img img {

	transform: scale(1.03);

}



.bluemed-home-services--split5 .bluemed-home-svc-card--hero:hover {

	box-shadow:

		0 36px 80px rgba(21, 61, 138, 0.14),

		0 0 0 1px rgba(205, 216, 228, 0.2) !important;

}



/* Team: slightly larger avatars + tighter hierarchy (pattern + CSS) */

.bluemed-home-team-card .bluemed-home-team-card__avatar {

	max-width: 128px !important;

	margin: 0 auto 0.75rem !important;

	display: block;

}



.bluemed-home-team-card .bluemed-home-team-card__avatar img {

	width: 128px !important;

	height: 128px !important;

	aspect-ratio: 1;

	object-fit: cover;

	object-position: center top;

	border-radius: 999px;

	display: block;

	margin: 0 auto;

	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);

}



.bluemed-home-team-card h3.wp-block-heading {

	letter-spacing: -0.02em;

	margin-bottom: 0.35rem !important;

}



.bluemed-home-team-card p.has-xs-font-size {

	margin-bottom: 0.65rem !important;

	letter-spacing: 0.09em;

}



/* Blog: 3 equal premium cards */

.bluemed-home-blog-editorial--grid3 .wp-block-post-template.is-layout-grid {

	display: grid !important;

	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;

	gap: clamp(1.1rem, 2.2vw, 1.65rem) !important;

	align-items: stretch !important;

}



@media (max-width: 960px) {

	.bluemed-home-blog-editorial--grid3 .wp-block-post-template.is-layout-grid {

		grid-template-columns: 1fr !important;

	}

}



.bluemed-home-blog-editorial__card {

	display: flex !important;

	flex-direction: column !important;

	height: 100%;

	border-radius: 24px !important;

	box-shadow: var(--bm-shadow-hero) !important;

	transition:

		transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),

		box-shadow 0.45s ease !important;

}



.bluemed-home-blog-editorial__card:hover {

	transform: translateY(-5px);

	box-shadow: var(--bm-shadow-xl) !important;

}



.bluemed-home-blog-editorial__card .bluemed-home-blog-editorial__card-img,

.bluemed-home-blog-editorial__card .wp-block-post-featured-image {

	aspect-ratio: 16 / 10;

	overflow: hidden;

}



.bluemed-home-blog-editorial__card .wp-block-post-featured-image img,

.bluemed-home-blog-editorial__card .bluemed-home-blog-editorial__card-img img {

	width: 100%;

	height: 100%;

	object-fit: cover;

	display: block;

	transition: transform 0.6s var(--bluemed-ease-out);

}



.bluemed-home-blog-editorial__card:hover .wp-block-post-featured-image img {

	transform: scale(1.04);

}



.bluemed-home-blog-editorial__card-body {

	flex: 1 1 auto;

	display: flex;

	flex-direction: column;

	min-height: 0;

}



.bluemed-home-blog-editorial__card-body .wp-block-post-excerpt {

	flex: 1 1 auto;

}



.bluemed-home-blog-editorial__read--card {

	margin-top: auto;

}



/* CTA: slightly calmer vertical rhythm */

.bluemed-home-cta.bluemed-home-cta--art.alignfull {

	padding-top: clamp(3.75rem, 8vw, 5.25rem) !important;

	padding-bottom: clamp(2.75rem, 5.5vw, 3.75rem) !important;

}



@media (prefers-reduced-motion: reduce) {

	.bluemed-testimonials-slider--xl .bluemed-testimonials-slider__slide {

		transition: none !important;

	}

}



/* ==========================================================================

   Color system v3 — lighter premium dental + dynamic text contrast

   (no layout / spacing / structure changes)

   ========================================================================== */



/* —— Light surfaces: dark readable text —— */

body,

.wp-site-blocks,

.bluemed-on-light {

	color: var(--text-primary);

	background-color: var(--background-primary);

}



.wp-block-heading,

h1,

h2,

h3,

h4,

h5,

h6,

.wp-block-post-title {

	color: var(--text-heading);

}



p,

li,

.wp-block-paragraph,

.wp-block-list {

	color: var(--text-primary);

}



.has-text-color.has-graphite-color:not(.has-white-color),

.has-graphite-color:not(.has-white-color):where(p, li, span, .wp-block-paragraph) {

	color: var(--text-primary) !important;

}



.wp-block-heading.has-graphite-color,

h1.has-graphite-color,

h2.has-graphite-color,

h3.has-graphite-color,

h4.has-graphite-color,

h5.has-graphite-color,

h6.has-graphite-color {

	color: var(--text-heading) !important;

}



.has-sand-background-color:not(.wp-block-navigation__responsive-container),

.has-surface-background-color:not(.wp-block-navigation__responsive-container),

.bluemed-nav .wp-block-navigation__responsive-container.is-menu-open {

	background-color: var(--background-primary) !important;

	background-image: linear-gradient(180deg, rgba(215, 227, 225, 0.28) 0%, transparent 45%);

}



.has-surface-background-color {

	background-color: var(--background-secondary) !important;

}



.has-white-background-color {

	background-color: var(--bluemed-white) !important;

}



/* —— Dark / accent surfaces: light text (automatic contrast) —— */

.has-graphite-background-color,

.bluemed-on-dark,

.bluemed-footer,

.bluemed-testimonials-band,

.bluemed-home-testimonials,

.bluemed-cta-band.has-graphite-background-color,

.bluemed-home-cta--art {

	color: var(--text-on-dark);

	--wp--preset--color--graphite: var(--accent-primary);

}



.has-graphite-background-color:not(.bluemed-home-cta--art),

.bluemed-on-dark:not(.bluemed-home-cta--art) {

	background-color: var(--accent-primary) !important;

}



.has-graphite-background-color :where(h1, h2, h3, h4, h5, h6, .wp-block-heading):not(.has-text-color),

.has-graphite-background-color .wp-block-heading,

.bluemed-on-dark :where(h1, h2, h3, h4, h5, h6, .wp-block-heading) {

	color: var(--text-on-dark) !important;

}



.has-graphite-background-color :where(h1, h2, h3, h4, h5, h6).has-white-color,

.has-graphite-background-color .wp-block-heading.has-white-color,

.bluemed-on-dark :where(h1, h2, h3, h4, h5, h6).has-white-color,

.bluemed-on-dark .wp-block-heading.has-white-color {

	color: #ffffff !important;

	opacity: 1 !important;

}



/* Light text on dark band header only — never inside testimonial slider/cards */

.bluemed-home-testimonials__head :where(p, span):not(.has-ash-color),

.has-graphite-background-color > :where(p, span):not(.has-ash-color) {

	color: var(--text-on-dark-soft) !important;

}



.has-graphite-background-color .has-graphite-color:not(.has-white-color):not(.wp-block-button__link) {

	color: var(--text-on-dark-soft) !important;

}



.has-graphite-background-color .bluemed-testimonials-slider__quote .has-graphite-color {

	color: #33343D !important;

}



/* Nested light surfaces inside dark sections → dark readable text */

.has-graphite-background-color .has-white-background-color,

.has-graphite-background-color .has-white-background-color :where(p, li, span, .wp-block-paragraph, blockquote),

.has-graphite-background-color .is-style-bluemed-card,

.has-graphite-background-color .is-style-bluemed-card :where(p, li, span, .wp-block-paragraph, blockquote, cite),

.has-graphite-background-color .bluemed-testimonials-slider,

.has-graphite-background-color .bluemed-testimonials-slider__viewport,

.has-graphite-background-color .bluemed-testimonials-slider__slide {

	color: #33343D !important;

}



.has-graphite-background-color .bluemed-testimonials-slider__quote,

.has-graphite-background-color .bluemed-testimonials-slider__quote :where(p, li, span, cite, footer, .bluemed-testimonials-slider__meta),

.has-graphite-background-color.has-white-color .bluemed-testimonials-slider__quote p,

.bluemed-home-testimonials.has-graphite-background-color .bluemed-testimonials-slider__quote p,

.has-graphite-background-color .has-sand-background-color :where(p, li, span, .wp-block-paragraph),

.has-graphite-background-color .has-surface-background-color :where(p, li, span, .wp-block-paragraph) {

	color: #33343D !important;

	opacity: 1 !important;

	-webkit-text-fill-color: #33343D;

}



.has-graphite-background-color .has-white-background-color :where(h1, h2, h3, h4, h5, h6, .wp-block-heading),

.has-graphite-background-color .is-style-bluemed-card :where(h1, h2, h3, h4, h5, h6, .wp-block-heading),

.has-graphite-background-color .bluemed-testimonials-slider__quote cite {

	color: var(--text-heading) !important;

}



.has-graphite-background-color .has-white-background-color .has-graphite-color,

.has-graphite-background-color .is-style-bluemed-card .has-graphite-color,

.has-graphite-background-color .bluemed-testimonials-slider__quote .has-graphite-color {

	color: var(--text-primary) !important;

}



.has-graphite-background-color .has-ash-color,

.bluemed-home-testimonials__head .has-ash-color {

	color: rgba(248, 246, 242, 0.88) !important;

}



.has-graphite-background-color .has-white-background-color .has-ash-color,

.has-graphite-background-color .bluemed-testimonials-slider__quote .has-ash-color,

.has-graphite-background-color .bluemed-testimonials-slider__meta {

	color: var(--bluemed-ash) !important;

}



.has-graphite-background-color .has-white-color,

.has-graphite-background-color a:where(:not(.wp-block-button__link)),

.bluemed-home-testimonials__head a:where(:not(.wp-block-button__link)) {

	color: var(--text-on-dark) !important;

}



.has-graphite-background-color a:where(:not(.wp-block-button__link)):hover,

.bluemed-home-testimonials__head a:where(:not(.wp-block-button__link)):hover {

	color: var(--text-on-dark-soft) !important;

	opacity: 0.95;

}



.has-graphite-background-color .has-white-background-color a:where(:not(.wp-block-button__link)),

.has-graphite-background-color .bluemed-testimonials-slider__quote a,

.has-graphite-background-color .is-style-bluemed-card a:where(:not(.wp-block-button__link)) {

	color: var(--accent-primary) !important;

	opacity: 1;

}



.has-graphite-background-color .has-white-background-color a:where(:not(.wp-block-button__link)):hover,

.has-graphite-background-color .bluemed-testimonials-slider__quote a:hover {

	color: var(--accent-primary-hover) !important;

}



/* —— Links & buttons on light UI —— */

a:where(:not(.wp-block-button__link)) {

	color: var(--accent-primary);

}



a:where(:not(.wp-block-button__link)):hover {

	color: var(--accent-primary-hover);

}



.wp-block-button.is-style-outline .wp-block-button__link {

	color: var(--accent-primary) !important;

	border-color: rgba(21, 61, 138, 0.32) !important;

}



.wp-block-button.is-style-outline .wp-block-button__link:hover,

.bluemed-hero-lux__cta-secondary .wp-block-button__link:hover {

	background-color: var(--bluemed-spa-soft) !important;

	border-color: var(--accent-secondary) !important;

	color: var(--accent-primary-hover) !important;

}



.bluemed-btn-primary .wp-block-button__link,

.bluemed-header__cta .wp-block-button__link,

.has-graphite-background-color .wp-block-button:not(.is-style-outline) .wp-block-button__link,

.bluemed-home-cta__btn-main .wp-block-button__link {

	background-color: var(--accent-primary) !important;

	color: var(--text-on-dark) !important;

}



.bluemed-btn-primary .wp-block-button__link:hover,

.bluemed-header__cta .wp-block-button__link:hover,

.has-graphite-background-color .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {

	background-color: var(--accent-primary-hover) !important;

	color: var(--text-on-dark) !important;

}



/* Oak CTA on dark band — keep warm contrast */

.bluemed-home-cta--art .bluemed-home-cta__btn-main .wp-block-button__link {

	background: var(--bluemed-oak) !important;

	color: var(--text-heading) !important;

}



.bluemed-home-cta--art .bluemed-home-cta__btn-main .wp-block-button__link:hover {

	background: #e8d4bc !important;

	color: var(--text-heading) !important;

}



.has-graphite-background-color .wp-block-button.is-style-outline .wp-block-button__link {

	color: var(--text-on-dark) !important;

	border-color: rgba(255, 255, 255, 0.5) !important;

}



.has-graphite-background-color .wp-block-button.is-style-outline .wp-block-button__link:hover {

	background: rgba(215, 227, 225, 0.16) !important;

	border-color: rgba(255, 255, 255, 0.85) !important;

	color: var(--text-on-dark) !important;

}



/* —— Cards, badges, spa accents —— */

.is-style-bluemed-card {

	background-color: var(--bluemed-white);

}



.is-style-bluemed-card:hover {

	background-color: var(--bluemed-spa-soft);

}



.bluemed-pay-badge {

	background: var(--bluemed-spa-soft);

	border-color: rgba(215, 227, 225, 0.7);

}



.bluemed-pay-badge:hover {

	border-color: var(--accent-secondary);

	background: rgba(215, 227, 225, 0.55);

}



.bluemed-nav .wp-block-navigation-item .wp-block-navigation-item__content {

	color: var(--text-heading);

}



.bluemed-nav .wp-block-navigation-item .wp-block-navigation-item__content:hover,

.bluemed-nav .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content {

	color: var(--accent-primary);

}



.bluemed-hero-mega::after {

	background: radial-gradient(ellipse at 60% 30%, var(--bm-spa-muted) 0%, transparent 72%);

}



.bluemed-home-ribbon__tile:not(.bluemed-home-ribbon__tile--accent) {

	background-color: var(--background-secondary) !important;

	border: 1px solid rgba(215, 227, 225, 0.65);

}



.bluemed-hero-lux__review-badge {

	border: 1px solid rgba(215, 227, 225, 0.6);

	background: linear-gradient(145deg, #fff 0%, var(--bluemed-spa-soft) 100%);

}



.bluemed-home-cta--art h2 {

	color: var(--text-on-dark) !important;

	text-shadow: 0 2px 32px rgba(18, 54, 122, 0.28);

}



/* Final CTA photo — wins over any legacy gradient rules */

.bluemed-cta-band.bluemed-home-cta.bluemed-home-cta--art,

.bluemed-home-cta.bluemed-home-cta--art.alignfull {

	background-color: transparent !important;

	background-image: var(--bluemed-cta-bg-image, url("/wp-content/uploads/2026/05/920.webp")) !important;

	background-size: cover !important;

	background-position: center center !important;

	background-repeat: no-repeat !important;

}



.bluemed-footer,

.bluemed-footer.has-graphite-background-color {

	background: var(--accent-primary) !important;

	background-color: var(--accent-primary) !important;

	background-image: none !important;

	color: #ffffff !important;

}



.bluemed-footer :where(p, li, span):not(.has-oak-color),

.bluemed-footer .bluemed-sc,

.bluemed-footer .bluemed-sc p {

	color: #ffffff !important;

}



.bluemed-lucide,

.bluemed-lucide svg,

[data-lucide] {

	color: var(--accent-primary);

	stroke: var(--accent-primary);

}



.has-graphite-background-color .bluemed-lucide,

.has-graphite-background-color .bluemed-lucide svg,

.has-graphite-background-color [data-lucide],

.bluemed-on-dark .bluemed-lucide,

.bluemed-on-dark .bluemed-lucide svg {

	color: var(--text-on-dark);

	stroke: var(--text-on-dark);

}



/* Nawigacja — zamknięty kontener (desktop + podstrony): bez tła sand */

.bluemed-header .bluemed-nav.wp-block-navigation .wp-block-navigation__responsive-container:not(.is-menu-open.is-menu-open),

.bluemed-header .bluemed-nav .wp-block-navigation__responsive-container:not(.is-menu-open.is-menu-open) {

	background-color: transparent !important;

	background-image: none !important;

	color: inherit !important;

	box-shadow: none !important;

}



@media (min-width: 600px) {

	.bluemed-header .bluemed-nav.wp-block-navigation .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open),

	.bluemed-header .bluemed-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {

		background-color: transparent !important;

		background-image: none !important;

	}

}



/* --------------------------------------------------------------------------

   HERO SLIDER — fade transition, dots navigation

   -------------------------------------------------------------------------- */



/* Track: all slides stack in the same cell.

   !important guards against WordPress's is-layout-flow generated CSS. */

.bluemed-hero-slider__track,

.bluemed-hero-slider__track.wp-block-group {

	display: grid !important;

	grid-template-rows: auto !important;

	grid-template-columns: 100% !important;

	width: 100%;

}



/* Remove WP's automatic block-gap margin between slides */

.bluemed-hero-slider__track > *,

.bluemed-hero-slider__track.wp-block-group > * {

	margin-block-start: 0 !important;

	margin-block-end: 0 !important;

}



.bluemed-hero-slider__slide,

.bluemed-hero-slider__slide.wp-block-group {

	grid-row: 1 !important;

	grid-column: 1 !important;

	min-width: 0;

	opacity: 0;

	transition: opacity 0.85s ease;

	pointer-events: none;

}



.bluemed-hero-slider__slide.is-active,

.bluemed-hero-slider__slide.is-active.wp-block-group {

	opacity: 1;

	pointer-events: auto;

}



/* Pause float animation on inactive slides */

.bluemed-hero-slider__slide:not(.is-active) .bluemed-hero-lux__photo--hero-asset img {

	animation-play-state: paused !important;

}



/* Portrait photo for slide 3 */

.bluemed-hero-lux__photo--portrait {

	display: flex;

	align-items: center;

	justify-content: flex-end;

	height: 100%;

}



.bluemed-hero-lux__photo--portrait img {

	border-radius: 28px !important;

	box-shadow: var(--bm-shadow-hero, 0 40px 100px rgba(51, 52, 61, 0.08)) !important;

	height: min(90vh, 874px) !important;

	max-height: min(90vh, 874px) !important;

	object-fit: cover !important;

	object-position: center top !important;

	width: 100% !important;

	display: block !important;

	animation: none !important;

}



/* Dots */

.bluemed-hero-slider__dots {

	position: absolute;

	bottom: clamp(1.75rem, 3.5vw, 3rem);

	left: clamp(1.5rem, 5vw, 3.5rem);

	display: flex;

	gap: 0.5rem;

	align-items: center;

	z-index: 20;

}



.bluemed-hero-slider__dot {

	height: 10px;

	width: 10px;

	border-radius: 999px;

	border: none;

	background: rgba(21, 61, 138, 0.18);

	cursor: pointer;

	padding: 0;

	flex-shrink: 0;

	transition:

		background 0.35s ease,

		width 0.35s var(--bluemed-ease-out, cubic-bezier(0.22, 1, 0.36, 1));

}



.bluemed-hero-slider__dot:hover {

	background: rgba(21, 61, 138, 0.4);

}



.bluemed-hero-slider__dot.is-active {

	background: var(--accent-primary, #153D8A);

	width: 30px;

}



/* Arrows */

.bluemed-hero-slider__arrow {

	position: absolute;

	top: 50%;

	transform: translateY(-50%);

	z-index: 20;

	display: flex;

	align-items: center;

	justify-content: center;

	width: 48px;

	height: 48px;

	border-radius: 50%;

	border: 1.5px solid rgba(21, 61, 138, 0.18);

	background: rgba(255, 255, 255, 0.88);

	color: var(--accent-primary, #153D8A);

	cursor: pointer;

	padding: 0;

	backdrop-filter: blur(8px);

	-webkit-backdrop-filter: blur(8px);

	box-shadow: 0 4px 20px rgba(21, 61, 138, 0.1);

	transition:

		background 0.25s ease,

		border-color 0.25s ease,

		box-shadow 0.25s ease,

		transform 0.25s var(--bluemed-ease-out, cubic-bezier(0.22, 1, 0.36, 1));

}



.bluemed-hero-slider__arrow:hover {

	background: #fff;

	border-color: rgba(21, 61, 138, 0.35);

	box-shadow: 0 8px 32px rgba(21, 61, 138, 0.16);

	transform: translateY(calc(-50% - 2px));

}



.bluemed-hero-slider__arrow--prev {

	left: clamp(1rem, 2.5vw, 2.5rem);

}



.bluemed-hero-slider__arrow--next {

	right: clamp(1rem, 2.5vw, 2.5rem);

}



/* Reduced motion — instant swap, no autoplay */

@media (prefers-reduced-motion: reduce) {

	.bluemed-hero-slider__slide {

		transition: opacity 0.01ms !important;

	}

	.bluemed-hero-slider__dot,

	.bluemed-hero-slider__arrow {

		transition: none !important;

	}

}



@media (max-width: 781px) {

	.bluemed-hero-slider__dots {

		left: 50%;

		transform: translateX(-50%);

		bottom: 1.25rem;

	}



	.bluemed-hero-slider__arrow {

		width: 40px;

		height: 40px;

		top: auto;

		bottom: 1.1rem;

		transform: none;

	}



	.bluemed-hero-slider__arrow:hover {

		transform: none;

	}



	.bluemed-hero-slider__arrow--prev {

		left: clamp(0.75rem, 4vw, 1.5rem);

	}



	.bluemed-hero-slider__arrow--next {

		right: clamp(0.75rem, 4vw, 1.5rem);

	}

}



/* ── About-split: feature checklist rows (now wp:group blocks) ──────────── */

.bluemed-home-about__features.wp-block-group {

	display: flex;

	flex-direction: column;

	gap: 0.85rem;

	margin-bottom: 2rem;

}



.bluemed-about-feature-item.wp-block-group {

	display: flex !important;

	align-items: center;

	gap: 0.75rem;

	font-size: 0.88rem;

	font-weight: 600;

	color: var(--bluemed-graphite);

}



.bluemed-about-feature-item.wp-block-group > .wp-block-paragraph {

	margin: 0;

	font-size: inherit;

	font-weight: inherit;

	color: inherit;

}



.bluemed-about-feature-item__icon {

	width: 1.5rem;

	height: 1.5rem;

	border-radius: 50%;

	background: var(--bluemed-oak);

	display: flex;

	align-items: center;

	justify-content: center;

	flex-shrink: 0;

}



.bluemed-about-feature-item__icon i[data-lucide] {

	width: 0.75rem;

	height: 0.75rem;

	color: #8C5A44;

}



/* ── CTA pills: margin reset when rendered as wp:paragraph ─────────────── */

p.bluemed-home-cta__pill {

	margin: 0;

}



/* ==========================================================================

   RESPONSIVE — Phase 2B Pass 1: Layout Stability

   ========================================================================== */

/* (footer responsive rules are appended below the Phase 2B section) */



/* ==========================================================================

   RESPONSIVE — Phase 2C: Touch Targets · Focus States · Micro-spacing

   ========================================================================== */



/* ── Heading overflow protection ────────────────────────────────────────── */

/* Prevents long words / URLs from breaking container width on small screens */

h1, h2, h3, h4, h5, h6 {

	overflow-wrap: break-word;

	min-width: 0;

}



/* ── Nav: mobile open/close buttons — 44×44 touch target ───────────────── */

.bluemed-nav .wp-block-navigation__responsive-container-open,

.bluemed-nav .wp-block-navigation__responsive-container-close {

	min-height: 44px;

	min-width: 44px;

	display: inline-flex;

	align-items: center;

	justify-content: center;

	box-sizing: border-box;

}



/* ── Hero slider arrows — 44×44 on mobile (up from 40×40) ──────────────── */

@media (max-width: 781px) {

	.bluemed-hero-slider__arrow {

		width: 44px;

		height: 44px;

	}

}



/* ── Hero slider dots — invisible 44px hit area via ::before ────────────── */

/* Visual dot stays 10px; tap area extended 17px each side = 44px total */

.bluemed-hero-slider__dot {

	position: relative;

}



.bluemed-hero-slider__dot::before {

	content: '';

	position: absolute;

	inset: -17px;

}



/* ── Testimonial slider dots — invisible 44px hit area ─────────────────── */

/* Visual dot is 8-9px; extend 18px each side = 44px total */

.bluemed-testimonials-slider__dot {

	position: relative;

}



.bluemed-testimonials-slider__dot::before {

	content: '';

	position: absolute;

	inset: -18px;

}



/* ── WP block buttons — minimum 44px height on mobile ──────────────────── */

/* Pill buttons already exceed 44px on desktop; this guards small screens */

@media (max-width: 600px) {

	.wp-block-button__link,

	.wp-element-button {

		min-height: 44px;

	}

}



/* ── Focus rings — enhanced for keyboard / switch navigation ────────────── */

/* Overrides the earlier 2px outline with a 3px, more visible version */

a:focus-visible,

button:focus-visible,

[role="button"]:focus-visible,

input:focus-visible,

select:focus-visible,

textarea:focus-visible,

.wp-block-button__link:focus-visible,

.wp-element-button:focus-visible {

	outline: 3px solid var(--accent-primary, #153D8A) !important;

	outline-offset: 3px !important;

	border-radius: 4px !important;

}



/* Circular elements get a rounded focus ring */

.bluemed-hero-slider__arrow:focus-visible,

.bluemed-hero-slider__dot:focus-visible,

.bluemed-testimonials-slider__dot:focus-visible {

	outline: 3px solid var(--accent-primary, #153D8A) !important;

	outline-offset: 4px !important;

	border-radius: 50% !important;

}



/* ── Micro-spacing at ≤360px ─────────────────────────────────────────────── */

/* Side padding already resolves via clamp() at 1.5rem minimum.

   Only add overrides where a specific section is known to be too tight. */

@media (max-width: 360px) {

	/* Hero stages: reduce to 1rem side padding on very small phones */

	.bluemed-svc-hero__stage {

		padding-left: 1rem !important;

		padding-right: 1rem !important;

	}



	/* Blog / registration hero stages */

	.bluemed-blog-hero__stage,

	.bluemed-reg-hero__stage {

		padding-left: 1rem !important;

		padding-right: 1rem !important;

	}



	/* Card internal padding: keep layout comfortable without overflow */

	.is-style-bluemed-card {

		padding: 1.25rem !important;

	}

}



/* ==========================================================================

   RESPONSIVE LAYOUT — Phase 2B Pass 1

   Centralised layout-stability rules shared across pages.

   Desktop design is unchanged; these rules only affect ≤900px.

   ========================================================================== */



/* ── Footer column grid — explicit responsive control ──────────────────── */



/* ≤900px: keep 3 columns but reduce gap for tighter viewports */

@media (max-width: 900px) {

	.bluemed-footer .wp-block-columns.alignwide {

		gap: clamp(1.25rem, 4vw, 2rem) !important;

	}

}



/* ≤768px: stack to 1 column + center-align all content */

@media (max-width: 768px) {

	.bluemed-footer .wp-block-columns.alignwide {

		display: flex !important;

		flex-direction: column;

		gap: 2rem !important;

	}



	.bluemed-footer .wp-block-columns.alignwide .wp-block-column {

		flex-basis: 100% !important;

		text-align: center;

	}



	/* Center-align shortcode output inside footer */

	.bluemed-footer .bluemed-sc,

	.bluemed-footer .bluemed-sc p,

	.bluemed-footer .bluemed-social,

	.bluemed-footer .wp-block-heading {

		text-align: center;

	}



	.bluemed-footer .bluemed-social {

		justify-content: center;

	}

}



/* ── Footer social links: comfortable tap target ───────────────────────── */

.bluemed-footer .bluemed-social a {

	display: inline-flex;

	align-items: center;

	padding: 0.35rem 0.2rem;  /* vertical padding enlarges tap area */

	min-height: 44px;

}



/* ── Footer legal links: comfortable tap target ─────────────────────────── */

.bluemed-footer__legal a {

	display: inline-flex;

	align-items: center;

	min-height: 44px;

	padding: 0.3rem 0.15rem;

}

