/*
Theme Name: Biller & Kimble
Theme URI: https://www.billerkimble.com
Author: Biller & Kimble
Author URI: https://www.billerkimble.com
Description: Classic custom theme for Biller & Kimble, LLC — wage and hour lawyers. Designed homepage, Our Team, Results, More Results, Careers, What We Do, Delivery Driver Claims, Active Cases CPT, Blog archive and single posts, Client Spotlights CPT, Contact, Privacy Policy, Jessica Long bio, Andrew Kimble bio, Laura Farmwald bio, and attorney bios with Customizer-editable copy.
Version: 1.58
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: biller-kimble
*/

/* -------------------------------------------------------------------------
   Design tokens — safe on :root and body (does not reset wp-admin)
   ------------------------------------------------------------------------- */
:root,
body {
	--wing-color: #3F4A5A;
	--bg: #0B0F19;
	--surface: #121826;
	--surface-2: #1A2233;
	--gold: #C9A227;
	--gold-hover: #D4AF37;
	--text: #F1F3F5;
	--muted: #9AA0A6;
	--border: rgba(255, 255, 255, 0.08);
}

html {
	scroll-behavior: smooth;
}

body {
	font-family: "Inter", system-ui, -apple-system, sans-serif;
	background: var(--bg);
	color: var(--text);
	line-height: 1.55;
	-webkit-font-smoothing: antialiased;
	margin: 0;
	padding: 0;
}

/* Front-end-only reset. Do NOT use a global * { margin:0; padding:0 } —
   that rule would collapse wp-admin if this sheet were ever loaded there. */
body.bk-site,
body.bk-site *,
body.bk-site *::before,
body.bk-site *::after {
	box-sizing: border-box;
}

body.bk-site h1,
body.bk-site h2,
body.bk-site h3,
body.bk-site h4,
body.bk-site h5,
body.bk-site h6,
body.bk-site p,
body.bk-site ul,
body.bk-site ol,
body.bk-site figure,
body.bk-site blockquote {
	margin: 0;
	padding: 0;
}

body.bk-site a {
	color: inherit;
	text-decoration: none;
}

/* -------------------------------------------------------------------------
   Nav
   ------------------------------------------------------------------------- */
.nav {
	position: sticky;
	top: 0;
	z-index: 100;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 1rem 2.5rem;
	background: rgba(11, 15, 25, 0.94);
	backdrop-filter: blur(14px);
	border-bottom: 1px solid var(--border);
}

.logo,
.nav .custom-logo-link {
	display: flex;
	align-items: center;
	gap: 0.7rem;
	font-weight: 700;
	font-size: 1.05rem;
	letter-spacing: 0.02em;
	color: inherit;
}

.logo-mark,
.nav .custom-logo {
	height: 26px;
	width: auto;
	display: block;
}

.nav-toggle {
	position: absolute;
	opacity: 0;
	pointer-events: none;
	width: 1px;
	height: 1px;
}

.nav-hamburger {
	display: none;
	flex-direction: column;
	justify-content: center;
	gap: 5px;
	width: 42px;
	height: 42px;
	padding: 8px;
	border: 1px solid var(--border);
	border-radius: 8px;
	background: transparent;
	cursor: pointer;
	color: var(--text);
}

.nav-hamburger span {
	display: block;
	height: 2px;
	width: 100%;
	background: var(--text);
	border-radius: 2px;
	transition: transform 0.2s, opacity 0.2s;
}

.nav-toggle:checked + .nav-hamburger span:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}

.nav-toggle:checked + .nav-hamburger span:nth-child(2) {
	opacity: 0;
}

.nav-toggle:checked + .nav-hamburger span:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

.nav-links {
	display: flex;
	align-items: center;
	gap: 1.75rem;
	font-size: 0.9rem;
	font-weight: 500;
	color: var(--muted);
}

.nav-links ul {
	display: flex;
	align-items: center;
	gap: 1.75rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.nav-links li {
	margin: 0;
}

.nav-links a:hover {
	color: var(--text);
}

.nav-cta {
	padding: 0.55rem 1.2rem;
	border: 1px solid var(--gold);
	border-radius: 999px;
	color: var(--gold);
	font-weight: 600;
	font-size: 0.88rem;
	transition: all 0.2s;
}

.nav-cta:hover {
	background: var(--gold);
	color: var(--bg);
}

.nav-home-item {
	display: none;
}

.nav-parent-row {
	display: contents;
}

.nav-sub-toggle {
	display: none;
	appearance: none;
	border: 0;
	background: transparent;
	padding: 0;
	margin: 0;
	cursor: pointer;
	color: inherit;
}

.nav-links .menu-item-has-children {
	position: relative;
}

.nav-links .menu-item-has-children .nav-parent-row > a {
	display: inline-block;
	padding: 0.4rem 0;
}

.nav-links .menu-item-has-children .nav-parent-row > a::after {
	content: "";
	display: inline-block;
	margin-left: 0.4em;
	border: 4px solid transparent;
	border-top-color: var(--gold);
	vertical-align: 0.15em;
}

.nav-links .sub-menu {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	min-width: 14.5rem;
	margin: 0;
	padding: 0.45rem 0;
	flex-direction: column;
	align-items: stretch;
	gap: 0;
	background: var(--surface);
	border: 1px solid rgba(201, 162, 39, 0.45);
	border-radius: 10px;
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45);
	z-index: 200;
}

/* Hover bridge: close the gap so the submenu stays open while the pointer moves down. */
.nav-links .sub-menu::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 100%;
	height: 12px;
}

.nav-links .menu-item-has-children:hover > .sub-menu,
.nav-links .menu-item-has-children:focus-within > .sub-menu {
	display: flex;
}

.nav-links .sub-menu li {
	margin: 0;
	width: 100%;
}

.nav-links .sub-menu a {
	display: block;
	padding: 0.55rem 1.05rem;
	color: var(--muted);
	white-space: nowrap;
	font-weight: 500;
}

.nav-links .sub-menu a:hover,
.nav-links .sub-menu a:focus {
	color: var(--gold);
	background: var(--surface-2);
}


/* -------------------------------------------------------------------------
   Hero
   ------------------------------------------------------------------------- */
.hero {
	position: relative;
	overflow: hidden;
	max-width: 1100px;
	margin: 0 auto;
	padding: 5.5rem 2.5rem 4.5rem;
	display: grid;
	grid-template-columns: 1.15fr 0.85fr;
	gap: 3.5rem;
	align-items: center;
}

.hero-bg-mark {
	position: absolute;
	left: 8%;
	top: 2%;
	width: 62%;
	height: auto;
	opacity: 0.14;
	pointer-events: none;
	z-index: 0;
	color: var(--wing-color);
	transform: translateX(8%);
}

.hero-content,
.hero-card {
	position: relative;
	z-index: 1;
}

.hero-label {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1.1rem;
}

.hero h1 {
	font-size: clamp(2.4rem, 4.5vw, 3.5rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.08;
	margin-bottom: 1.35rem;
}

.hero-lead {
	font-size: 1.2rem;
	color: var(--muted);
	max-width: 34rem;
	margin-bottom: 2rem;
	line-height: 1.55;
}

.hero-actions {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
	margin-top: 8px; /* hair of extra space after the hero lead */
}

.btn-primary {
	display: inline-block;
	padding: 0.9rem 1.6rem;
	background: var(--gold);
	color: #0B0F19;
	font-weight: 700;
	font-size: 0.95rem;
	border-radius: 8px;
}

.btn-primary:hover {
	background: var(--gold-hover);
	color: #0B0F19;
}

.btn-secondary {
	display: inline-block;
	padding: 0.9rem 1.6rem;
	border: 1px solid var(--border);
	color: var(--text);
	font-weight: 600;
	font-size: 0.95rem;
	border-radius: 8px;
}

.btn-secondary:hover {
	border-color: var(--gold);
	color: var(--gold);
}

.hero-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	padding: 2rem;
}

.hero-card h3 {
	font-size: 1rem;
	font-weight: 600;
	margin-bottom: 1.25rem;
	letter-spacing: -0.01em;
}

.hero-card label {
	display: block;
	font-size: 0.8rem;
	color: var(--muted);
	margin-bottom: 0.35rem;
}

.hero-card input,
.hero-card select,
.hero-card textarea {
	width: 100%;
	padding: 0.7rem 0.85rem;
	background: var(--surface-2);
	border: 1px solid var(--border);
	border-radius: 8px;
	color: var(--text);
	font-size: 0.95rem;
	margin-bottom: 1rem;
	font-family: inherit;
}

.hero-card textarea {
	min-height: 90px;
	resize: vertical;
}

.hero-card button {
	width: 100%;
	padding: 0.85rem;
	background: var(--gold);
	color: #0B0F19;
	font-weight: 700;
	font-size: 0.95rem;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	font-family: inherit;
}

.hero-card button:hover {
	background: var(--gold-hover);
}

.form-disclaimer {
	font-size: 0.75rem;
	color: var(--muted);
	margin-top: 1.5rem; /* +8px hair after the hero submit button */
	line-height: 1.45;
}

.form-honeypot {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.form-notice {
	padding: 0.75rem 0.9rem;
	border-radius: 8px;
	margin-bottom: 1rem;
	font-size: 0.9rem;
}

.form-notice-success {
	background: rgba(201, 162, 39, 0.12);
	border: 1px solid rgba(201, 162, 39, 0.4);
	color: var(--text);
}

.form-notice-error {
	background: rgba(180, 40, 40, 0.15);
	border: 1px solid rgba(180, 40, 40, 0.4);
	color: var(--text);
}

/* -------------------------------------------------------------------------
   Proof bar
   ------------------------------------------------------------------------- */
.proof {
	background: var(--surface);
	border-top: 1px solid var(--border);
	border-bottom: 1px solid var(--border);
	padding: 2.75rem 2.5rem;
}

.proof-inner {
	max-width: 900px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 2rem;
	flex-wrap: wrap;
}

.proof-item {
	text-align: center;
	flex: 1;
	min-width: 140px;
}

.proof-number {
	font-size: 2.1rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	color: var(--gold);
	margin-bottom: 0.25rem;
}

.proof-label {
	font-size: 0.9rem;
	color: var(--muted);
}

/* -------------------------------------------------------------------------
   Sections
   ------------------------------------------------------------------------- */
section {
	max-width: 1100px;
	margin: 0 auto;
	padding: 5rem 2.5rem;
}

.section-label {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 0.85rem;
}

.section-title {
	font-size: clamp(1.8rem, 3vw, 2.4rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	margin-bottom: 1.25rem;
	line-height: 1.15;
}

.section-lead {
	font-size: 1.1rem;
	color: var(--muted);
	max-width: 36rem;
	margin-bottom: 0;
	padding-bottom: 0.35rem;
}

/* Padding (not margin) so the gap above the card grids cannot collapse. */
.section-lead + .cards,
.section-lead + .results-grid {
	padding-top: 3rem;
}

.cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.35rem;
}

.card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 14px;
	padding: 1.75rem;
	transition: border-color 0.2s;
}

