/* JD BioWorks Site Core visual design. */
	:root{
		--jdbw-ink:#082d5d;
		--jdbw-text:#40566f;
		--jdbw-line:#d6e2ee;
		--jdbw-soft:#f6f9fd;
		--jdbw-blue:#1769e0;
		--jdbw-content:min(1120px,calc(100% - 40px));
		--jdbw-reading:min(940px,calc(100% - 40px));
	}

	/* A single restrained type rhythm across editorial and company pages. */
	body.page-id-2070 main h1:first-of-type,
	body.page-id-2072 main h1:first-of-type,
	body.page-id-2499 main h1:first-of-type,
	body.page-id-2074 main h1:first-of-type,
	body.page-id-17 main h1:first-of-type,
	body.page-id-21 main h1:first-of-type,
	body.page-id-65 main h1:first-of-type,
	body.page-id-2519 main h1:first-of-type,
	body.single-research_article main h1:first-of-type{
		max-width:980px!important;
		margin-top:0!important;
		color:var(--jdbw-ink)!important;
		font-size:clamp(44px,4.4vw,56px)!important;
		font-weight:650!important;
		letter-spacing:-.038em!important;
		line-height:1.04!important;
		text-wrap:balance;
	}
	body.page-id-2499 main h2,
	body.page-id-2519 .jdbw-guide-shell h2,
	body.single-research_article .entry-content h2{
		color:var(--jdbw-ink)!important;
		font-size:clamp(29px,3.1vw,38px)!important;
		letter-spacing:-.025em!important;
		line-height:1.14!important;
		text-wrap:balance;
	}
	body.single-research_article .entry-content{
		color:var(--jdbw-text);
	}
	body.single-research_article .entry-content>p,
	body.single-research_article .entry-content>ul,
	body.single-research_article .entry-content>ol{
		font-size:17px;
		line-height:1.72;
	}
	body.single-research_article .entry-content h2{
		margin-top:2.35rem!important;
		margin-bottom:.8rem!important;
	}
	body.single-research_article .entry-content h3{
		margin-top:1.8rem;
		color:var(--jdbw-ink);
		font-size:24px;
		line-height:1.2;
	}
	body.page-id-2519 .jdbw-guide-shell>p,
	body.page-id-2519 .jdbw-guide-shell>ul,
	body.page-id-2519 .jdbw-guide-shell>ol{
		font-size:17px;
		line-height:1.72;
	}

	/* Homepage hero: remove the loose headline leading and excess height. */
	body.home .elementor-element-4318b27>.e-con-inner{
		align-items:center!important;
	}
	body.home .elementor-element-4a9ddc8 .elementor-heading-title{
		max-width:500px!important;
		margin:0!important;
		font-size:clamp(42px,3.6vw,46px)!important;
		letter-spacing:-.04em!important;
		line-height:1.04!important;
		text-wrap:balance;
	}
	body.home .jdbw-home-hero-summary{
		max-width:520px!important;
		margin:14px 0 20px!important;
		font-size:16px!important;
		font-weight:550!important;
		line-height:1.62!important;
	}
	body.home .elementor-element-ce6be74,
	body.home .elementor-element-ce6be74 .elementor-widget-container{
		height:auto!important;
		min-height:0!important;
	}
	body.home .elementor-element-ce6be74 img{
		display:block!important;
		width:100%!important;
		max-height:760px!important;
		object-fit:cover!important;
		object-position:center top!important;
	}
	body.home .elementor-element-24xzji1{
		padding-top:72px!important;
		padding-bottom:72px!important;
	}
	body.home .elementor-element-24xzji1>.elementor-container{
		width:var(--jdbw-content)!important;
		max-width:none!important;
	}
	body.home .elementor-element-24xzji1 h2{
		font-size:clamp(30px,3.1vw,38px)!important;
		letter-spacing:-.02em!important;
	}
	body.home .elementor-element-24xzji1 .elementor-icon-box-title{
		font-size:15px!important;
		line-height:1.3!important;
	}
	body.home .elementor-element-24xzji1 .elementor-icon-box-description{
		font-size:14px!important;
		line-height:1.6!important;
	}
	body.home .jdbw-popular-research>h2,
	body.home .jdbw-latest-research__heading h2{
		color:var(--jdbw-ink)!important;
		font-size:clamp(31px,3.2vw,39px)!important;
		letter-spacing:-.025em!important;
		line-height:1.12!important;
		text-wrap:balance;
	}

	/* Compact the three-band desktop header without reducing clarity. */
	@media(min-width:1241px){
		#jdbw-site-header-v1 .jdbw-v1-notice{padding:11px 20px!important}
		#jdbw-site-header-v1 .jdbw-v1-inner{min-height:82px!important}
		#jdbw-site-header-v1 .jdbw-v1-promo{min-height:46px!important;padding:7px 22px!important}
	}

	/* Reusable information blocks should align to the same content grid. */
	.jdbw-california-callout{
		box-sizing:border-box!important;
		width:var(--jdbw-content)!important;
		margin:42px auto 58px!important;
		padding:28px 30px!important;
		border:1px solid var(--jdbw-line)!important;
		border-radius:14px!important;
		background:var(--jdbw-soft)!important;
	}
	.jdbw-california-callout h2{
		max-width:820px!important;
		margin:0 0 10px!important;
		color:var(--jdbw-ink)!important;
		font-size:clamp(28px,3vw,38px)!important;
		line-height:1.15!important;
		text-wrap:balance;
	}
	.jdbw-california-callout p:last-child{margin-bottom:0!important}

	/* Shared card polish: quiet borders, consistent radius, minimal shadow. */
	.jdbw-discovery-section,
	.jdbw-priority-pathway,
	.jdbw-search-resource,
	.jdbw-search-faq,
	.jdbw-library-card,
	.jd-coa-search,
	.jd-coa-table-wrap,
	.jdbw-product-details-card,
	.jdbw-product-coa-panel{
		border-radius:14px!important;
		box-shadow:0 8px 24px rgba(8,45,93,.055)!important;
	}
	.jdbw-discovery-grid article,
	.jdbw-library-sidebar section,
	.jdbw-search-resource-grid article{
		border-radius:10px!important;
		box-shadow:none!important;
	}

	/* Eliminate theme hover labels that escape the product-card boundary. */
	.products .ast-card-action-tooltip{display:none!important}

	/* Catalog headings follow the shared site hierarchy. Product-page
	 * presentation is owned by the canonical product composition module. */
	body.post-type-archive-product .elementor-element-66d76e00 h1,
	body.tax-product_cat .elementor-element-66d76e00 h1{
		font-size:clamp(44px,4.4vw,56px)!important;
		line-height:1.04!important;
		letter-spacing:-.035em!important;
	}

	/* Keep primary buttons visually consistent across mixed page builders. */
	main .button,
	main button:not(.menu-toggle):not(.ast-menu-toggle),
	.jdbw-home-spotlight__primary{
		border-radius:8px!important;
		box-shadow:none!important;
	}
	main .button:focus-visible,
	main button:focus-visible,
	main a:focus-visible{
		outline:3px solid rgba(23,105,224,.32)!important;
		outline-offset:3px!important;
	}

	@media(max-width:767px){
		:root{--jdbw-content:calc(100% - 28px);--jdbw-reading:calc(100% - 28px)}
		body.page-id-2070 main h1:first-of-type,
		body.page-id-2072 main h1:first-of-type,
		body.page-id-2499 main h1:first-of-type,
		body.page-id-2074 main h1:first-of-type,
		body.page-id-17 main h1:first-of-type,
		body.page-id-21 main h1:first-of-type,
		body.page-id-65 main h1:first-of-type,
		body.page-id-2519 main h1:first-of-type,
		body.single-research_article main h1:first-of-type{
			font-size:clamp(38px,11vw,48px)!important;
			line-height:1.02!important;
		}
		body.page-id-2499 main h2,
		body.page-id-2519 .jdbw-guide-shell h2,
		body.single-research_article .entry-content h2{
			font-size:clamp(27px,8.5vw,34px)!important;
		}
		body.home .elementor-element-4318b27>.e-con-inner{display:block!important}
		body.home .elementor-element-4a9ddc8 .elementor-heading-title{
			font-size:clamp(38px,10.8vw,46px)!important;
			line-height:1.02!important;
		}
		body.home .elementor-element-ce6be74 img{max-height:none!important;object-fit:contain!important}
		body.home .elementor-element-24xzji1{padding-top:48px!important;padding-bottom:48px!important}
		.jdbw-california-callout{margin:30px auto 44px!important;padding:22px 20px!important}
		body.post-type-archive-product .elementor-element-66d76e00 h1,
		body.tax-product_cat .elementor-element-66d76e00 h1{
			font-size:clamp(38px,10.5vw,46px)!important;
		}
		.jdbw-home-spotlight__inner{width:calc(100% - 28px)!important}
	}
