/**
 * Bundled handoff page model (Federal Lawyers in Washington DC (1).html).
 *
 * Design helmet ships only: body { margin: 0; background: #ffffff }
 * Every pixel inside <main class="sp-source-body"> comes from inline styles
 * in the .dc.html source — no theme typography, no 72ch, no WP element presets.
 */

body.fl-handoff-page {
	margin: 0;
	background: #ffffff;
	font-family: initial;
	font-size: 16px;
	font-weight: normal;
	line-height: normal;
	color: #000000;
}

main.sp-source-body {
	--wp--style--block-gap: 0;
	max-width: none !important;
	width: 100%;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent;
	font-size: inherit;
	line-height: inherit;
	color: inherit;
}

main.sp-source-body .wp-block-group,
main.sp-source-body article.wp-block-group,
main.sp-source-body .wp-block-post-content,
main.sp-source-body .entry-content,
main.sp-source-body .is-layout-constrained,
main.sp-source-body .is-layout-flow,
main.sp-source-body .wp-block-group-is-layout-flow {
	max-width: none !important;
	width: 100%;
	padding: 0 !important;
	margin: 0 !important;
	gap: 0 !important;
	font-size: inherit;
	line-height: inherit;
}

main.sp-source-body .wp-block-post-content.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
main.sp-source-body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

main.sp-source-body .wp-block-post-title,
main.sp-source-body .sp-article-title,
main.sp-source-body .fl-breadcrumbs,
main.sp-source-body .rank-math-breadcrumb {
	display: none !important;
}

/*
 * NO universal border-box here: the design renders with default content-box
 * (its max-width:1160px containers get 1160px of CONTENT; the design sets
 * border-box inline only on specific form inputs). Forcing border-box shrinks
 * every padded container by up to 112px and reflows headlines.
 */

/* Do not override link colors inside handoff page bodies — inline styles are canonical */

/* theme.json elements.heading.lineHeight (1.08) leaks onto imported design h2s;
   the design ships no heading line-height (computes normal). Inline styles win
   where the design sets one. Live-import pages (listicle/calculator) are
   excluded - their own stylesheets own heading metrics. */
main.sp-source-body:not(.sp-listicle):not(.sp-live-calculator) h1,
main.sp-source-body:not(.sp-listicle):not(.sp-live-calculator) h2,
main.sp-source-body:not(.sp-listicle):not(.sp-live-calculator) h3,
main.sp-source-body:not(.sp-listicle):not(.sp-live-calculator) h4 {
	line-height: normal;
}

/*
 * style-hover attributes (design-authored). The design runtime compiles these
 * to plain (non-!important) pseudo-classes, so they LOSE to inline styles -
 * most instances are intentionally inert. No !important here: parity means
 * hovering only where the design actually hovers (e.g. the homepage contact
 * channel tiles, which carry no inline background).
 */
[style-hover] {
	transition: background 0.15s ease, background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
[style-hover="border-color:#141414"]:hover { border-color: #141414; }
[style-hover="background:#d43a2f"]:hover { background: #d43a2f; }
[style-hover="background:#f4f4f1"]:hover { background: #f4f4f1; }
[style-hover="background:#000000"]:hover { background: #000000; }
[style-hover="color:#141414"]:hover { color: #141414; }