.card:hover {
	border-color: rgba(201, 162, 39, 0.35);
}

.card h3 {
	font-size: 1.15rem;
	font-weight: 700;
	margin-bottom: 0.6rem;
	letter-spacing: -0.01em;
}

.card p {
	font-size: 0.95rem;
	color: var(--muted);
	line-height: 1.55;
}


a.card {
	text-decoration: none;
	color: inherit;
	display: block;
}

a.card:hover {
	border-color: var(--gold);
}


/* Differentiator */
.diff {
	background: var(--surface);
	border-radius: 16px;
	padding: 3rem;
	border: 1px solid var(--border);
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 3rem;
	align-items: center;
}

.diff h2 {
	font-size: 1.8rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	margin-bottom: 1rem;
	line-height: 1.2;
}

.diff p {
	color: var(--muted);
	margin-bottom: 1.25rem;
}

.diff strong {
	color: var(--text);
}

/* Results teaser */
.results-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.25rem;
}

.result-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 12px;
	padding: 1.5rem 1.6rem;
}

.result-amount {
	font-size: 1.5rem;
	font-weight: 800;
	color: var(--gold);
	margin-bottom: 0.35rem;
}

.result-desc {
	font-size: 0.95rem;
	color: var(--muted);
}

/* Reviews */
.reviews {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.35rem;
	margin-top: 2rem;
}

.review-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 14px;
	padding: 1.6rem 1.5rem;
}

.review-stars {
	color: var(--gold);
	font-size: 1rem;
	letter-spacing: 0.05em;
	margin-bottom: 0.75rem;
}

.review-text {
	font-size: 0.95rem;
	color: var(--muted);
	line-height: 1.55;
	margin-bottom: 1.1rem;
}

.review-author {
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--text);
}

.review-more {
	display: inline-block;
	margin-top: 0.65rem;
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--gold);
}

.review-more:hover {
	color: var(--gold-hover);
}

.reviews-header {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1.5rem;
	flex-wrap: wrap;
	margin-bottom: 0.5rem;
}

.reviews-rating {
	font-size: 0.95rem;
	color: var(--muted);
}

.reviews-rating strong {
	color: var(--gold);
	font-weight: 700;
}

/* CTA band */
.cta-band {
	max-width: 900px;
	margin: 0 auto 5rem;
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	padding: 3.25rem;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.cta-band h2 {
	font-size: 1.8rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	margin-bottom: 0.75rem;
	text-align: center;
}

body.bk-site .cta-band p,
.cta-band p {
	color: var(--muted);
	max-width: 32rem;
	margin: 0 auto 2.25rem;
	text-align: center;
}

/* -------------------------------------------------------------------------
   Footer
   ------------------------------------------------------------------------- */
.site-footer,
footer.site-footer {
	border-top: 1px solid var(--border);
	padding: 3.5rem 2.5rem 2.5rem;
	background: var(--surface);
}

.footer-inner {
	max-width: 1100px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1.5fr 1fr 1fr 1fr;
	gap: 2.5rem;
}

.footer-brand {
	font-weight: 700;
	font-size: 1.05rem;
	margin-bottom: 0.75rem;
}

.footer-brand span {
	color: var(--gold);
}

.footer-desc {
	font-size: 0.9rem;
	color: var(--muted);
	max-width: 22rem;
	margin-bottom: 1.25rem;
}

.socials {
	display: flex;
	gap: 0.85rem;
}

.socials a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 8px;
	border: 1px solid var(--border);
	color: var(--muted);
	transition: all 0.2s;
}

.socials a:hover {
	border-color: var(--gold);
	color: var(--gold);
}

.footer-col h4 {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--muted);
	margin-bottom: 1rem;
}

.footer-col a,
.footer-col p {
	display: block;
	font-size: 0.9rem;
	color: var(--text);
	margin-bottom: 0.4rem;
}

.footer-col a:hover {
	color: var(--gold);
}

.footer-col .menu,
.footer-menu {
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer-bottom {
	max-width: 1100px;
	margin: 2.5rem auto 0;
	padding-top: 1.5rem;
	border-top: 1px solid var(--border);
	font-size: 0.8rem;
	color: var(--muted);
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	flex-wrap: wrap;
}

/* -------------------------------------------------------------------------
   Inner pages (page / single / index)
   ------------------------------------------------------------------------- */
.site-main {
	max-width: 760px;
	margin: 0 auto;
	padding: 4.5rem 2.5rem 5rem;
}

.page-header,
.entry-header {
	margin-bottom: 2rem;
}

.entry-title,
.page-title {
	font-size: clamp(2rem, 4vw, 2.8rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.15;
}

.entry-meta {
	color: var(--muted);
	font-size: 0.9rem;
	margin-top: 0.75rem;
}

.entry-content > * + * {
	margin-top: 1.15rem;
}

.entry-content h2,
.entry-content h3,
.entry-content h4 {
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.2;
	margin-top: 2rem;
}

.entry-content p,
.entry-content li {
	color: var(--muted);
	font-size: 1.05rem;
	line-height: 1.65;
}

.entry-content a {
	color: var(--gold);
	text-decoration: underline;
}

.entry-content ul,
.entry-content ol {
	padding-left: 1.25rem;
}

.entry-content img {
	max-width: 100%;
	height: auto;
	border-radius: 10px;
}

.wp-block-button__link,
.entry-content .wp-block-button__link {
	background: var(--gold);
	color: #0B0F19;
	font-weight: 700;
	border-radius: 8px;
	text-decoration: none;
}

.wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent;
	color: var(--text);
	border: 1px solid var(--border);
}

.post-list {
	display: grid;
	gap: 1.5rem;
}

.post-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 14px;
	padding: 1.75rem;
}

.post-card h2 {
	font-size: 1.4rem;
	font-weight: 700;
	margin-bottom: 0.5rem;
}

.post-card h2 a:hover {
	color: var(--gold);
}

.comments-area {
	margin-top: 3rem;
	padding-top: 2rem;
	border-top: 1px solid var(--border);
}

.comment-form input,
.comment-form textarea {
	width: 100%;
	padding: 0.7rem 0.85rem;
	background: var(--surface-2);
	border: 1px solid var(--border);
	border-radius: 8px;
	color: var(--text);
	font-family: inherit;
	margin-bottom: 0.85rem;
}

.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

/* -------------------------------------------------------------------------
   Mobile — original 900px rules + hamburger (original hid nav with no menu)
   ------------------------------------------------------------------------- */
@media (max-width: 900px) {
	.nav {
		padding: 1rem 1.5rem;
	}

	.nav-hamburger {
		display: flex;
	}

	.nav-links {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		background: var(--bg);
		border-bottom: 1px solid var(--border);
		padding: 0.75rem 1.5rem 1.5rem;
		max-height: calc(100vh - 5.5rem);
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		box-shadow: 0 18px 40px rgba(0, 0, 0, 0.45);
	}

	.nav-home-item {
		display: list-item;
	}

	.nav-links ul {
		flex-direction: column;
		align-items: stretch;
		gap: 0;
	}

	.nav-links a {
		display: flex;
		align-items: center;
		min-height: 44px;
		padding: 0.7rem 0;
		font-size: 1.05rem;
	}

	.nav-toggle:checked ~ .nav-links {
		display: flex;
	}

	.nav-cta {
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		margin-top: 0.55rem;
		min-height: 44px;
		font-size: 1rem;
	}

	.nav-links .menu-item-has-children {
		position: static;
	}

	.nav-parent-row {
		display: flex;
		align-items: center;
		gap: 0.35rem;
	}

	.nav-parent-row > a {
		flex: 1;
		padding: 0.7rem 0;
	}

	.nav-links .menu-item-has-children .nav-parent-row > a::after {
		content: none;
	}

	.nav-sub-toggle {
		display: flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 44px;
		width: 44px;
		min-height: 44px;
		border: 1px solid var(--border);
		border-radius: 8px;
	}

	.nav-sub-toggle::before {
		content: "";
		border: 5px solid transparent;
		border-top-color: var(--gold);
		margin-top: 4px;
	}

	.menu-item-has-children.is-open > .nav-parent-row .nav-sub-toggle::before {
		margin-top: -2px;
		border-top-color: transparent;
		border-bottom-color: var(--gold);
	}

	.nav-links .sub-menu {
		display: none;
		position: static;
		min-width: 0;
		margin: 0 0 0.25rem;
		padding: 0 0 0.25rem 1rem;
		background: transparent;
		border: none;
		border-left: 2px solid rgba(201, 162, 39, 0.45);
		border-radius: 0;
		box-shadow: none;
	}

	.nav-links .sub-menu::before {
		content: none;
	}

	.nav-links .menu-item-has-children.is-open > .sub-menu {
		display: flex;
	}

	.nav-links .sub-menu a {
		min-height: 44px;
		padding: 0.65rem 0;
		font-size: 1rem;
		white-space: normal;
	}


	.hero {
		position: relative;
		overflow: hidden;
		grid-template-columns: 1fr;
		padding: 3.5rem 1.5rem 3rem;
	}

	.hero-bg-mark {
		position: absolute;
		left: 8%;
		top: 2%;
		width: 62%;
		height: auto;
		opacity: 0.14;
		pointer-events: none;
		z-index: 0;
		color: var(--wing-color);
		transform: translateX(8%);
	}

	.cards,
	.reviews {
		grid-template-columns: 1fr;
	}

	.diff {
		grid-template-columns: 1fr;
		padding: 2rem;
	}

	.results-grid {
		grid-template-columns: 1fr;
	}

	.footer-inner {
		grid-template-columns: 1fr 1fr;
		gap: 2rem;
	}

	section {
		padding: 3.5rem 1.5rem;
	}

	.cta-band {
		margin-left: 1.5rem;
		margin-right: 1.5rem;
		padding: 2.25rem 1.5rem;
	}

	.site-main {
		padding: 3rem 1.5rem 4rem;
	}
}

@media (max-width: 600px) {
	.footer-inner {
		grid-template-columns: 1fr;
	}

	.proof-inner {
		gap: 1.5rem;
	}
}

/* -------------------------------------------------------------------------
   Our Team — scoped under .bk-our-team so homepage .hero / section rules
   do not fight this layout. Do not add .site-main / .entry-header here.
   ------------------------------------------------------------------------- */
