/**
 * Strona główna — responsywna adaptacja desktopu (bez osobnego layoutu mobile).
 * Desktop 900px+ pozostaje bez zmian w premium.css.
 */

body.home,
body.front-page {
	overflow-x: clip;
}

body.home .wp-site-blocks,
body.front-page .wp-site-blocks {
	overflow-x: clip;
}

/* --------------------------------------------------------------------------
   Equal-height homepage cards (structural only — no visual redesign)
   --------------------------------------------------------------------------
   Gutenberg Group layout:default adds is-layout-flow, which injects
   margin-block-start on every child except :first-child. When those
   children sit in a CSS Grid row with stretch, the first card is ~24px
   taller than the rest. Grid gap already handles spacing.
   -------------------------------------------------------------------------- */

/* —— “Cztery powody…” — four tiles share one row height —— */
.bluemed-home-ribbon--art .bluemed-home-ribbon__grid {
	align-items: stretch;
}

.bluemed-home-ribbon--art .bluemed-home-ribbon__grid.is-layout-flow > *,
.bluemed-home-ribbon--art .bluemed-home-ribbon__grid.wp-block-group-is-layout-flow > *,
.bluemed-home-ribbon--art .bluemed-home-ribbon__grid > .bluemed-home-ribbon__tile {
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
}

.bluemed-home-ribbon--art .bluemed-home-ribbon__tile {
	height: 100%;
	align-self: stretch;
	min-height: 0;
	box-sizing: border-box;
}

/* —— Homepage blog — three cards share one row height; CTA sits at bottom —— */
.bluemed-home-blog-editorial--grid3 .wp-block-post-template.is-layout-grid,
.bluemed-home-blog-editorial--grid3 ul.wp-block-post-template {
	align-items: stretch !important;
}

.bluemed-home-blog-editorial--grid3 .wp-block-post-template > .wp-block-post {
	display: flex;
	flex-direction: column;
	align-self: stretch;
	height: 100%;
	min-height: 0;
	margin: 0 !important;
	padding: 0 !important;
	border-bottom: none !important;
}

.bluemed-home-blog-editorial--grid3 .bluemed-home-blog-editorial__card {
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto;
	width: 100%;
	height: 100%;
	min-height: 0;
}

.bluemed-home-blog-editorial--grid3 .bluemed-home-blog-editorial__card .wp-block-post-featured-image,
.bluemed-home-blog-editorial--grid3 .bluemed-home-blog-editorial__card-img {
	flex-shrink: 0;
}

.bluemed-home-blog-editorial--grid3 .bluemed-home-blog-editorial__card-body {
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto;
	min-height: 0;
}

.bluemed-home-blog-editorial--grid3 .bluemed-home-blog-editorial__card-body .wp-block-post-excerpt {
	flex: 1 1 auto;
}

.bluemed-home-blog-editorial--grid3 .bluemed-home-blog-editorial__card-body > .wp-block-read-more,
.bluemed-home-blog-editorial--grid3 .bluemed-home-blog-editorial__read--card {
	margin-top: auto !important;
	margin-block-start: auto !important;
}

