/* page-card-spacing-rhythm.css — page bundle 3255504055cde904 (16/33 rules, manifest 72011f7848fd48ab) */
/* Cross-page card rhythm for legacy ACF and reusable editorial modules.
   2026-09-16 (ARTICLE-BODY-PLAN 1e): this sheet is the SINGLE owner of adjacent-block margins on posts too —
   the prefix's duplicate adjacency rules (26–46px) were deleted; posts now share the 30–54px rhythm of pages. */
.entry-content > :is(
	.bk1.bg-grey,
	.bk2,
	.bk3,
	.bk4,
	.bk5,
	.bk6,
	.bk7,
	.bk8,
	.bk12,
	.bk14,
	.bk22,
	.bk42,
	.bk43,
	.bk56,
	.bk57,
	.blog-article,
	.h-authorbox-w,
	.wp-block-group.alignfull.has-background,
	.wp-block-genesis-blocks-gb-cta,
	.gb-block-cta,
	.jt-restored-depth,
	.jt-aesthetic-focus,
	.jt-eeat-addition,
	.jt-owned-authority-media,
	.jt-modern-post-block,
	.jt-content-moat-20260612,
	.jt-gsc-geo-module,
	.jt-seo-link-cluster,
	.jt-video-insert,
	.jt-internal-route-strip
) + :is(
	.bk1.bg-grey,
  .bk1, /* 2026-09-16 1e: pair "X + .bk1" came from the prefix adjacency block, now owned here */
	.bk2,
	.bk3,
	.bk4,
	.bk5,
	.bk6,
	.bk7,
	.bk8,
	.bk12,
	.bk14,
	.bk22,
	.bk42,
	.bk43,
	.bk56,
	.bk57,
	.blog-article,
	.h-authorbox-w,
	.share-bot,
	.wp-block-group.alignfull.has-background,
	.wp-block-genesis-blocks-gb-cta,
	.gb-block-cta,
	.jt-restored-depth,
	.jt-aesthetic-focus,
	.jt-eeat-addition,
	.jt-owned-authority-media,
	.jt-modern-post-block,
	.jt-content-moat-20260612,
	.jt-gsc-geo-module,
	.jt-seo-link-cluster,
	.jt-video-insert,
	.jt-internal-route-strip
):not(:where([data-jt-reading-role="prose"] + [data-jt-reading-role="intro"]:has(+ .bk7))){
	margin-top:clamp(30px, 3.4vw, 54px)!important;
}
.entry-content > :is(
	.bk1,
	.blog-article,
	.wp-block-genesis-blocks-gb-cta,
	.gb-block-cta
) + :is(
	.bk1.bg-grey,
  .blog-article, /* 2026-09-16 1e: pair ".bk1 + .blog-article" from the prefix block */
	.bk4,
	.bk5,
	.bk6,
	.bk7,
	.bk8,
	.bk12,
	.bk14,
	.bk22,
	.bk42,
	.bk43,
	.bk56,
	.bk57,
	.h-authorbox-w,
	.wp-block-group.alignfull.has-background,
	.jt-restored-depth,
	.jt-aesthetic-focus,
	.jt-eeat-addition,
	.jt-owned-authority-media,
	.jt-modern-post-block,
	.jt-content-moat-20260612,
	.jt-gsc-geo-module,
	.jt-seo-link-cluster,
	.jt-video-insert,
	.jt-internal-route-strip
):not(:where([data-jt-reading-role="prose"] + [data-jt-reading-role="intro"]:has(+ .bk7))){
	margin-top:clamp(30px, 3.4vw, 54px)!important;
}
.entry-content > :is(
	.wp-block-group.alignfull.has-background,
	.wp-block-genesis-blocks-gb-cta,
	.gb-block-cta
) + .h-authorbox-w,
.entry-content > :is(
	.wp-block-group.alignfull.has-background,
	.wp-block-genesis-blocks-gb-cta,
	.gb-block-cta
) + .share-bot{
	margin-top:clamp(42px, 5vw, 72px)!important;
}
.entry-content > :is(
	[class*="card"],
	[class*="Card"]
) + :is(
	[class*="card"],
	[class*="Card"]
){
	margin-top:clamp(24px, 3vw, 40px)!important;
}
.entry-content > :is(
	.bk1,
	.bk2,
	.bk3,
	.bk6,
	.bk8,
	.bk9,
	.bk18,
	.bk19,
	.bk20,
	.bk21,
	.bk22,
	.bk42,
	.bk43,
	.bk45,
	.bk58,
	.bk60,
	.bk64,
	.h-authorbox-w,
	.wp-block-group,
	.jt-modern-block,
	.jt-aesthetic-intro,
	.jt-aesthetic-plan,
	.jt-modern-post-block,
	.jt-clinic-proof,
	.jt-authority-ledger,
	.jt-local-ledger,
	.jt-treatment-router,
	.jt-appointment-flow
) + :is(
	.bk1,
	.bk1.bg-grey,
	.bk2,
	.bk3,
	.bk9,
	.bk18,
	.bk19,
	.bk20,
	.bk21,
	.bk22,
	.bk42,
	.bk43,
	.bk45,
	.bk57,
	.bk58,
	.bk60,
	.bk61,
	.bk64,
	.h-authorbox-w,
	.wp-block-group,
	.jt-restored-depth,
	.jt-modern-block,
	.jt-aesthetic-focus,
	.jt-owned-authority-media,
	.jt-gsc-geo-module,
	.jt-internal-route-strip,
	.jt-responsive-table-block
):not(:where([data-jt-reading-role="prose"] + [data-jt-reading-role="intro"]:has(+ .bk7))){
	margin-top:clamp(26px, 3vw, 46px)!important;
}
/* 2026-06-19: cross-page containment for ordinary legacy media.
   2026-06-20: exclude .alignfull/.alignwide so a deliberately full-bleed/wide
   top-level editor image is never clamped to the 980px media rail. */