.bk-our-team {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: var(--bg);
	color: var(--text);
}

/* ========== PAGE HERO ========== */
.bk-our-team .page-hero {
	padding: 5rem 2.5rem 4rem;
	max-width: 1100px;
	margin: 0 auto;
	text-align: center;
}

.bk-our-team .page-hero .label {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1.1rem;
}

.bk-our-team .page-hero h1 {
	font-size: clamp(2.4rem, 4.5vw, 3.4rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.1;
	margin-bottom: 1.25rem;
}

.bk-our-team .page-hero p {
	font-size: 1.2rem;
	color: var(--muted);
	max-width: 36rem;
	margin: 0 auto;
	line-height: 1.55;
}

/* Override the global `section { padding: 5rem 2.5rem }` and the
   mobile `section { padding: 3.5rem 1.5rem }` from the homepage sheet. */
.bk-our-team section {
	padding: 0 2.5rem 5.5rem;
	max-width: 1100px;
	margin: 0 auto;
}

.bk-our-team .section-label {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1.5rem;
}

/* ========== PARTNERS ========== */
.bk-our-team .partners-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.75rem;
}

.bk-our-team .partner-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	padding: 2.25rem;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	transition: border-color 0.2s;
}

.bk-our-team .partner-card:hover {
	border-color: rgba(201, 162, 39, 0.35);
}

.bk-our-team .partner-top {
	display: flex;
	gap: 1.5rem;
	align-items: flex-start;
}

.bk-our-team .avatar {
	width: 88px;
	height: 88px;
	border-radius: 50%;
	background: var(--surface-2);
	border: 1px solid var(--border);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.5rem;
	font-weight: 700;
	color: var(--gold);
	flex-shrink: 0;
	letter-spacing: -0.02em;
	overflow: hidden;
	padding: 0;
}

.bk-our-team .avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
	display: block;
}

.bk-our-team .partner-card .avatar {
	width: 100px;
	height: 100px;
	overflow: hidden;
	padding: 0;
	background: #1A2233;
}

.bk-our-team .team-card .avatar {
	width: 72px;
	height: 72px;
	overflow: hidden;
	padding: 0;
	background: #1A2233;
}

.bk-our-team .partner-meta h2 {
	font-size: 1.4rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	margin-bottom: 0.25rem;
}

.bk-our-team .partner-meta .title {
	font-size: 0.9rem;
	color: var(--gold);
	font-weight: 500;
	margin-bottom: 0.5rem;
}

.bk-our-team .partner-meta .phone {
	font-size: 0.9rem;
	color: var(--muted);
}

.bk-our-team .partner-meta .phone a:hover {
	color: var(--gold);
}

.bk-our-team .partner-bio {
	font-size: 0.98rem;
	color: var(--muted);
	line-height: 1.6;
}

.bk-our-team .partner-bio strong {
	color: var(--text);
	font-weight: 600;
}

.bk-our-team .view-bio {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9rem;
	font-weight: 600;
	color: var(--gold);
	margin-top: 0.25rem;
}

.bk-our-team .view-bio:hover {
	color: var(--gold-hover);
}

.bk-our-team .view-bio svg {
	width: 16px;
	height: 16px;
}

/* ========== TEAM GRID ========== */
.bk-our-team .team-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.35rem;
}

.bk-our-team .team-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 14px;
	padding: 1.75rem;
	display: flex;
	gap: 1.25rem;
	align-items: flex-start;
	transition: border-color 0.2s;
}

.bk-our-team .team-card:hover {
	border-color: rgba(201, 162, 39, 0.3);
}

.bk-our-team .team-card h3 {
	font-size: 1.15rem;
	font-weight: 700;
	letter-spacing: -0.01em;
	margin-bottom: 0.2rem;
}

.bk-our-team .team-card .title {
	font-size: 0.85rem;
	color: var(--gold);
	font-weight: 500;
	margin-bottom: 0.4rem;
}

.bk-our-team .team-card .phone {
	font-size: 0.85rem;
	color: var(--muted);
	margin-bottom: 0.65rem;
}

.bk-our-team .team-card .phone a:hover {
	color: var(--gold);
}

.bk-our-team .team-card .one-liner {
	font-size: 0.9rem;
	color: var(--muted);
	line-height: 1.5;
	margin-bottom: 0.75rem;
}

/* ========== JOIN CTA ========== */
.bk-our-team .join-band {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	padding: 3rem;
	text-align: center;
	margin: 0 2.5rem 5rem;
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}

.bk-our-team .join-band h2 {
	font-size: 1.6rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	margin-bottom: 0.6rem;
}

.bk-our-team .join-band p {
	color: var(--muted);
	margin-bottom: 1.5rem;
	max-width: 28rem;
	margin-left: auto;
	margin-right: auto;
}

.bk-our-team .join-band a.btn {
	display: inline-block;
	padding: 0.85rem 1.75rem;
	background: var(--gold);
	color: #0B0F19;
	font-weight: 700;
	border-radius: 8px;
	font-size: 0.95rem;
}

.bk-our-team .join-band a.btn:hover {
	background: var(--gold-hover);
}

@media (max-width: 900px) {
	.bk-our-team .page-hero {
		padding: 3.5rem 1.5rem 3rem;
	}

	.bk-our-team section {
		padding: 0 1.5rem 4rem;
	}

	.bk-our-team .partners-grid {
		grid-template-columns: 1fr;
	}

	.bk-our-team .team-grid {
		grid-template-columns: 1fr;
	}

	.bk-our-team .partner-top {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.bk-our-team .partner-meta .phone {
		margin-bottom: 0.5rem;
	}

	.bk-our-team .join-band {
		margin: 0 1.5rem 4rem;
		padding: 2.25rem 1.5rem;
	}
}

/* -------------------------------------------------------------------------
   Attorney bio — scoped under .bk-bio so homepage / Our Team rules
   do not fight this layout. Do not add .site-main / .entry-header here.
   ------------------------------------------------------------------------- */
.bk-bio {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: var(--bg);
	color: var(--text);
}

.bk-bio .bio-hero {
	max-width: 1100px;
	margin: 0 auto;
	padding: 4rem 2.5rem 3rem;
	display: grid;
	grid-template-columns: 340px 1fr;
	gap: 3.5rem;
	align-items: start;
}

.bk-bio .bio-photo {
	position: sticky;
	top: 6rem;
}

.bk-bio .bio-photo img {
	width: 100%;
	height: auto;
	aspect-ratio: 386 / 480;
	object-fit: cover;
	object-position: top center;
	display: block;
	border-radius: 16px;
	border: 1px solid var(--border);
}

.bk-bio .bio-sidebar {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 14px;
	padding: 1.5rem;
	margin-top: 1.5rem;
}

.bk-bio .bio-sidebar h3 {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--muted);
	margin-bottom: 0.75rem;
}

.bk-bio .bio-sidebar a {
	display: block;
	font-size: 0.95rem;
	color: var(--text);
	margin-bottom: 0.4rem;
}

.bk-bio .bio-sidebar a:hover {
	color: var(--gold);
}

.bk-bio .btn-contact {
	display: block;
	background: var(--gold);
	color: #0B0F19;
	font-weight: 700;
	border-radius: 8px;
	text-align: center;
	margin-top: 1.25rem;
	margin-bottom: 0;
	padding: 0.75rem 1rem;
}

.bk-bio .btn-contact:hover {
	background: var(--gold-hover);
	color: #0B0F19;
}

.bk-bio .eyebrow {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 0.75rem;
}

.bk-bio .bio-content h1 {
	font-size: clamp(2.2rem, 4vw, 3rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.1;
	margin-bottom: 0.5rem;
}

.bk-bio .bio-content .title {
	font-size: 1.15rem;
	color: var(--muted);
	margin-bottom: 1.5rem;
}

.bk-bio .highlight {
	font-size: 1.2rem;
	font-weight: 500;
	padding-left: 1.25rem;
	border-left: 3px solid var(--gold);
	margin-bottom: 1.5rem;
	line-height: 1.5;
	color: var(--text);
}

.bk-bio .bio-content h2 {
	font-size: 1.15rem;
	font-weight: 700;
	margin: 2.25rem 0 0.85rem;
}

.bk-bio .bio-content p {
	color: var(--muted);
	font-size: 1.02rem;
	line-height: 1.65;
	margin-bottom: 1rem;
}

.bk-bio .bio-content p.highlight {
	color: var(--text);
	margin-bottom: 1.5rem;
}

.bk-bio blockquote.highlight {
	margin: 0 0 1.5rem;
	padding-left: 1.25rem;
	border-left: 3px solid var(--gold);
}

.bk-bio blockquote.highlight p {
	color: var(--muted);
	font-size: 1.02rem;
	font-weight: 400;
	line-height: 1.65;
	margin-bottom: 1rem;
}

.bk-bio blockquote.highlight p:first-child {
	color: var(--text);
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1.5;
}

.bk-bio blockquote.highlight p:last-child {
	margin-bottom: 0;
}

.bk-bio .bio-content strong {
	color: var(--text);
	font-weight: 600;
}

@media (max-width: 900px) {
	.bk-bio .bio-hero {
		grid-template-columns: 1fr;
		padding: 2.5rem 1.5rem;
	}

	.bk-bio .bio-photo {
		position: static;
		max-width: 320px;
	}
}


/* -------------------------------------------------------------------------
   Results — scoped under .bk-results so homepage .cta-band / section rules
   do not fight this layout. Do not add .site-main / .entry-header here.
   ------------------------------------------------------------------------- */
.bk-results {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: var(--bg);
	color: var(--text);
}

.bk-results .page-hero {
	max-width: 900px;
	margin: 0 auto;
	padding: 4.5rem 2.5rem 2.5rem;
	text-align: center;
}

.bk-results .page-hero .eyebrow {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1rem;
}

.bk-results .page-hero h1 {
	font-size: clamp(2.2rem, 4vw, 3.1rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.12;
	margin-bottom: 1.25rem;
}

.bk-results .page-hero .lead {
	font-size: 1.1rem;
	color: var(--muted);
	max-width: 38rem;
	margin: 0 auto 1.75rem;
	line-height: 1.55;
}

.bk-results .disclaimer {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 12px;
	padding: 1.15rem 1.35rem;
	font-size: 0.88rem;
	color: var(--muted);
	line-height: 1.5;
	text-align: left;
	max-width: 700px;
	margin: 0 auto;
}

.bk-results .disclaimer .disclaimer-label,
.bk-results .disclaimer strong {
	color: var(--text);
	font-weight: 700;
}

/* Override the global `section { padding: 5rem 2.5rem }` and the
   mobile `section { padding: 3.5rem 1.5rem }` from the homepage sheet. */
.bk-results section {
	max-width: 1100px;
	margin: 0 auto;
	padding: 3.5rem 2.5rem;
}

.bk-results .section-label {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 0.85rem;
}

.bk-results .section-title {
	font-size: clamp(1.6rem, 3vw, 2.1rem);
	font-weight: 800;
	letter-spacing: -0.025em;
	margin-bottom: 2rem;
	line-height: 1.15;
}

.bk-results .list-intro {
	color: var(--muted);
	margin-bottom: 2rem;
	max-width: 40rem;
	font-size: 1rem;
	line-height: 1.55;
}

.bk-results .featured-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.35rem;
}

.bk-results .featured-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 14px;
	padding: 1.75rem 1.6rem;
	transition: border-color 0.2s;
}