/* —— Tablet: 782–1024px —— */
@media (min-width: 782px) and (max-width: 1024px) {
	.bluemed-hero-lux--art .bluemed-hero-lux__title {
		font-size: clamp(2rem, 4.2vw, 2.75rem) !important;
	}

	.bluemed-home-services--split5 .bluemed-home-services__split5 {
		gap: clamp(0.75rem, 2vw, 1.25rem) !important;
	}

	.bluemed-home-ribbon--art .bluemed-home-ribbon__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.bluemed-home-team--equal .bluemed-home-team__equal-grid.wp-block-columns {
		flex-wrap: wrap !important;
	}

	.bluemed-home-team--equal .bluemed-home-team__equal-grid > .wp-block-column {
		flex-basis: calc(50% - 0.5rem) !important;
		min-width: calc(50% - 0.5rem);
	}

	.bluemed-home-blog-editorial--grid3 .wp-block-post-template {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

/* —— Mobile + mały tablet: do 781px —— */
@media (max-width: 781px) {
	/* Hero — ten sam układ co desktop, proporcjonalnie */
	.bluemed-hero-mega.bluemed-hero-lux--art,
	.bluemed-hero-lux--art {
		min-height: auto !important;
		max-height: none !important;
	}

	.bluemed-hero-lux--art .bluemed-hero-lux__stage {
		padding-top: clamp(1.25rem, 5vw, 2rem) !important;
		padding-bottom: clamp(1.25rem, 4vw, 2rem) !important;
		padding-left: clamp(1rem, 4vw, 1.5rem) !important;
		padding-right: clamp(1rem, 4vw, 1.5rem) !important;
	}

	.bluemed-hero-lux--art .bluemed-hero-lux__title {
		font-size: clamp(1.85rem, 8.5vw, 2.35rem) !important;
		letter-spacing: -0.03em !important;
		line-height: 1.1 !important;
	}

	.bluemed-hero-lux--art .bluemed-hero-lux__lead {
		font-size: clamp(0.9375rem, 3.8vw, 1.0625rem) !important;
	}

	.bluemed-hero-lux--art .bluemed-hero-lux__kicker {
		font-size: 0.65rem !important;
		letter-spacing: 0.22em !important;
	}

	.bluemed-hero-lux--art .bluemed-hero-lux__cta-wrap .wp-block-buttons {
		flex-direction: column;
		align-items: stretch;
		width: 100%;
	}

	.bluemed-hero-lux--art .bluemed-hero-lux__cta-wrap .wp-block-button {
		width: 100%;
	}

	.bluemed-hero-lux--art .bluemed-hero-lux__cta-wrap .wp-block-button__link {
		width: 100%;
		justify-content: center;
		min-height: 2.85rem;
	}

	.bluemed-hero-lux--art .bluemed-hero-lux__visual--art {
		margin-top: clamp(0.75rem, 3vw, 1.25rem);
	}

	.bluemed-hero-lux--art .bluemed-hero-lux__photo--hero-asset img {
		max-height: min(52vh, 420px);
		width: 100%;
		object-fit: contain;
		object-position: center bottom;
	}

	.bluemed-hero-lux--art .bluemed-hero-lux__review-badge {
		position: relative !important;
		right: auto !important;
		bottom: auto !important;
		margin: 1rem auto 0;
		max-width: 100%;
	}

	/* Trust strip */
	.bluemed-trust-strip-v2__inner {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: clamp(0.75rem, 3vw, 1rem) !important;
		padding: clamp(1rem, 4vw, 1.5rem) !important;
	}

	.bluemed-trust-strip-v2__divider {
		display: none !important;
	}

	/* Usługi split5 — ta sama kolejność: featured, potem quad 2×2 */
	.bluemed-home-services--split5 {
		padding-left: clamp(1rem, 4vw, 1.5rem) !important;
		padding-right: clamp(1rem, 4vw, 1.5rem) !important;
	}

	.bluemed-home-services--split5 .bluemed-home-services__head {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 0.75rem;
	}

	.bluemed-home-services--split5 .bluemed-home-services__split5 {
		grid-template-columns: 1fr !important;
	}

	.bluemed-home-services--split5 .bluemed-home-svc-cell--quad .bluemed-home-svc-card--quad {
		min-height: auto;
	}

	.bluemed-home-services--split5 .bluemed-home-svc-cell--quad figure img {
		min-height: 140px;
	}

	/* About */
	.bluemed-home-about__cols {
		flex-direction: column !important;
	}

	.bluemed-home-about__cols > .wp-block-column {
		flex-basis: 100% !important;
	}

	.bluemed-home-about__photo-wrap img {
		min-height: 240px !important;
	}

	.bluemed-home-about__float {
		display: none !important;
	}

	.bluemed-home-about .wp-block-heading.has-4-xl-font-size {
		font-size: clamp(1.75rem, 7vw, 2.25rem) !important;
	}

	/* Ribbon */
	.bluemed-home-ribbon--art {
		padding-left: clamp(1rem, 4vw, 1.5rem) !important;
		padding-right: clamp(1rem, 4vw, 1.5rem) !important;
	}

	.bluemed-home-ribbon--art .bluemed-home-ribbon__grid {
		grid-template-columns: 1fr !important;
		gap: 0.65rem !important;
	}

	.bluemed-home-ribbon--art .bluemed-home-ribbon__card {
		transform: none !important;
	}

	/* Zespół */
	.bluemed-home-team--equal .wp-block-columns.are-vertically-aligned-bottom {
		flex-direction: column !important;
	}

	.bluemed-home-team--equal .bluemed-home-team__equal-grid.wp-block-columns {
		flex-direction: column !important;
	}

	.bluemed-home-team--equal .bluemed-home-team__equal-grid > .wp-block-column {
		flex-basis: 100% !important;
		width: 100%;
	}

	/* Opinie */
	.bluemed-home-testimonials--art .wp-block-columns {
		flex-direction: column !important;
	}

	.bluemed-home-testimonials--art .wp-block-column {
		flex-basis: 100% !important;
	}

	.bluemed-testimonials-slider__quote {
		padding: clamp(1rem, 4vw, 1.35rem) !important;
	}

	/* Blog */
	.bluemed-home-blog-editorial--grid3 .wp-block-post-template,
	.bluemed-home-blog-editorial--grid3 ul.wp-block-post-template {
		grid-template-columns: 1fr !important;
	}

	.bluemed-home-magazine__head .wp-block-columns {
		flex-direction: column !important;
	}

	/* CTA */
	.bluemed-home-cta--art {
		padding-left: clamp(1rem, 4vw, 1.5rem) !important;
		padding-right: clamp(1rem, 4vw, 1.5rem) !important;
	}

	.bluemed-home-cta--art .wp-block-heading.has-4-xl-font-size {
		font-size: clamp(1.65rem, 7vw, 2.1rem) !important;
	}

	.bluemed-home-cta__actions .wp-block-buttons {
		flex-direction: column;
		align-items: stretch;
		width: 100%;
	}

	.bluemed-home-cta__actions .wp-block-button,
	.bluemed-home-cta__actions .wp-block-button__link {
		width: 100%;
		min-height: 2.85rem;
		justify-content: center;
	}

	/* Sekcje — rytm pionowy */
	.bluemed-home-services--split5,
	.bluemed-home-about,
	.bluemed-home-ribbon--art,
	.bluemed-home-team--equal,
	.bluemed-home-testimonials--art,
	.bluemed-home-blog-editorial--grid3,
	.bluemed-home-cta--art {
		padding-top: clamp(2.5rem, 9vw, 3.5rem) !important;
		padding-bottom: clamp(2.5rem, 9vw, 3.5rem) !important;
	}

	.bluemed-trust-strip-v2.alignfull {
		padding-left: clamp(1rem, 4vw, 1.5rem) !important;
		padding-right: clamp(1rem, 4vw, 1.5rem) !important;
	}
}

/* —— Wąskie telefony —— */
@media (max-width: 480px) {
	.bluemed-trust-strip-v2__inner {
		grid-template-columns: 1fr !important;
	}

	.bluemed-home-services--split5 .bluemed-home-svc-cell--quad .wp-block-columns {
		flex-direction: column !important;
	}

	.bluemed-home-services--split5 .bluemed-home-svc-cell--quad .wp-block-column {
		flex-basis: 100% !important;
	}
}