body.wp-singular .entry-content > figure.wp-block-image:not(.alignfull):not(.alignwide),
body.wp-singular .entry-content > .wp-block-image:not(.alignfull):not(.alignwide),
body.wp-singular .entry-content > img.attachment-large:not(.alignfull):not(.alignwide),
body.wp-singular .entry-content > img.size-full:not(.alignfull):not(.alignwide){
	box-sizing:border-box;
	width:min(980px, calc(100vw - 48px));
	max-width:min(980px, calc(100vw - 48px));
	margin:clamp(28px, 4vw, 56px) auto;
	overflow:visible;
}
body.wp-singular .entry-content > figure.wp-block-image img,
body.wp-singular .entry-content > .wp-block-image img,
body.wp-singular .entry-content > img.attachment-large,
body.wp-singular .entry-content > img.size-full{
	display:block;
	width:auto;
	max-width:100%;
	height:auto;
	max-height:min(560px, 64vh);
	margin-right:auto;
	margin-left:auto;
	object-fit:contain;
}
body.wp-singular .entry-content p > img.aligncenter,
body.wp-singular .entry-content p > img.attachment-large,
body.wp-singular .entry-content p > img.size-full{
	display:block;
	width:auto;
	max-width:100%;
	height:auto;
	max-height:min(560px, 64vh);
	margin:clamp(20px, 3vw, 34px) auto;
	object-fit:contain;
}
/* 2026-06-20: exclude .alignfull/.alignwide so a deliberately full-bleed embed is not clamped. */
@media (max-width: 767px){
.entry-content > :is(
		.bk1.bg-grey,
		.bk2,
		.bk3,
		.bk4,
		.bk5,
		.bk6,
		.bk7,
		.bk8,
		.bk12,
		.bk14,
		.bk22,
		.bk42,
		.bk43,
		.bk56,
		.bk57,
		.blog-article,
		.h-authorbox-w,
		.wp-block-group.alignfull.has-background,
		.wp-block-genesis-blocks-gb-cta,
		.gb-block-cta,
		.jt-restored-depth,
		.jt-aesthetic-focus,
		.jt-eeat-addition,
		.jt-owned-authority-media,
		.jt-modern-post-block,
		.jt-content-moat-20260612,
		.jt-gsc-geo-module,
		.jt-seo-link-cluster,
		.jt-video-insert,
		.jt-internal-route-strip
	) + :is(
		.bk1.bg-grey,
		.bk2,
		.bk3,
		.bk4,
		.bk5,
		.bk6,
		.bk7,
		.bk8,
		.bk12,
		.bk14,
		.bk22,
		.bk42,
		.bk43,
		.bk56,
		.bk57,
		.blog-article,
		.h-authorbox-w,
		.share-bot,
		.wp-block-group.alignfull.has-background,
		.wp-block-genesis-blocks-gb-cta,
		.gb-block-cta,
		.jt-restored-depth,
		.jt-aesthetic-focus,
		.jt-eeat-addition,
		.jt-owned-authority-media,
		.jt-modern-post-block,
		.jt-content-moat-20260612,
		.jt-gsc-geo-module,
		.jt-seo-link-cluster,
		.jt-video-insert,
		.jt-internal-route-strip
	):not(:where([data-jt-reading-role="prose"] + [data-jt-reading-role="intro"]:has(+ .bk7))),
	.entry-content > :is(
		.bk1,
		.blog-article,
		.wp-block-genesis-blocks-gb-cta,
		.gb-block-cta
	) + :is(
		.bk1.bg-grey,
		.bk4,
		.bk5,
		.bk6,
		.bk7,
		.bk8,
		.bk12,
		.bk14,
		.bk22,
		.bk42,
		.bk43,
		.bk56,
		.bk57,
		.h-authorbox-w,
		.wp-block-group.alignfull.has-background,
		.jt-restored-depth,
		.jt-aesthetic-focus,
		.jt-eeat-addition,
		.jt-owned-authority-media,
		.jt-modern-post-block,
		.jt-content-moat-20260612,
		.jt-gsc-geo-module,
		.jt-seo-link-cluster,
		.jt-video-insert,
		.jt-internal-route-strip
	):not(:where([data-jt-reading-role="prose"] + [data-jt-reading-role="intro"]:has(+ .bk7))){
		margin-top:clamp(24px, 8vw, 40px)!important;
	}
.entry-content > :is(
		.bk1,
		.bk2,
		.bk3,
		.bk6,
		.bk8,
		.bk9,
		.bk18,
		.bk19,
		.bk20,
		.bk21,
		.bk22,
		.bk42,
		.bk43,
		.bk45,
		.bk58,
		.bk60,
		.bk64,
		.h-authorbox-w,
		.wp-block-group,
		.jt-modern-block,
		.jt-aesthetic-intro,
		.jt-aesthetic-plan,
		.jt-modern-post-block,
		.jt-clinic-proof,
		.jt-authority-ledger,
		.jt-local-ledger,
		.jt-treatment-router,
		.jt-appointment-flow
	) + :is(
		.bk1,
		.bk1.bg-grey,
		.bk2,
		.bk3,
		.bk9,
		.bk18,
		.bk19,
		.bk20,
		.bk21,
		.bk22,
		.bk42,
		.bk43,
		.bk45,
		.bk57,
		.bk58,
		.bk60,
		.bk61,
		.bk64,
		.h-authorbox-w,
		.wp-block-group,
		.jt-restored-depth,
		.jt-modern-block,
		.jt-aesthetic-focus,
		.jt-owned-authority-media,
		.jt-gsc-geo-module,
		.jt-internal-route-strip,
		.jt-responsive-table-block
	):not(:where([data-jt-reading-role="prose"] + [data-jt-reading-role="intro"]:has(+ .bk7))){
		margin-top:clamp(22px, 7vw, 38px)!important;
	}
}
/* 2026-08-21: human-confirmed visual P1/P2 related-link containment.
   This stylesheet is loaded for every singular template, including the page
   and treatment owners that do not load the post-only repair stylesheet. */
/* All singular treatment templates load this stylesheet, including the three
   custom (non-K6) heroes. Keep the floating contact control compact on small
   screens without changing its desktop geometry or any non-treatment page. */
/* 2026-09-05 G2: the 928px h2.bk0 token above is a one-off rail; on non-post
   singulars (no text-rail prose column) a standalone bk0 heading introduces
   card-rail modules, so put it on the 1180 card rail. Posts keep article-system's
   text-rail placement. */