.bk-results .featured-card:hover {
	border-color: rgba(201, 162, 39, 0.35);
}

.bk-results .featured-amount {
	font-size: 1.75rem;
	font-weight: 800;
	color: var(--gold);
	letter-spacing: -0.02em;
	margin-bottom: 0.5rem;
}

.bk-results .featured-desc {
	font-size: 0.98rem;
	color: var(--text);
	margin-bottom: 0.65rem;
	line-height: 1.45;
}

.bk-results .featured-case {
	font-size: 0.82rem;
	color: var(--muted);
	font-style: italic;
}

.bk-results .results-list {
	display: flex;
	flex-direction: column;
}

.bk-results .result-row {
	display: grid;
	grid-template-columns: 160px 1fr;
	gap: 1.5rem;
	padding: 1.5rem 0;
	border-bottom: 1px solid var(--border);
	align-items: start;
}

.bk-results .result-row:last-child {
	border-bottom: none;
}

.bk-results .result-amount {
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--gold);
	letter-spacing: -0.01em;
}

.bk-results .result-body h3 {
	font-size: 1.05rem;
	font-weight: 600;
	margin-bottom: 0.35rem;
}

.bk-results .result-body p {
	font-size: 0.92rem;
	color: var(--muted);
	margin-bottom: 0.4rem;
	line-height: 1.45;
}

.bk-results .result-meta {
	font-size: 0.82rem;
	color: #7A828C;
}

.bk-results .featured-case a,
.bk-results .result-meta a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

.bk-results .result-fees {
	margin-top: 0.5rem;
	font-size: 0.82rem;
	color: var(--muted);
}

.bk-results .transparency-note {
	margin-top: 2rem;
	font-size: 0.9rem;
	color: var(--muted);
	max-width: 42rem;
	line-height: 1.5;
}

.bk-results .cta-band {
	max-width: 700px;
	margin: 1rem auto 5rem;
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	padding: 2.75rem;
	text-align: center;
}

.bk-results .cta-band h2 {
	font-size: 1.6rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	margin-bottom: 0.6rem;
}

.bk-results .cta-band p {
	color: var(--muted);
	margin-bottom: 1.5rem;
	font-size: 0.98rem;
	max-width: none;
}

.bk-results .btn-primary {
	display: inline-block;
	padding: 0.85rem 1.5rem;
	background: var(--gold);
	color: #0B0F19;
	font-weight: 700;
	border-radius: 8px;
	font-size: 0.95rem;
}

.bk-results .btn-primary:hover {
	background: var(--gold-hover);
	color: #0B0F19;
}

@media (max-width: 900px) {
	.bk-results .featured-grid {
		grid-template-columns: 1fr;
	}

	.bk-results .result-row {
		grid-template-columns: 1fr;
		gap: 0.4rem;
	}

	.bk-results .page-hero,
	.bk-results section {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

	.bk-results .cta-band {
		margin-left: 1.5rem;
		margin-right: 1.5rem;
		padding: 2.25rem 1.5rem;
	}
}

/* -------------------------------------------------------------------------
   More Results — same row language as Results. Extra rules scoped here.
   ------------------------------------------------------------------------- */
.bk-more-results {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: var(--bg);
	color: var(--text);
}

.bk-results .more-results-link,
.bk-more-results .more-results-link {
	margin-top: 1.5rem;
}

.bk-results .more-results-link a,
.bk-more-results .more-results-link a {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--gold);
}

.bk-results .more-results-link a:hover,
.bk-more-results .more-results-link a:hover {
	color: var(--gold-hover);
}

/* -------------------------------------------------------------------------
   Careers — scoped under .bk-careers so homepage / Results rules
   do not fight this layout. Do not add .site-main / .entry-header here.
   ------------------------------------------------------------------------- */
.bk-careers {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: var(--bg);
	color: var(--text);
}

.bk-careers .page-hero {
	max-width: 900px;
	margin: 0 auto;
	padding: 4.5rem 2.5rem 2.5rem;
	text-align: center;
}

.bk-careers .page-hero .eyebrow {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1rem;
}

.bk-careers .page-hero h1 {
	font-size: clamp(2.2rem, 4vw, 3.1rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.12;
	margin-bottom: 1.25rem;
}

.bk-careers .page-hero .lead {
	font-size: 1.1rem;
	color: var(--muted);
	max-width: 38rem;
	margin: 0 auto;
	line-height: 1.55;
}

.bk-careers .highlight-box {
	background: var(--surface);
	border: 1px solid rgba(201, 162, 39, 0.35);
	border-left: 3px solid var(--gold);
	border-radius: 12px;
	padding: 1.2rem 1.4rem;
	font-size: 0.95rem;
	color: var(--text);
	line-height: 1.55;
	text-align: left;
	max-width: 700px;
	margin: 1.75rem auto 0;
}

.bk-careers .careers-body {
	max-width: 800px;
	margin: 0 auto;
	padding: 1.25rem 2.5rem 1.5rem;
}

.bk-careers .careers-body p {
	color: var(--muted);
	font-size: 1.05rem;
	line-height: 1.65;
	margin-bottom: 1.2rem;
}

.bk-careers section {
	max-width: 1100px;
	margin: 0 auto;
	padding: 2.25rem 2.5rem 3.25rem;
}

.bk-careers .section-label {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 0.85rem;
}

.bk-careers .section-title {
	font-size: clamp(1.6rem, 3vw, 2.1rem);
	font-weight: 800;
	letter-spacing: -0.025em;
	margin-bottom: 2rem;
	line-height: 1.15;
}

.bk-careers .expect-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.35rem;
}

.bk-careers .expect-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 14px;
	padding: 1.75rem 1.6rem;
	transition: border-color 0.2s;
}

.bk-careers .expect-card:hover {
	border-color: rgba(201, 162, 39, 0.35);
}

.bk-careers .expect-card h3 {
	color: var(--gold);
	font-size: 1.15rem;
	font-weight: 700;
	margin-bottom: 0.65rem;
	letter-spacing: -0.015em;
}

.bk-careers .expect-card p {
	color: var(--muted);
	font-size: 0.98rem;
	line-height: 1.55;
}

.bk-careers .apply-box {
	max-width: 700px;
	margin: 0.5rem auto 5rem;
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	padding: 2.75rem;
	text-align: center;
}

.bk-careers .apply-box h2 {
	font-size: 1.6rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	margin-bottom: 0.6rem;
}

.bk-careers .apply-box .apply-lead {
	color: var(--muted);
	margin-bottom: 1.5rem;
	font-size: 0.98rem;
	line-height: 1.55;
}

.bk-careers .apply-box .btn-primary {
	display: inline-block;
	padding: 0.85rem 1.5rem;
	background: var(--gold);
	color: #0B0F19;
	font-weight: 700;
	border-radius: 8px;
	font-size: 0.95rem;
}

.bk-careers .apply-box .btn-primary:hover {
	background: var(--gold-hover);
	color: #0B0F19;
}

.bk-careers .apply-box .apply-note {
	margin-top: 1.5rem;
	font-size: 0.88rem;
	color: var(--muted);
	line-height: 1.6;
	text-align: left;
	max-width: 36rem;
	margin-left: auto;
	margin-right: auto;
}

.bk-careers .apply-box .apply-note p {
	margin: 0 0 0.45rem;
}

.bk-careers .apply-box .apply-note p:last-child {
	margin-bottom: 0;
}

@media (max-width: 900px) {
	.bk-careers .expect-grid {
		grid-template-columns: 1fr;
	}

	.bk-careers .page-hero,
	.bk-careers .careers-body,
	.bk-careers section {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

	.bk-careers .apply-box {
		margin-left: 1.5rem;
		margin-right: 1.5rem;
		padding: 2.25rem 1.5rem;
	}
}


/* -------------------------------------------------------------------------
   What We Do — scoped under .bk-what-we-do so homepage / Results / Careers
   rules do not fight this layout. Do not add .site-main / .entry-header here.
   ------------------------------------------------------------------------- */
.bk-what-we-do {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: var(--bg);
	color: var(--text);
}

.bk-what-we-do .page-hero {
	max-width: 900px;
	margin: 0 auto;
	padding: 4.5rem 2.5rem 2.75rem;
	text-align: center;
}

.bk-what-we-do .page-hero .eyebrow {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1rem;
}

.bk-what-we-do .page-hero h1 {
	font-size: clamp(2.3rem, 4.2vw, 3.2rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.1;
	margin-bottom: 1.25rem;
}

.bk-what-we-do .page-hero .lead {
	font-size: 1.15rem;
	color: var(--muted);
	max-width: 38rem;
	margin: 0 auto;
	line-height: 1.55;
}

/* Override the global `section { padding: 5rem 2.5rem }` and the
   mobile `section { padding: 3.5rem 1.5rem }` from the homepage sheet. */
.bk-what-we-do section {
	max-width: 1100px;
	margin: 0 auto;
	padding: 1.5rem 2.5rem 4rem;
}

.bk-what-we-do .practice-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.4rem;
}

.bk-what-we-do .practice-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	padding: 2rem 1.85rem;
	transition: border-color 0.2s, transform 0.2s;
	display: flex;
	flex-direction: column;
	color: inherit;
	text-decoration: none;
}

.bk-what-we-do .practice-card:hover {
	border-color: rgba(201, 162, 39, 0.4);
}

.bk-what-we-do .practice-card.featured {
	grid-column: 1 / -1;
	background: linear-gradient(135deg, #121826 0%, #1A2233 100%);
	border-color: rgba(201, 162, 39, 0.25);
}

.bk-what-we-do .practice-card .label {
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 0.75rem;
}

.bk-what-we-do .practice-card h2 {
	font-size: 1.45rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	margin-bottom: 0.85rem;
	line-height: 1.2;
}

.bk-what-we-do .practice-card p {
	font-size: 1rem;
	color: var(--muted);
	line-height: 1.55;
	margin-bottom: 1.35rem;
	flex-grow: 1;
}

.bk-what-we-do .practice-card .link {
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--gold);
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

.bk-what-we-do .practice-card:hover .link {
	color: var(--gold-hover);
}

.bk-what-we-do .cta-band {
	max-width: 720px;
	margin: 0 auto 5rem;
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	padding: 2.75rem;
	text-align: center;
}

.bk-what-we-do .cta-band h2 {
	font-size: 1.6rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	margin-bottom: 0.65rem;
}

.bk-what-we-do .cta-band p {
	color: var(--muted);
	margin-bottom: 1.5rem;
	font-size: 1rem;
	max-width: 28rem;
	margin-left: auto;
	margin-right: auto;
}

.bk-what-we-do .btn-primary {
	display: inline-block;
	padding: 0.85rem 1.55rem;
	background: var(--gold);
	color: #0B0F19;
	font-weight: 700;
	border-radius: 8px;
	font-size: 0.95rem;
}

.bk-what-we-do .btn-primary:hover {
	background: var(--gold-hover);
	color: #0B0F19;
}

@media (max-width: 900px) {
	.bk-what-we-do .practice-grid {
		grid-template-columns: 1fr;
	}

	.bk-what-we-do .practice-card.featured {
		grid-column: auto;
	}

	.bk-what-we-do .page-hero,
	.bk-what-we-do section {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

	.bk-what-we-do .cta-band {
		margin-left: 1.5rem;
		margin-right: 1.5rem;
		padding: 2.25rem 1.5rem;
	}
}


/* -------------------------------------------------------------------------
   Active Cases archive — scoped under .bk-active-cases
   ------------------------------------------------------------------------- */
.bk-active-cases {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: var(--bg);
	color: var(--text);
}

.bk-active-cases .page-hero {
	max-width: 900px;
	margin: 0 auto;
	padding: 4.5rem 2.5rem 2.5rem;
	text-align: center;
}

.bk-active-cases .page-hero .eyebrow {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1rem;
}

.bk-active-cases .page-hero h1 {
	font-size: clamp(2.2rem, 4vw, 3.1rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.12;
	margin-bottom: 1.25rem;
}

.bk-active-cases .page-hero .lead {
	font-size: 1.1rem;
	color: var(--muted);
	max-width: 38rem;
	margin: 0 auto;
	line-height: 1.55;
}

.bk-active-cases .page-hero .lead a {
	color: var(--gold);
	font-weight: 600;
}

.bk-active-cases .page-hero .lead a:hover {
	color: var(--gold-hover);
}

.bk-active-cases section {
	max-width: 1100px;
	margin: 0 auto;
	padding: 1.75rem 2.5rem 3rem;
}

.bk-active-cases .section-label {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1.25rem;
}

.bk-active-cases .cases-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.35rem;
}

.bk-active-cases .featured-stack {
	display: grid;
	gap: 1.35rem;
}

.bk-active-cases .case-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	padding: 1.75rem 1.7rem;
	transition: border-color 0.2s;
	display: flex;
	flex-direction: column;
}

.bk-active-cases .case-card:hover {
	border-color: rgba(201, 162, 39, 0.4);
}

.bk-active-cases .case-card-featured {
	padding: 2.15rem 2rem;
	background: linear-gradient(135deg, #121826 0%, #1A2233 100%);
	border-color: rgba(201, 162, 39, 0.25);
}

.bk-active-cases .case-type {
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 0.7rem;
}

.bk-active-cases .case-title {
	font-size: 1.2rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.25;
	margin-bottom: 0.7rem;
}

.bk-active-cases .case-card-featured .case-title {
	font-size: 1.55rem;
}

.bk-active-cases .case-title a {
	color: inherit;
}

.bk-active-cases .case-title a:hover {
	color: var(--gold);
}

.bk-active-cases .case-summary {
	font-size: 0.98rem;
	color: var(--muted);
	line-height: 1.55;
	margin-bottom: 1.25rem;
	flex-grow: 1;
}

.bk-active-cases .case-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.85rem 1.25rem;
	align-items: center;
	margin-top: auto;
}

.bk-active-cases .case-details {
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--gold);
}

.bk-active-cases .case-details:hover {
	color: var(--gold-hover);
}

.bk-active-cases .case-join {
	display: inline-block;
	padding: 0.55rem 0.95rem;
	background: var(--gold);
	color: #0B0F19;
	font-weight: 700;
	font-size: 0.88rem;
	border-radius: 8px;
}

.bk-active-cases .case-join:hover {
	background: var(--gold-hover);
	color: #0B0F19;
}

.bk-active-cases .cases-past .case-card {
	opacity: 0.92;
}

/* -------------------------------------------------------------------------
   Single case — scoped under .bk-case
   ------------------------------------------------------------------------- */
.bk-case {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0 0 5rem;
	background: var(--bg);
	color: var(--text);
}

.bk-case .page-hero {
	max-width: 800px;
	margin: 0 auto;
	padding: 3.5rem 2.5rem 1.75rem;
}

.bk-case .back-link {
	margin-bottom: 1.25rem;
}

.bk-case .back-link a {
	font-size: 0.9rem;
	font-weight: 600;
	color: var(--gold);
}

.bk-case .back-link a:hover {
	color: var(--gold-hover);
}

.bk-case .page-hero .eyebrow {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 0.85rem;
}

.bk-case .page-hero h1 {
	font-size: clamp(2rem, 3.8vw, 2.85rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.15;
	margin-bottom: 1.1rem;
}

.bk-case .page-hero .lead {
	font-size: 1.12rem;
	color: var(--muted);
	line-height: 1.55;
	max-width: 40rem;
}

.bk-case .case-body {
	max-width: 800px;
	margin: 0 auto;
	padding: 0.5rem 2.5rem 2rem;
}

.bk-case .case-body > * + * {
	margin-top: 1.15rem;
}

.bk-case .case-body h2,
.bk-case .case-body h3,
.bk-case .case-body h4 {
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.2;
	margin-top: 2rem;
	color: var(--text);
}

.bk-case .case-body h2 { font-size: 1.55rem; }
.bk-case .case-body h3 { font-size: 1.3rem; }
.bk-case .case-body h4 { font-size: 1.1rem; color: var(--gold); }

.bk-case .case-body p,
.bk-case .case-body li {
	color: var(--muted);
	font-size: 1.05rem;
	line-height: 1.65;
}

.bk-case .case-body a {
	color: var(--gold);
	text-decoration: underline;
}

.bk-case .case-body ul,
.bk-case .case-body ol {
	padding-left: 1.25rem;
}

.bk-case .case-updates {
	max-width: 800px;
	margin: 0 auto;
	padding: 1rem 2.5rem 2.5rem;
}

.bk-case .case-updates .section-label {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1rem;
}

.bk-case .update-item {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 12px;
	margin-bottom: 0.75rem;
	padding: 0;
}

.bk-case .update-item summary {
	cursor: pointer;
	list-style: none;
	padding: 0.95rem 1.2rem;
	font-weight: 700;
	font-size: 0.98rem;
	color: var(--text);
}

.bk-case .update-item summary::-webkit-details-marker {
	display: none;
}

.bk-case .update-item summary::after {
	content: "+";
	float: right;
	color: var(--gold);
	font-weight: 700;
}

.bk-case .update-item[open] summary::after {
	content: "–";
}

.bk-case .update-body {
	padding: 0 1.2rem 1.15rem;
}

.bk-case .update-body p {
	color: var(--muted);
	font-size: 0.98rem;
	line-height: 1.6;
	margin: 0 0 0.75rem;
}

.bk-case .update-body p:last-child {
	margin-bottom: 0;
}

.bk-case .update-link a {
	color: var(--gold);
	font-weight: 600;
}

.bk-case .join-band {
	max-width: 800px;
	margin: 1rem auto 0;
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	padding: 2.4rem 2rem;
}

.bk-case .join-band h2 {
	font-size: 1.6rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	margin-bottom: 0.55rem;
}

.bk-case .join-lead {
	color: var(--muted);
	margin-bottom: 1.4rem;
	font-size: 0.98rem;
	line-height: 1.55;
}

.bk-case .join-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 1.15rem;
}

.bk-case .join-form label {
	display: block;
	font-size: 0.8rem;
	color: var(--muted);
	margin-bottom: 0.35rem;
}

.bk-case .join-form input,
.bk-case .join-form textarea {
	width: 100%;
	padding: 0.7rem 0.85rem;
	background: var(--surface-2);
	border: 1px solid var(--border);
	border-radius: 8px;
	color: var(--text);
	font-size: 0.95rem;
	margin-bottom: 1rem;
	font-family: inherit;
}

.bk-case .join-form textarea {
	min-height: 110px;
	resize: vertical;
}

.bk-case .join-form .btn-primary {
	display: inline-block;
	padding: 0.85rem 1.55rem;
	background: var(--gold);
	color: #0B0F19;
	font-weight: 700;
	border: none;
	border-radius: 8px;
	font-size: 0.95rem;
	cursor: pointer;
	font-family: inherit;
}

.bk-case .join-form .btn-primary:hover {
	background: var(--gold-hover);
	color: #0B0F19;
}

@media (max-width: 900px) {
	.bk-active-cases .cases-grid {
		grid-template-columns: 1fr;
	}

	.bk-active-cases .page-hero,
	.bk-active-cases section {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

	.bk-case .page-hero,
	.bk-case .case-body,
	.bk-case .case-updates {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

	.bk-case .join-band {
		margin-left: 1.5rem;
		margin-right: 1.5rem;
		padding: 2rem 1.35rem;
	}

	.bk-case .join-grid {
		grid-template-columns: 1fr;
	}
}


/* -------------------------------------------------------------------------
   Delivery Driver Claims — scoped under .bk-practice (also .bk-delivery-drivers)
   so homepage / What We Do / Results rules do not fight this layout.
   Do not add .site-main / .entry-header here.
   ------------------------------------------------------------------------- */
.bk-practice,
.bk-delivery-drivers {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: var(--bg);
	color: var(--text);
}

.bk-practice .page-hero {
	max-width: 900px;
	margin: 0 auto;
	padding: 4.5rem 2.5rem 2.5rem;
	text-align: center;
}

.bk-practice .page-hero .eyebrow {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1rem;
}

.bk-practice .page-hero h1 {
	font-size: clamp(2.3rem, 4.2vw, 3.2rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.1;
	margin-bottom: 1.25rem;
}

.bk-practice .page-hero .lead {
	font-size: 1.15rem;
	color: var(--muted);
	max-width: 38rem;
	margin: 0 auto 1.75rem;
	line-height: 1.55;
}

.bk-practice .quote-box {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 12px;
	padding: 1.35rem 1.5rem;
	font-size: 0.95rem;
	color: var(--muted);
	line-height: 1.5;
	text-align: left;
	max-width: 720px;
	margin: 0 auto;
	font-style: italic;
}

.bk-practice .quote-box cite {
	display: block;
	margin-top: 0.6rem;
	font-style: normal;
	font-size: 0.85rem;
	color: var(--gold);
}

.bk-practice .quote-box cite a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

/* Override the global `section { padding: 5rem 2.5rem }` and the
   mobile `section { padding: 3.5rem 1.5rem }` from the homepage sheet. */
.bk-practice section {
	max-width: 860px;
	margin: 0 auto;
	padding: 2.75rem 2.5rem;
}

.bk-practice .section-label {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 0.85rem;
}

.bk-practice .section-title {
	font-size: clamp(1.55rem, 3vw, 2rem);
	font-weight: 800;
	letter-spacing: -0.025em;
	margin-bottom: 1.15rem;
	line-height: 1.2;
}

.bk-practice .body-text {
	font-size: 1.05rem;
	color: var(--muted);
	margin-bottom: 1.15rem;
	line-height: 1.6;
}

.bk-practice .body-text strong {
	color: var(--text);
}

.bk-practice .rule-box {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 14px;
	padding: 1.75rem;
	margin: 1.75rem 0;
}

.bk-practice .rule-box h3 {
	font-size: 1.1rem;
	font-weight: 700;
	margin-bottom: 1rem;
}

.bk-practice .rule-box ol {
	padding-left: 1.25rem;
	color: var(--muted);
}

.bk-practice .rule-box li {
	margin-bottom: 0.6rem;
	line-height: 1.5;
}

.bk-practice .rule-box li strong {
	color: var(--text);
}

.bk-practice .check-list {
	list-style: none;
	margin: 1.5rem 0;
}

.bk-practice .check-list li {
	position: relative;
	padding-left: 1.6rem;
	margin-bottom: 0.75rem;
	color: var(--muted);
	font-size: 1.02rem;
}

.bk-practice .check-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.45rem;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--gold);
}

.bk-practice .check-list .case {
	display: block;
	font-size: 0.88rem;
	color: #7A828C;
	margin-top: 0.2rem;
}

.bk-practice .body-text.disclaimer {
	font-size: 0.95rem;
}

.bk-practice .two-col {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.25rem;
	margin: 1.5rem 0 1.75rem;
}

.bk-practice .info-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 14px;
	padding: 1.5rem;
}

.bk-practice .info-card h3 {
	font-size: 1.05rem;
	font-weight: 700;
	margin-bottom: 0.65rem;
	color: var(--text);
}

.bk-practice .info-card p {
	font-size: 0.95rem;
	color: var(--muted);
	line-height: 1.55;
	margin: 0;
}

.bk-practice .will-note {
	margin-top: 1.5rem;
}

.bk-practice .results-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.15rem;
	margin: 1.75rem 0 1rem;
}

.bk-practice .result-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 12px;
	padding: 1.35rem;
	text-align: center;
}

.bk-practice .result-card .amount {
	font-size: 1.45rem;
	font-weight: 800;
	color: var(--gold);
	margin-bottom: 0.35rem;
}

.bk-practice .result-card .desc {
	font-size: 0.88rem;
	color: var(--muted);
	line-height: 1.4;
}

.bk-practice .results-disclaimer {
	margin-top: 1.5rem;
	font-size: 0.95rem;
}

.bk-practice .more-results-link {
	margin-top: 0.35rem;
}

.bk-practice .more-results-link a {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--gold);
}

.bk-practice .more-results-link a:hover {
	color: var(--gold-hover);
}

.bk-practice .cta-band {
	max-width: 700px;
	margin: 1rem auto 5rem;
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	padding: 2.75rem;
	text-align: center;
}

.bk-practice .cta-band h2 {
	font-size: 1.55rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	margin-bottom: 0.65rem;
}

.bk-practice .cta-band p {
	color: var(--muted);
	margin-bottom: 1.5rem;
	font-size: 1rem;
	max-width: 28rem;
	margin-left: auto;
	margin-right: auto;
}

.bk-practice .btn-primary {
	display: inline-block;
	padding: 0.85rem 1.55rem;
	background: var(--gold);
	color: #0B0F19;
	font-weight: 700;
	border-radius: 8px;
	font-size: 0.95rem;
}

.bk-practice .btn-primary:hover {
	background: var(--gold-hover);
	color: #0B0F19;
}

.bk-practice .cta-phone {
	margin-top: 1.15rem;
	margin-bottom: 0;
	font-size: 0.95rem;
	color: var(--muted);
}

.bk-practice .cta-phone a {
	color: var(--gold);
	font-weight: 600;
}

.bk-practice .cta-phone a:hover {
	color: var(--gold-hover);
}

.bk-practice .bk-faq-list {
	margin-top: 0.25rem;
}

.bk-practice .bk-faq-item {
	background: var(--surface);
	border: 1px solid var(--border);
	border-left: 3px solid var(--gold);
	border-radius: 12px;
	margin-bottom: 0.75rem;
}

.bk-practice .bk-faq-item:last-child {
	margin-bottom: 0;
}

.bk-practice .bk-faq-item summary {
	cursor: pointer;
	list-style: none;
	padding: 0.95rem 2rem 0.95rem 1.2rem;
	font-weight: 700;
	font-size: 0.98rem;
	color: var(--text);
}

.bk-practice .bk-faq-item summary::-webkit-details-marker {
	display: none;
}

.bk-practice .bk-faq-item summary::marker {
	content: "";
}

.bk-practice .bk-faq-item summary::after {
	content: "+";
	float: right;
	margin-right: -1.35rem;
	color: var(--gold);
	font-weight: 700;
}

.bk-practice .bk-faq-item[open] summary::after {
	content: "–";
}

.bk-practice .bk-faq-answer {
	padding: 0 1.2rem 1.15rem;
}

.bk-practice .bk-faq-answer p {
	color: var(--muted);
	font-size: 1.02rem;
	line-height: 1.6;
	margin: 0;
}

.bk-practice .bk-faq-answer a {
	color: var(--gold);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.bk-practice .bk-faq-answer a:hover {
	color: var(--gold-hover);
}

@media (max-width: 900px) {
	.bk-practice .results-row {
		grid-template-columns: 1fr;
	}

	.bk-practice .two-col {
		grid-template-columns: 1fr;
	}

	.bk-practice .page-hero,
	.bk-practice section {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

	.bk-practice .cta-band {
		margin-left: 1.5rem;
		margin-right: 1.5rem;
		padding: 2.25rem 1.5rem;
	}
}


/* -------------------------------------------------------------------------
   Footer legal link
   ------------------------------------------------------------------------- */
.footer-legal a {
	color: var(--muted);
}

.footer-legal a:hover {
	color: var(--gold);
}

/* -------------------------------------------------------------------------
   Contact — scoped under .bk-contact so homepage rules do not fight
   this layout. Do not add .site-main / .entry-header here.
   ------------------------------------------------------------------------- */
.bk-contact {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: var(--bg);
	color: var(--text);
}

.bk-contact .page-hero {
	max-width: 900px;
	margin: 0 auto;
	padding: 4.5rem 2.5rem 2.5rem;
	text-align: center;
}

.bk-contact .page-hero .eyebrow {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1rem;
}

.bk-contact .page-hero h1 {
	font-size: clamp(2.2rem, 4vw, 3.1rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.12;
	margin-bottom: 1.25rem;
}

.bk-contact .page-hero .lead {
	font-size: 1.1rem;
	color: var(--muted);
	max-width: 38rem;
	margin: 0 auto;
	line-height: 1.55;
}

.bk-contact .contact-strip {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0.5rem 2.5rem 2.75rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.25rem;
}

.bk-contact .strip-card {
	position: relative;
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	padding: 1.75rem 1.5rem 1.6rem;
	overflow: hidden;
	transition: border-color 0.2s;
}

.bk-contact .strip-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: var(--gold);
}

.bk-contact .strip-card:hover {
	border-color: rgba(201, 162, 39, 0.35);
}

.bk-contact .strip-label {
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--muted);
	margin-bottom: 0.7rem;
}

.bk-contact .strip-headline {
	display: block;
	font-size: 1.2rem;
	font-weight: 700;
	color: var(--gold);
	letter-spacing: -0.02em;
	line-height: 1.3;
	margin-bottom: 0.5rem;
	word-break: break-word;
}

.bk-contact a.strip-headline:hover {
	color: var(--gold-hover);
}

.bk-contact .strip-note {
	color: var(--muted);
	font-size: 0.95rem;
	line-height: 1.5;
}

.bk-contact .contact-band {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0.5rem 2.5rem 2.5rem;
	display: grid;
	grid-template-columns: 1.15fr 0.85fr;
	gap: 2rem;
	align-items: start;
}

.bk-contact .contact-form-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	padding: 2rem;
}

.bk-contact .contact-form-card h2 {
	font-size: 1.45rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	margin-bottom: 1.25rem;
}

.bk-contact .contact-form {
	position: relative;
}

.bk-contact .contact-form label {
	display: block;
	font-size: 0.8rem;
	color: var(--muted);
	margin-bottom: 0.35rem;
}

.bk-contact .contact-form .req {
	color: var(--gold);
}

.bk-contact .contact-form input,
.bk-contact .contact-form textarea {
	width: 100%;
	padding: 0.7rem 0.85rem;
	background: var(--surface-2);
	border: 1px solid var(--border);
	border-radius: 8px;
	color: var(--text);
	font-size: 0.95rem;
	margin-bottom: 1rem;
	font-family: inherit;
}

.bk-contact .contact-form textarea {
	min-height: 140px;
	resize: vertical;
}

.bk-contact .contact-form input:focus,
.bk-contact .contact-form textarea:focus {
	outline: 2px solid var(--gold);
	outline-offset: 2px;
	border-color: var(--gold);
}

.bk-contact .contact-form button {
	width: 100%;
	padding: 0.85rem;
	background: var(--gold);
	color: #0B0F19;
	font-weight: 700;
	font-size: 0.95rem;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	font-family: inherit;
}

.bk-contact .contact-form button:hover {
	background: var(--gold-hover);
}

.bk-contact .contact-form-card .form-disclaimer {
	font-size: 0.75rem;
	color: var(--muted);
	margin-top: 1rem;
	line-height: 1.45;
}

.bk-contact .contact-offices .section-label {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 0.7rem;
}

.bk-contact .contact-offices .section-title {
	font-size: clamp(1.45rem, 2.5vw, 1.85rem);
	font-weight: 800;
	letter-spacing: -0.025em;
	margin-bottom: 1.35rem;
	line-height: 1.15;
}

.bk-contact .office-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	padding: 1.6rem 1.5rem 1.5rem;
	margin-bottom: 1.15rem;
	transition: border-color 0.2s;
}

.bk-contact .office-card:hover {
	border-color: rgba(201, 162, 39, 0.35);
}

.bk-contact .office-card:last-child {
	margin-bottom: 0;
}

.bk-contact .office-city {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 0.65rem;
}

.bk-contact .office-card address {
	font-style: normal;
	color: var(--text);
	font-size: 1rem;
	line-height: 1.55;
	margin-bottom: 1.15rem;
}

.bk-contact .office-card .btn-secondary {
	display: inline-block;
	padding: 0.75rem 1.2rem;
	border: 1px solid var(--border);
	color: var(--text);
	font-weight: 600;
	font-size: 0.9rem;
	border-radius: 8px;
}

.bk-contact .office-card .btn-secondary:hover {
	border-color: var(--gold);
	color: var(--gold);
}

.bk-contact .contact-cta {
	text-align: center;
	padding: 1rem 2.5rem 5rem;
}

.bk-contact .contact-cta p {
	color: var(--muted);
	font-size: 1.05rem;
	margin-bottom: 0.45rem;
}

.bk-contact .contact-cta-phone {
	display: inline-block;
	font-size: clamp(1.6rem, 3vw, 2.2rem);
	font-weight: 800;
	color: var(--gold);
	letter-spacing: -0.02em;
}

.bk-contact .contact-cta-phone:hover {
	color: var(--gold-hover);
}

@media (max-width: 900px) {
	.bk-contact .contact-strip,
	.bk-contact .contact-band {
		grid-template-columns: 1fr;
	}

	.bk-contact .page-hero,
	.bk-contact .contact-strip,
	.bk-contact .contact-band,
	.bk-contact .contact-cta {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
}

/* -------------------------------------------------------------------------
   Privacy Policy — scoped under .bk-privacy. Readable legal prose on dark.
   Do not add .site-main / .entry-header here.
   ------------------------------------------------------------------------- */
.bk-privacy {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: var(--bg);
	color: var(--text);
}

.bk-privacy .page-hero {
	max-width: 900px;
	margin: 0 auto;
	padding: 4.5rem 2.5rem 2.25rem;
	text-align: center;
}

.bk-privacy .page-hero .eyebrow {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1rem;
}

.bk-privacy .page-hero h1 {
	font-size: clamp(2.2rem, 4vw, 3.1rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.12;
	margin-bottom: 1.25rem;
}

.bk-privacy .page-hero .lead {
	font-size: 1.1rem;
	color: var(--muted);
	max-width: 38rem;
	margin: 0 auto;
	line-height: 1.55;
}

.bk-privacy .privacy-body {
	max-width: 760px;
	margin: 0 auto;
	padding: 0.5rem 2.5rem 5rem;
	text-align: left;
}

.bk-privacy .privacy-body h2 {
	font-size: 1.15rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	color: var(--gold);
	margin: 2.35rem 0 0.85rem;
	line-height: 1.3;
}

.bk-privacy .privacy-body p {
	color: var(--text);
	font-size: 1rem;
	line-height: 1.7;
	margin-bottom: 1rem;
}

.bk-privacy .privacy-body ul {
	margin: 0 0 1.25rem 1.2rem;
	padding: 0;
	color: var(--muted);
}

.bk-privacy .privacy-body li {
	margin-bottom: 0.75rem;
	line-height: 1.65;
	padding-left: 0.2rem;
}

.bk-privacy .privacy-body li::marker {
	color: var(--muted);
}

.bk-privacy .privacy-body strong {
	color: var(--text);
	font-weight: 600;
}

.bk-privacy .privacy-body em {
	font-style: italic;
}

.bk-privacy .privacy-body a {
	color: var(--gold);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.bk-privacy .privacy-body a:hover {
	color: var(--gold-hover);
}

@media (max-width: 900px) {
	.bk-privacy .page-hero,
	.bk-privacy .privacy-body {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
}


/* -------------------------------------------------------------------------
   Blog archive — scoped under .bk-blog. Do not add .site-main here.
   ------------------------------------------------------------------------- */
.bk-blog {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0 0 5rem;
	background: var(--bg);
	color: var(--text);
}

.bk-blog .page-hero {
	max-width: 900px;
	margin: 0 auto;
	padding: 4.5rem 2.5rem 2.25rem;
	text-align: center;
}

.bk-blog .page-hero .eyebrow {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1rem;
}

.bk-blog .page-hero h1 {
	font-size: clamp(2.2rem, 4vw, 3.1rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.12;
	margin-bottom: 1.25rem;
}

.bk-blog .page-hero .lead {
	font-size: 1.1rem;
	color: var(--muted);
	max-width: 38rem;
	margin: 0 auto;
	line-height: 1.55;
}

.bk-blog .page-hero .lead a {
	color: var(--gold);
	font-weight: 600;
}

.bk-blog .page-hero .lead a:hover {
	color: var(--gold-hover);
}

.bk-blog .blog-filters {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.55rem;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0.25rem 2.5rem 1.75rem;
}

.bk-blog .blog-chip {
	display: inline-block;
	padding: 0.4rem 0.85rem;
	border: 1px solid var(--border);
	border-radius: 999px;
	font-size: 0.82rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	color: var(--muted);
	background: var(--surface);
}

.bk-blog .blog-chip:hover {
	border-color: rgba(201, 162, 39, 0.45);
	color: var(--gold);
}

.bk-blog .blog-chip.is-active {
	background: var(--gold);
	border-color: var(--gold);
	color: #0B0F19;
}

.bk-blog .blog-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.35rem;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0.25rem 2.5rem 2rem;
}

.bk-blog .blog-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: border-color 0.2s;
}

.bk-blog .blog-card:hover {
	border-color: rgba(201, 162, 39, 0.4);
}

.bk-blog .blog-card-media {
	display: block;
	aspect-ratio: 16 / 9;
	background: var(--surface-2);
	overflow: hidden;
}

.bk-blog .blog-card-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.bk-blog .blog-card-body {
	padding: 1.45rem 1.5rem 1.55rem;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

.bk-blog .blog-card-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem 0.75rem;
	align-items: center;
	margin-bottom: 0.65rem;
	font-size: 0.78rem;
	color: var(--muted);
}

.bk-blog .blog-card-meta time {
	letter-spacing: 0.02em;
}

.bk-blog .blog-card-cats {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.bk-blog .blog-card-cat {
	color: var(--gold);
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	font-size: 0.72rem;
}

.bk-blog .blog-card-title {
	font-size: 1.2rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.25;
	margin-bottom: 0.65rem;
}

.bk-blog .blog-card-title a {
	color: inherit;
}

.bk-blog .blog-card-title a:hover {
	color: var(--gold);
}

.bk-blog .blog-card-excerpt {
	font-size: 0.98rem;
	color: var(--muted);
	line-height: 1.55;
	margin-bottom: 1.15rem;
	flex-grow: 1;
}

.bk-blog .blog-card-read {
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--gold);
	margin-top: auto;
}

.bk-blog .blog-card-read:hover {
	color: var(--gold-hover);
}

.bk-blog .blog-empty {
	max-width: 720px;
	margin: 0 auto;
	padding: 1rem 2.5rem 3rem;
	text-align: center;
}

.bk-blog .blog-empty .lead {
	color: var(--muted);
	font-size: 1.05rem;
	line-height: 1.55;
}

.bk-blog .blog-pagination {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0.5rem 2.5rem 1rem;
}

.bk-blog .blog-pagination .page-numbers,
.bk-blog .blog-pagination ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.45rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.bk-blog .blog-pagination li {
	margin: 0;
	padding: 0;
}

.bk-blog .blog-pagination a,
.bk-blog .blog-pagination span {
	display: inline-block;
	min-width: 2.4rem;
	padding: 0.45rem 0.75rem;
	border: 1px solid var(--border);
	border-radius: 8px;
	font-size: 0.88rem;
	font-weight: 600;
	text-align: center;
	color: var(--muted);
	background: var(--surface);
}

.bk-blog .blog-pagination a:hover {
	border-color: rgba(201, 162, 39, 0.45);
	color: var(--gold);
}

.bk-blog .blog-pagination .current {
	background: var(--gold);
	border-color: var(--gold);
	color: #0B0F19;
}

@media (min-width: 901px) {
	.bk-blog .blog-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 900px) {
	.bk-blog .page-hero,
	.bk-blog .blog-filters,
	.bk-blog .blog-grid,
	.bk-blog .blog-empty,
	.bk-blog .blog-pagination {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
}

/* -------------------------------------------------------------------------
   Single post — scoped under .bk-single-post. Do not add .site-main here.
   ------------------------------------------------------------------------- */
.bk-single-post {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0 0 5rem;
	background: var(--bg);
	color: var(--text);
}

.bk-single-post .page-hero {
	max-width: 720px;
	margin: 0 auto;
	padding: 4rem 2.5rem 1.75rem;
	text-align: left;
}

.bk-single-post .page-hero .eyebrow {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1rem;
}

.bk-single-post .page-hero h1 {
	font-size: clamp(2rem, 3.8vw, 2.85rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.15;
	margin-bottom: 0.85rem;
}

.bk-single-post .page-hero .lead,
.bk-single-post .page-hero .post-date {
	font-size: 1rem;
	color: var(--muted);
	line-height: 1.5;
}

.bk-single-post .page-hero .post-date a,
.bk-blog .blog-card-meta .post-byline a {
	color: var(--gold);
	font-weight: 600;
}

.bk-single-post .page-hero .post-date a:hover,
.bk-blog .blog-card-meta .post-byline a:hover {
	color: var(--gold-hover);
}

.bk-single-post .post-hero-image {
	max-width: 720px;
	margin: 0 auto 1.75rem;
	padding: 0 2.5rem;
}

.bk-single-post .post-hero-image img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 14px;
}

.bk-single-post .post-body {
	max-width: 720px;
	margin: 0 auto;
	padding: 0.25rem 2.5rem 1.5rem;
	text-align: left;
}

.bk-single-post .post-body > * + * {
	margin-top: 1.1rem;
}

.bk-single-post .post-body h2 {
	font-size: 1.2rem;
	font-weight: 700;
	letter-spacing: 0.01em;
	color: var(--gold);
	margin: 2.2rem 0 0.85rem;
	line-height: 1.3;
}

.bk-single-post .post-body h3,
.bk-single-post .post-body h4 {
	font-size: 1.08rem;
	font-weight: 700;
	color: var(--text);
	margin: 1.75rem 0 0.7rem;
	line-height: 1.3;
}

.bk-single-post .post-body p {
	color: var(--text);
	font-size: 1.02rem;
	line-height: 1.7;
}

.bk-single-post .post-body ul,
.bk-single-post .post-body ol {
	margin: 0 0 0.25rem 1.2rem;
	padding: 0;
	color: var(--muted);
}

.bk-single-post .post-body li {
	margin-bottom: 0.65rem;
	line-height: 1.65;
}

.bk-single-post .post-body a {
	color: var(--gold);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.bk-single-post .post-body a:hover {
	color: var(--gold-hover);
}

.bk-single-post .post-body img,
.bk-single-post .post-body figure,
.bk-single-post .post-body .wp-block-image,
.bk-single-post .post-body .wp-block-image img {
	max-width: 100%;
	height: auto;
	border-radius: 10px;
}

.bk-single-post .post-body blockquote {
	border-left: 3px solid var(--gold);
	padding: 0.15rem 0 0.15rem 1.1rem;
	color: var(--muted);
	font-style: italic;
}

.bk-single-post .post-body strong {
	color: var(--text);
	font-weight: 600;
}

.bk-single-post .post-disclaimers {
	max-width: 720px;
	margin: 2rem auto 0;
	padding: 1.25rem 2.5rem 0;
	color: var(--muted);
	font-size: 0.88rem;
	line-height: 1.6;
}

.bk-single-post .post-disclaimers p + p {
	margin-top: 0.75rem;
}

.bk-single-post .post-back {
	max-width: 720px;
	margin: 1.75rem auto 0;
	padding: 0 2.5rem;
}

.bk-single-post .post-back a {
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--gold);
}

.bk-single-post .post-back a:hover {
	color: var(--gold-hover);
}

.bk-single-post .post-cta {
	max-width: 720px;
	margin: 2.25rem auto 0;
	padding: 1.35rem 1.5rem;
	border-top: 1px solid var(--border);
	text-align: left;
}

.bk-single-post .post-cta-kicker {
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--muted);
	margin-bottom: 0.35rem;
}

.bk-single-post .post-cta-links {
	font-size: 1.05rem;
	font-weight: 600;
	color: var(--text);
}

.bk-single-post .post-cta-links a {
	color: var(--gold);
}

.bk-single-post .post-cta-links a:hover {
	color: var(--gold-hover);
}

@media (max-width: 900px) {
	.bk-single-post .page-hero,
	.bk-single-post .post-hero-image,
	.bk-single-post .post-body,
	.bk-single-post .post-disclaimers,
	.bk-single-post .post-back {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

	.bk-single-post .post-cta {
		margin-left: 1.5rem;
		margin-right: 1.5rem;
	}
}


/* -------------------------------------------------------------------------
   Client Spotlights archive — scoped under .bk-spotlights. No .site-main.
   ------------------------------------------------------------------------- */
.bk-spotlights {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0 0 5rem;
	background: var(--bg);
	color: var(--text);
}

.bk-spotlights .page-hero {
	max-width: 900px;
	margin: 0 auto;
	padding: 4.5rem 2.5rem 2.25rem;
	text-align: center;
}

.bk-spotlights .page-hero .eyebrow {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1rem;
}

.bk-spotlights .page-hero h1 {
	font-size: clamp(2.2rem, 4vw, 3.1rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.12;
	margin-bottom: 1.25rem;
}

.bk-spotlights .page-hero .lead {
	font-size: 1.1rem;
	color: var(--muted);
	max-width: 38rem;
	margin: 0 auto;
	line-height: 1.55;
}

.bk-spotlights .page-hero .lead a {
	color: var(--gold);
	font-weight: 600;
}

.bk-spotlights .page-hero .lead a:hover {
	color: var(--gold-hover);
}

.bk-spotlights .spotlights-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.35rem;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0.25rem 2.5rem 2rem;
}

.bk-spotlights .spotlight-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: 16px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: border-color 0.2s;
}

.bk-spotlights .spotlight-card:hover {
	border-color: rgba(201, 162, 39, 0.4);
}

.bk-spotlights .spotlight-card-media {
	display: block;
	aspect-ratio: 4 / 5;
	background: var(--surface-2);
	overflow: hidden;
}

.bk-spotlights .spotlight-card-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top center;
	display: block;
}

.bk-spotlights .spotlight-card-body {
	padding: 1.45rem 1.5rem 1.55rem;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

.bk-spotlights .spotlight-card-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem 0.75rem;
	align-items: center;
	margin-bottom: 0.65rem;
	font-size: 0.78rem;
	color: var(--muted);
}

.bk-spotlights .spotlight-card-meta time {
	letter-spacing: 0.02em;
}

.bk-spotlights .spotlight-card-topics {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.bk-spotlights .spotlight-card-topic {
	color: var(--gold);
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	font-size: 0.72rem;
}

.bk-spotlights .spotlight-card-title {
	font-size: 1.25rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.25;
	margin-bottom: 0.65rem;
}

.bk-spotlights .spotlight-card-title a {
	color: inherit;
}

.bk-spotlights .spotlight-card-title a:hover {
	color: var(--gold);
}

.bk-spotlights .spotlight-card-excerpt {
	font-size: 0.98rem;
	color: var(--muted);
	line-height: 1.55;
	margin-bottom: 1.15rem;
	flex-grow: 1;
}

.bk-spotlights .spotlight-card-read {
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--gold);
	margin-top: auto;
}

.bk-spotlights .spotlight-card-read:hover {
	color: var(--gold-hover);
}

.bk-spotlights .spotlights-empty {
	max-width: 720px;
	margin: 0 auto;
	padding: 1rem 2.5rem 3rem;
	text-align: center;
}

.bk-spotlights .spotlights-empty .lead {
	color: var(--muted);
	font-size: 1.05rem;
	line-height: 1.55;
}

@media (min-width: 901px) {
	.bk-spotlights .spotlights-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 900px) {
	.bk-spotlights .page-hero,
	.bk-spotlights .spotlights-grid,
	.bk-spotlights .spotlights-empty {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
}

/* -------------------------------------------------------------------------
   Single Client Spotlight — scoped under .bk-spotlight. No .site-main.
   ------------------------------------------------------------------------- */
.bk-spotlight {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0 0 5rem;
	background: var(--bg);
	color: var(--text);
}

.bk-spotlight .spotlight-hero {
	max-width: 900px;
	margin: 0 auto;
	padding: 4rem 2.5rem 2rem;
	display: grid;
	grid-template-columns: 220px 1fr;
	gap: 2rem;
	align-items: start;
}

.bk-spotlight .spotlight-photo {
	margin: 0;
}

.bk-spotlight .spotlight-photo img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 14px;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	object-position: top center;
}

.bk-spotlight .spotlight-hero-copy .eyebrow {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 0.85rem;
}

.bk-spotlight .spotlight-hero-copy h1 {
	font-size: clamp(2rem, 3.8vw, 2.85rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.15;
	margin-bottom: 0.9rem;
}

.bk-spotlight .spotlight-hero-copy .lead {
	font-size: 1.05rem;
	color: var(--muted);
	line-height: 1.6;
	margin-bottom: 1rem;
}

.bk-spotlight .spotlight-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem 0.85rem;
	align-items: center;
	font-size: 0.82rem;
	color: var(--muted);
}

.bk-spotlight .spotlight-topics {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.bk-spotlight .spotlight-topic {
	color: var(--gold);
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	font-size: 0.72rem;
}

.bk-spotlight .spotlight-body {
	max-width: 720px;
	margin: 0 auto;
	padding: 0.25rem 2.5rem 1.5rem;
	text-align: left;
}

.bk-spotlight .spotlight-body > * + * {
	margin-top: 1.1rem;
}

.bk-spotlight .spotlight-body h2 {
	font-size: 1.2rem;
	font-weight: 700;
	letter-spacing: 0.01em;
	color: var(--gold);
	margin: 2.2rem 0 0.85rem;
	line-height: 1.3;
}

.bk-spotlight .spotlight-body h3,
.bk-spotlight .spotlight-body h4 {
	font-size: 1.08rem;
	font-weight: 700;
	color: var(--text);
	margin: 1.75rem 0 0.7rem;
	line-height: 1.3;
}

.bk-spotlight .spotlight-body p {
	color: var(--text);
	font-size: 1.02rem;
	line-height: 1.7;
}

.bk-spotlight .spotlight-body ul,
.bk-spotlight .spotlight-body ol {
	margin: 0 0 0.25rem 1.2rem;
	padding: 0;
	color: var(--muted);
}

.bk-spotlight .spotlight-body li {
	margin-bottom: 0.65rem;
	line-height: 1.65;
}

.bk-spotlight .spotlight-body a {
	color: var(--gold);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.bk-spotlight .spotlight-body a:hover {
	color: var(--gold-hover);
}

.bk-spotlight .spotlight-body blockquote {
	border-left: 3px solid var(--gold);
	padding: 0.15rem 0 0.15rem 1.1rem;
	color: var(--muted);
	font-style: italic;
}

.bk-spotlight .spotlight-body strong {
	color: var(--gold);
	font-weight: 600;
}

.bk-spotlight .spotlight-back {
	max-width: 720px;
	margin: 1.75rem auto 0;
	padding: 0 2.5rem;
}

.bk-spotlight .spotlight-back a {
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--gold);
}

.bk-spotlight .spotlight-back a:hover {
	color: var(--gold-hover);
}

.bk-spotlight .spotlight-cta {
	max-width: 720px;
	margin: 2.25rem auto 0;
	padding: 1.35rem 1.5rem;
	border-top: 1px solid var(--border);
	text-align: left;
}

.bk-spotlight .spotlight-cta-kicker {
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--muted);
	margin-bottom: 0.35rem;
}

.bk-spotlight .spotlight-cta-links {
	font-size: 1.05rem;
	font-weight: 600;
	color: var(--text);
}

.bk-spotlight .spotlight-cta-links a {
	color: var(--gold);
}

.bk-spotlight .spotlight-cta-links a:hover {
	color: var(--gold-hover);
}

@media (max-width: 900px) {
	.bk-spotlight .spotlight-hero {
		grid-template-columns: 1fr;
		padding: 3rem 1.5rem 1.5rem;
		gap: 1.35rem;
	}

	.bk-spotlight .spotlight-photo {
		max-width: 280px;
	}

	.bk-spotlight .spotlight-body,
	.bk-spotlight .spotlight-back {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

	.bk-spotlight .spotlight-cta {
		margin-left: 1.5rem;
		margin-right: 1.5rem;
	}
}
