/*
Theme Name: BOOK LAW FIRM 2026
Theme URI: https://booklawfirm.com/
Description: A brand-led Astra child theme for BOOK LAW FIRM.
Author: BOOK LAW FIRM
Template: astra
Version: 2.1.9
Text Domain: blf-2026
*/

:root {
	--blf-navy: #091c34;
	--blf-navy-deep: #061426;
	--blf-gold: #c9a44b;
	--blf-gold-light: #dfc47f;
	--blf-cream: #ddd6c8;
	--blf-ivory: #f7f4ee;
	--blf-white: #ffffff;
	--blf-ink: #172131;
	--blf-muted: #5f6670;
	--blf-border: rgba(9, 28, 52, 0.16);
	--blf-shadow: 0 18px 50px rgba(9, 28, 52, 0.12);
	--blf-serif: "Bodoni Moda", Georgia, "Times New Roman", serif;
	--blf-sans: "Source Sans 3", Arial, sans-serif;
	--blf-shell: min(1180px, calc(100% - 48px));
}

html {
	scroll-behavior: smooth;
}

body.blf-2026 {
	background: var(--blf-white);
	color: var(--blf-ink);
	font-family: var(--blf-sans);
	font-size: 18px;
	line-height: 1.62;
	-webkit-font-smoothing: antialiased;
}

body.blf-2026 h1,
body.blf-2026 h2,
body.blf-2026 h3,
body.blf-2026 h4,
body.blf-2026 h5,
body.blf-2026 h6 {
	color: var(--blf-navy);
	font-family: var(--blf-serif);
	font-weight: 600;
	letter-spacing: -0.025em;
	line-height: 1.08;
}

body.blf-2026 p,
body.blf-2026 li,
body.blf-2026 a,
body.blf-2026 button,
body.blf-2026 input,
body.blf-2026 select,
body.blf-2026 textarea {
	font-family: var(--blf-sans);
}

body.blf-2026 a {
	color: var(--blf-navy);
}

body.blf-2026 a:focus-visible,
body.blf-2026 button:focus-visible,
body.blf-2026 input:focus-visible,
body.blf-2026 select:focus-visible,
body.blf-2026 textarea:focus-visible {
	outline: 3px solid var(--blf-gold-light);
	outline-offset: 3px;
}

.blf-shell {
	width: var(--blf-shell);
	margin-inline: auto;
}

.blf-screen-reader-text {
	position: absolute !important;
	overflow: hidden;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

.blf-skip-link {
	position: fixed;
	top: 8px;
	left: 8px;
	z-index: 10000;
	padding: 10px 16px;
	background: var(--blf-white);
	color: var(--blf-navy);
	transform: translateY(-140%);
}

.blf-skip-link:focus {
	transform: translateY(0);
}

/* Hide the inherited template footer and Astra footer when this child theme is active. */
.blf-2026 .hfe-before-footer-wrap,
.blf-2026 footer.site-footer,
.blf-2026 .site-footer {
	display: none !important;
}

/* Global header */
.blf-site-header {
	position: sticky;
	top: 0;
	z-index: 1000;
	background: var(--blf-navy);
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.16);
}

body.admin-bar .blf-site-header {
	top: 32px;
}

.blf-topbar {
	background: var(--blf-navy-deep);
	border-bottom: 1px solid rgba(201, 164, 75, 0.26);
	color: var(--blf-cream);
	font-size: 13px;
	letter-spacing: 0.045em;
}

.blf-topbar-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	min-height: 34px;
	gap: 24px;
}

.blf-topbar p {
	margin: 0;
	text-transform: uppercase;
}

.blf-topbar-contact {
	display: flex;
	align-items: center;
	gap: 12px;
}

.blf-topbar-actions {
	display: flex;
	align-items: center;
	gap: 18px;
}

.blf-utility-nav {
	display: flex;
	align-items: center;
	gap: 14px;
	padding-right: 18px;
	border-right: 1px solid rgba(201, 164, 75, 0.3);
}

.blf-utility-nav a {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.075em;
	text-transform: uppercase;
}

body.blf-2026 .blf-topbar .blf-utility-member {
	color: var(--blf-gold-light);
}

body.blf-2026 .blf-topbar a {
	color: var(--blf-cream);
	text-decoration: none;
}

body.blf-2026 .blf-topbar a:hover,
body.blf-2026 .blf-topbar a:focus-visible {
	color: var(--blf-gold-light);
}

.blf-nav-wrap {
	background: var(--blf-navy);
}

.blf-nav-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 92px;
	gap: 32px;
}

.blf-brand {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
}

.blf-brand img {
	display: block;
	width: 260px;
	height: auto;
}

.blf-primary-nav {
	display: flex;
	align-items: center;
	gap: 28px;
}

.blf-primary-nav ul {
	display: flex;
	align-items: center;
	gap: 26px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.blf-primary-nav li {
	margin: 0;
}

.blf-primary-nav li a {
	position: relative;
	color: var(--blf-white);
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.035em;
	text-decoration: none;
}

.blf-primary-nav li a::after {
	position: absolute;
	right: 0;
	bottom: -9px;
	left: 0;
	height: 2px;
	background: var(--blf-gold);
	content: "";
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 180ms ease;
}

.blf-primary-nav li a:hover::after,
.blf-primary-nav li a:focus-visible::after {
	transform: scaleX(1);
}

.blf-menu-toggle {
	display: none;
	align-items: center;
	gap: 12px;
	padding: 10px 0;
	border: 0;
	background: transparent;
	color: var(--blf-white);
	font-weight: 700;
}

.blf-menu-icon {
	display: grid;
	gap: 5px;
	width: 26px;
}

.blf-menu-icon span {
	display: block;
	height: 2px;
	background: var(--blf-gold);
}

/* Buttons and links */
.blf-button,
body.blf-2026 .elementor-button,
body.blf-2026 button:not(.blf-menu-toggle),
body.blf-2026 input[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 14px 24px;
	border: 1px solid var(--blf-gold);
	border-radius: 2px;
	background: var(--blf-gold);
	color: var(--blf-navy);
	font-family: var(--blf-sans);
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.15;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: background 160ms ease, color 160ms ease, transform 160ms ease;
}

.blf-button:hover,
body.blf-2026 .elementor-button:hover,
body.blf-2026 button:not(.blf-menu-toggle):hover,
body.blf-2026 input[type="submit"]:hover {
	background: var(--blf-white);
	color: var(--blf-navy);
	transform: translateY(-2px);
}

.blf-button-small {
	min-height: 44px;
	padding: 11px 18px;
	font-size: 13px;
}

.blf-button-navy {
	border-color: var(--blf-navy);
	background: var(--blf-navy);
	color: var(--blf-white);
}

.blf-button-navy:hover {
	border-color: var(--blf-navy);
	background: var(--blf-white);
	color: var(--blf-navy);
}

.blf-button-outline-light {
	border-color: rgba(255, 255, 255, 0.7);
	background: transparent;
	color: var(--blf-white);
}

.blf-button-outline-light:hover {
	border-color: var(--blf-white);
	background: var(--blf-white);
	color: var(--blf-navy);
}

.blf-button-outline-navy {
	border-color: var(--blf-navy);
	background: transparent;
	color: var(--blf-navy);
}

.blf-button-outline-navy:hover {
	border-color: var(--blf-navy);
	background: var(--blf-navy);
	color: var(--blf-white);
}

.blf-button-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}

/* Beat Astra's global anchor color without using blanket !important rules. */
body.blf-2026 .blf-button {
	color: var(--blf-navy);
}

body.blf-2026 .blf-button-navy,
body.blf-2026 .blf-button-outline-light,
body.blf-2026 .blf-text-link,
body.blf-2026 .blf-service-card-featured > a {
	color: var(--blf-white);
}

body.blf-2026 .blf-button-navy:hover,
body.blf-2026 .blf-button-outline-light:hover {
	color: var(--blf-navy);
}

body.blf-2026 .blf-text-link-dark {
	color: var(--blf-navy);
}

.blf-text-link {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--blf-white);
	font-size: 16px;
	font-weight: 700;
	text-decoration-color: var(--blf-gold);
	text-decoration-thickness: 2px;
	text-underline-offset: 6px;
}

.blf-text-link:hover {
	color: var(--blf-gold-light);
}

.blf-text-link-dark {
	color: var(--blf-navy);
}

.blf-eyebrow,
body.blf-2026 .blf-eyebrow {
	margin: 0 0 16px;
	color: var(--blf-gold);
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.14em;
	line-height: 1.3;
	text-transform: uppercase;
}

/* Homepage layout */
.home.blf-2026 .site-content > .ast-container {
	display: block;
	width: 100%;
	max-width: none;
	padding: 0;
}

.blf-home {
	overflow: hidden;
	margin: 0 !important;
}

.blf-hero {
	position: relative;
	display: grid;
	align-items: center;
	min-height: 700px;
	background-color: var(--blf-navy);
	background-image:
		linear-gradient(90deg, rgba(9, 28, 52, 0.99) 0%, rgba(9, 28, 52, 0.96) 38%, rgba(9, 28, 52, 0.68) 60%, rgba(9, 28, 52, 0.08) 100%),
		var(--blf-hero-image);
	background-position: center, center;
	background-size: cover;
	color: var(--blf-white);
}

.blf-hero::after {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 5px;
	background: linear-gradient(90deg, var(--blf-gold), var(--blf-gold-light), var(--blf-gold));
	content: "";
}

.blf-hero-inner {
	display: flex;
	align-items: center;
	min-height: inherit;
	padding-block: 100px;
}

.blf-hero-copy {
	width: min(660px, 60%);
}

body.blf-2026 .blf-hero h1 {
	max-width: 650px;
	margin: 0 0 26px;
	color: var(--blf-white);
	font-size: clamp(48px, 5.2vw, 76px);
}

.blf-hero-lead {
	max-width: 620px;
	margin: 0 0 34px;
	color: rgba(255, 255, 255, 0.88);
	font-size: 21px;
	line-height: 1.55;
}

.blf-hero-proof {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 30px;
	margin: 38px 0 0;
	padding: 24px 0 0;
	border-top: 1px solid rgba(255, 255, 255, 0.22);
	list-style: none;
}

.blf-hero-proof li {
	position: relative;
	margin: 0;
	padding-left: 16px;
	color: var(--blf-cream);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.075em;
	text-transform: uppercase;
}

.blf-hero-proof li::before {
	position: absolute;
	top: 0.64em;
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--blf-gold);
	content: "";
}

.blf-section {
	padding-block: 110px;
}

.blf-section-heading {
	max-width: 760px;
	margin: 0 auto 54px;
	text-align: center;
}

.blf-section-heading h2,
body.blf-2026 .blf-section-heading h2 {
	margin: 0 0 18px;
	font-size: clamp(40px, 4.4vw, 58px);
}

.blf-section-heading > p:last-child {
	margin: 0;
	color: var(--blf-muted);
	font-size: 20px;
}

.blf-card-grid {
	display: grid;
	gap: 26px;
}

.blf-card-grid-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.blf-situation {
	background: var(--blf-ivory);
}

.blf-path-card {
	position: relative;
	min-height: 370px;
	padding: 40px 34px 36px;
	border: 1px solid var(--blf-border);
	border-top: 4px solid var(--blf-gold);
	background: var(--blf-white);
	box-shadow: 0 12px 35px rgba(9, 28, 52, 0.07);
	transition: transform 180ms ease, box-shadow 180ms ease;
}

.blf-path-card:hover {
	box-shadow: var(--blf-shadow);
	transform: translateY(-5px);
}

.blf-card-number {
	display: block;
	margin-bottom: 34px;
	color: var(--blf-gold);
	font-family: var(--blf-serif);
	font-size: 38px;
	font-weight: 600;
}

.blf-path-card h3,
body.blf-2026 .blf-path-card h3 {
	margin: 0 0 18px;
	font-size: 31px;
}

.blf-path-card p {
	margin: 0 0 28px;
	color: var(--blf-muted);
}

.blf-path-card > a {
	color: var(--blf-navy);
	font-weight: 700;
	text-decoration-color: var(--blf-gold);
	text-underline-offset: 5px;
}

.blf-continuity {
	background: var(--blf-navy);
	color: var(--blf-white);
}

.blf-split {
	display: grid;
	grid-template-columns: minmax(280px, 0.75fr) minmax(0, 1.55fr);
	align-items: center;
	gap: clamp(60px, 8vw, 120px);
}

.blf-continuity-mark {
	display: grid;
	place-items: center;
	min-height: 420px;
	border: 1px solid rgba(201, 164, 75, 0.48);
	background: radial-gradient(circle, rgba(201, 164, 75, 0.14), transparent 68%);
}

.blf-continuity-mark img {
	width: min(220px, 62%);
}

body.blf-2026 .blf-continuity h2 {
	max-width: 780px;
	margin: 0 0 28px;
	color: var(--blf-white);
	font-size: clamp(42px, 4.5vw, 61px);
}

.blf-large-copy {
	margin: 0 0 32px;
	font-size: 21px;
	line-height: 1.68;
}

.blf-continuity .blf-large-copy {
	color: rgba(255, 255, 255, 0.82);
}

.blf-feature-list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	margin: 36px 0;
}

.blf-feature-list div {
	padding-top: 18px;
	border-top: 2px solid var(--blf-gold);
}

.blf-feature-list strong,
.blf-feature-list span {
	display: block;
}

.blf-feature-list strong {
	margin-bottom: 8px;
	color: var(--blf-white);
	font-size: 17px;
}

.blf-feature-list span {
	color: rgba(255, 255, 255, 0.68);
	font-size: 15px;
	line-height: 1.5;
}

.blf-services {
	background: var(--blf-white);
}

.blf-service-card {
	display: flex;
	flex-direction: column;
	min-height: 545px;
	padding: 40px 34px;
	border: 1px solid var(--blf-border);
	background: var(--blf-ivory);
}

.blf-service-card-featured {
	border-color: var(--blf-navy);
	background: var(--blf-navy);
	color: var(--blf-white);
	box-shadow: var(--blf-shadow);
}

.blf-service-label {
	margin: 0 0 16px;
	color: var(--blf-gold);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.blf-service-card h3,
body.blf-2026 .blf-service-card h3 {
	margin: 0 0 22px;
	font-size: 36px;
}

body.blf-2026 .blf-service-card-featured h3 {
	color: var(--blf-white);
}

.blf-service-card > p:not(.blf-service-label) {
	color: var(--blf-muted);
}

.blf-service-card-featured > p:not(.blf-service-label) {
	color: rgba(255, 255, 255, 0.78);
}

.blf-service-card ul {
	margin: 22px 0 30px;
	padding: 0;
	list-style: none;
}

.blf-service-card li {
	position: relative;
	margin: 0;
	padding: 10px 0 10px 20px;
	border-bottom: 1px solid rgba(9, 28, 52, 0.12);
	font-size: 16px;
}

.blf-service-card-featured li {
	border-color: rgba(255, 255, 255, 0.14);
}

.blf-service-card li::before {
	position: absolute;
	top: 18px;
	left: 0;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--blf-gold);
	content: "";
}

.blf-service-card > a {
	margin-top: auto;
	color: var(--blf-navy);
	font-weight: 700;
	text-decoration-color: var(--blf-gold);
	text-underline-offset: 6px;
}

.blf-service-card-featured > a {
	color: var(--blf-white);
}

.blf-texan {
	padding-block: 76px;
	background: var(--blf-cream);
}

.blf-texan-inner {
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) auto;
	align-items: center;
	gap: 60px;
}

body.blf-2026 .blf-texan h2 {
	max-width: 800px;
	margin: 0 0 16px;
	font-size: clamp(36px, 3.8vw, 50px);
}

.blf-texan p:last-child {
	max-width: 820px;
	margin: 0;
}

.blf-stewardship {
	background: var(--blf-ivory);
}

.blf-split-reverse {
	grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
}

body.blf-2026 .blf-stewardship h2 {
	margin: 0 0 26px;
	font-size: clamp(42px, 4.4vw, 59px);
}

.blf-library-panel {
	padding: 44px;
	border: 1px solid var(--blf-border);
	border-top: 5px solid var(--blf-gold);
	background: var(--blf-white);
	box-shadow: var(--blf-shadow);
}

.blf-library-panel h3,
body.blf-2026 .blf-library-panel h3 {
	margin: 0 0 26px;
	font-size: 34px;
}

.blf-library-panel ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.blf-library-panel li {
	position: relative;
	margin: 0;
	padding: 12px 0 12px 24px;
	border-bottom: 1px solid var(--blf-border);
}

.blf-library-panel li::before {
	position: absolute;
	top: 20px;
	left: 0;
	width: 8px;
	height: 8px;
	background: var(--blf-gold);
	content: "";
	transform: rotate(45deg);
}

.blf-process {
	background: var(--blf-white);
}

.blf-process-list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.blf-process-list li {
	display: flex;
	align-items: flex-start;
	gap: 18px;
	margin: 0;
	padding: 30px 26px;
	border-top: 1px solid var(--blf-border);
	border-bottom: 1px solid var(--blf-border);
	border-left: 1px solid var(--blf-border);
}

.blf-process-list li:last-child {
	border-right: 1px solid var(--blf-border);
}

.blf-process-list > li > span {
	color: var(--blf-gold);
	font-family: var(--blf-serif);
	font-size: 24px;
	font-weight: 600;
}

.blf-process-list h3,
body.blf-2026 .blf-process-list h3 {
	margin: 0 0 8px;
	font-size: 28px;
}

.blf-process-list p {
	margin: 0;
	color: var(--blf-muted);
	font-size: 15px;
}

.blf-final-cta,
.blf-footer-cta {
	background: var(--blf-navy);
	color: var(--blf-white);
}

.blf-final-cta {
	padding-block: 90px;
	background-image: linear-gradient(120deg, var(--blf-navy-deep), var(--blf-navy));
}

.blf-final-cta-inner,
.blf-footer-cta-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 60px;
}

body.blf-2026 .blf-final-cta h2,
body.blf-2026 .blf-footer-cta h2 {
	max-width: 720px;
	margin: 0;
	color: var(--blf-white);
	font-size: clamp(38px, 4vw, 54px);
}

/* Interior content */
body.blf-2026:not(.home) .site-content {
	background: var(--blf-ivory);
}

body.blf-2026:not(.home) .site-content > .ast-container {
	padding-top: 68px;
	padding-bottom: 80px;
}

body.blf-2026:not(.home) .elementor-section,
body.blf-2026:not(.home) .e-con {
	--e-global-color-primary: var(--blf-navy);
	--e-global-color-secondary: var(--blf-gold);
}

body.blf-2026:not(.home) .entry-title,
body.blf-2026:not(.home) h1 {
	font-size: clamp(46px, 5vw, 68px);
}

body.blf-2026 input,
body.blf-2026 select,
body.blf-2026 textarea {
	border: 1px solid rgba(9, 28, 52, 0.28);
	border-radius: 0;
	background: var(--blf-white);
	color: var(--blf-ink);
}

/* Client access and Lawyer for Life member shell */
.blf-access-page .site-content > .ast-container {
	display: block;
	width: 100%;
	max-width: none;
	padding: 0;
}

.blf-access-page .blf-footer-cta {
	display: none;
}

.blf-access-main {
	overflow: hidden;
	margin: 0 !important;
}

.blf-access-hero {
	padding-block: 92px;
	border-bottom: 5px solid var(--blf-gold);
	background:
		radial-gradient(circle at 82% 35%, rgba(201, 164, 75, 0.16), transparent 28%),
		linear-gradient(120deg, var(--blf-navy-deep), var(--blf-navy));
	color: var(--blf-white);
}

.blf-access-hero-inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 180px;
	align-items: center;
	gap: 80px;
}

.blf-access-hero h1,
body.blf-2026 .blf-access-hero h1 {
	max-width: 800px;
	margin: 0 0 24px;
	color: var(--blf-white);
	font-size: clamp(48px, 5.2vw, 72px);
}

.blf-access-hero p:last-child {
	max-width: 760px;
	margin: 0;
	color: rgba(255, 255, 255, 0.8);
	font-size: 21px;
}

.blf-access-hero img {
	width: 100%;
	height: auto;
	opacity: 0.9;
}

.blf-access-options,
.blf-member-dashboard,
.blf-member-utilities {
	padding-block: 100px;
}

.blf-access-options,
.blf-member-utilities {
	background: var(--blf-ivory);
}

.blf-access-heading {
	margin-bottom: 46px;
}

.blf-access-card-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 28px;
}

.blf-access-card {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	min-height: 455px;
	padding: 46px;
	border: 1px solid var(--blf-border);
	border-top: 5px solid var(--blf-gold);
	background: var(--blf-white);
	box-shadow: 0 14px 42px rgba(9, 28, 52, 0.08);
}

.blf-access-card-featured {
	background: var(--blf-navy);
	color: var(--blf-white);
}

.blf-access-card-kicker {
	margin: 0 0 18px;
	color: var(--blf-gold);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.blf-access-card h2,
body.blf-2026 .blf-access-card h2 {
	margin: 0 0 22px;
	font-size: clamp(34px, 3.4vw, 46px);
}

body.blf-2026 .blf-access-card-featured h2 {
	color: var(--blf-white);
}

.blf-access-card > p:not(.blf-access-card-kicker, .blf-access-note) {
	margin: 0 0 30px;
	color: var(--blf-muted);
	font-size: 19px;
}

.blf-access-card-featured > p:not(.blf-access-card-kicker, .blf-access-note) {
	color: rgba(255, 255, 255, 0.8);
}

.blf-access-card .blf-button {
	margin-top: auto;
}

.blf-access-note {
	margin: 22px 0 0;
	color: var(--blf-muted);
	font-size: 14px;
	line-height: 1.55;
}

.blf-access-card-featured .blf-access-note {
	color: rgba(255, 255, 255, 0.62);
}

.blf-access-help {
	padding-block: 82px;
	background: var(--blf-cream);
}

.blf-access-help-inner {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
	align-items: center;
	gap: 80px;
}

.blf-access-help h2,
body.blf-2026 .blf-access-help h2 {
	margin: 0;
	font-size: clamp(38px, 4vw, 54px);
}

.blf-access-help p {
	margin: 0 0 26px;
}

.blf-member-gate {
	display: grid;
	align-items: center;
	min-height: 680px;
	padding-block: 100px;
	border-bottom: 5px solid var(--blf-gold);
	background:
		radial-gradient(circle at 50% 25%, rgba(201, 164, 75, 0.17), transparent 28%),
		linear-gradient(135deg, var(--blf-navy-deep), var(--blf-navy));
	color: var(--blf-white);
	text-align: center;
}

.blf-member-gate-inner {
	display: flex;
	align-items: center;
	flex-direction: column;
}

.blf-member-gate img {
	width: 118px;
	height: auto;
	margin-bottom: 34px;
}

.blf-member-gate h1,
body.blf-2026 .blf-member-gate h1 {
	max-width: 850px;
	margin: 0 0 24px;
	color: var(--blf-white);
	font-size: clamp(48px, 5vw, 70px);
}

.blf-member-gate p:not(.blf-eyebrow) {
	max-width: 710px;
	margin: 0 0 34px;
	color: rgba(255, 255, 255, 0.78);
	font-size: 20px;
}

.blf-member-gate .blf-button-row {
	justify-content: center;
}

body.blf-2026 .blf-member-mycase-link {
	margin-top: 32px;
	color: var(--blf-cream);
	font-size: 15px;
	font-weight: 700;
	text-decoration-color: var(--blf-gold);
	text-underline-offset: 5px;
}

.blf-member-hero {
	padding-block: 84px;
	border-bottom: 5px solid var(--blf-gold);
	background: linear-gradient(120deg, var(--blf-navy-deep), var(--blf-navy));
	color: var(--blf-white);
}

.blf-member-hero-inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 0.42fr);
	align-items: center;
	gap: 70px;
}

.blf-member-hero h1,
body.blf-2026 .blf-member-hero h1 {
	margin: 0 0 20px;
	color: var(--blf-white);
	font-size: clamp(48px, 5vw, 70px);
}

.blf-member-hero p:last-child {
	max-width: 720px;
	margin: 0;
	color: rgba(255, 255, 255, 0.78);
	font-size: 20px;
}

.blf-member-status {
	padding: 26px 28px;
	border: 1px solid rgba(201, 164, 75, 0.5);
	background: rgba(255, 255, 255, 0.04);
}

.blf-member-status span,
.blf-member-status strong {
	display: block;
}

.blf-member-status span {
	margin-bottom: 8px;
	color: var(--blf-gold-light);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.blf-member-status strong {
	color: var(--blf-white);
	font-size: 18px;
}

.blf-member-dashboard {
	background: var(--blf-white);
}

.blf-member-dashboard-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 50px;
	margin-bottom: 48px;
}

.blf-member-dashboard-heading h2,
body.blf-2026 .blf-member-dashboard-heading h2 {
	max-width: 800px;
	margin: 0;
	font-size: clamp(40px, 4.2vw, 56px);
}

.blf-member-account-links {
	display: flex;
	gap: 20px;
	white-space: nowrap;
}

.blf-member-account-links a {
	font-size: 14px;
	font-weight: 700;
	text-decoration-color: var(--blf-gold);
	text-underline-offset: 5px;
}

.blf-member-library-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.blf-member-library-card {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	min-height: 300px;
	padding: 32px;
	border: 1px solid var(--blf-border);
	background: var(--blf-ivory);
}

.blf-member-card-mark {
	display: block;
	width: 34px;
	height: 4px;
	margin-bottom: 28px;
	background: var(--blf-gold);
}

.blf-member-library-card h3,
body.blf-2026 .blf-member-library-card h3,
.blf-member-utility-card h3,
body.blf-2026 .blf-member-utility-card h3 {
	margin: 0 0 16px;
	font-size: 30px;
}

.blf-member-library-card p {
	margin: 0 0 24px;
	color: var(--blf-muted);
	font-size: 16px;
}

.blf-member-library-card > a,
.blf-member-card-status {
	margin-top: auto;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.blf-member-library-card > a {
	text-decoration-color: var(--blf-gold);
	text-underline-offset: 5px;
}

.blf-member-card-status {
	color: var(--blf-muted);
}

.blf-member-utilities {
	border-top: 1px solid var(--blf-border);
}

.blf-member-utility-card {
	padding: 40px;
	border: 1px solid var(--blf-border);
	background: var(--blf-white);
}

.blf-member-utility-card p {
	margin: 0 0 26px;
	color: var(--blf-muted);
}

.blf-member-utility-actions {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	gap: 18px;
}

/* Front-end member account */
.blf-member-account-section {
	padding-block: 96px 110px;
	background: var(--blf-ivory);
}

.blf-member-account-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
	gap: 28px;
}

.blf-member-account-card {
	padding: 42px;
	border: 1px solid var(--blf-border);
	border-top: 5px solid var(--blf-gold);
	background: var(--blf-white);
	box-shadow: 0 14px 42px rgba(9, 28, 52, 0.07);
}

.blf-member-account-card h2,
body.blf-2026 .blf-member-account-card h2 {
	margin: 0 0 16px;
	font-size: clamp(34px, 3.4vw, 44px);
}

.blf-member-account-card > p {
	margin: 0 0 30px;
	color: var(--blf-muted);
	font-size: 16px;
}

.blf-member-account-card form > p,
.blf-account-field-grid p {
	margin: 0 0 22px;
}

.blf-account-field-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.blf-member-account-card label {
	display: block;
	margin-bottom: 7px;
	color: var(--blf-navy);
	font-size: 14px;
	font-weight: 700;
}

body.blf-2026 .blf-member-account-card input {
	width: 100%;
	min-height: 50px;
	padding: 11px 13px;
	font-size: 16px;
}

body.blf-2026 .blf-member-account-card input[readonly] {
	background: #eeebe5;
	color: #4f5865;
	cursor: not-allowed;
}

.blf-field-help {
	display: block;
	margin-top: 7px;
	color: var(--blf-muted);
	font-size: 13px;
}

body.blf-2026 .blf-member-account-card button.blf-button-navy {
	border-color: var(--blf-navy);
	background: var(--blf-navy);
	color: var(--blf-white);
}

body.blf-2026 .blf-member-account-card button.blf-button-navy:hover,
body.blf-2026 .blf-member-account-card button.blf-button-navy:focus-visible {
	background: var(--blf-white);
	color: var(--blf-navy);
}

.blf-account-form-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 18px;
}

.blf-account-form-actions > a {
	font-size: 14px;
	font-weight: 700;
	text-decoration-color: var(--blf-gold);
	text-underline-offset: 5px;
}

.blf-account-notice {
	margin-bottom: 30px;
	padding: 18px 20px;
	border-left: 5px solid var(--blf-gold);
	background: var(--blf-white);
	box-shadow: 0 8px 24px rgba(9, 28, 52, 0.05);
}

.blf-account-notice-success {
	border-left-color: #38714c;
}

.blf-account-notice-error {
	border-left-color: #9e342d;
}

.blf-account-notice strong {
	display: block;
	margin-bottom: 8px;
	color: var(--blf-navy);
}

.blf-account-notice ul {
	margin: 0;
	padding-left: 20px;
}

/* Protected Lawyer for Life core resources */
.blf-member-resource-page .site-content > .ast-container {
	display: block;
	width: 100%;
	max-width: none;
	padding: 0;
}

.blf-member-resource-page .blf-footer-cta {
	display: none;
}

.blf-member-resource-main {
	overflow: hidden;
	margin: 0 !important;
	background: var(--blf-white);
}

.blf-member-resource-hero {
	padding-block: 72px 68px;
	border-bottom: 4px solid var(--blf-gold);
	background:
		radial-gradient(circle at 84% 28%, rgba(201, 164, 75, 0.16), transparent 26%),
		linear-gradient(120deg, var(--blf-navy-deep), var(--blf-navy));
	color: var(--blf-white);
}

body.blf-2026 .blf-member-resource-back {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin-bottom: 34px;
	color: var(--blf-cream);
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-decoration-color: var(--blf-gold);
	text-underline-offset: 5px;
	text-transform: uppercase;
}

.blf-member-resource-hero h1,
body.blf-2026 .blf-member-resource-hero h1 {
	max-width: 900px;
	margin: 0 0 20px;
	color: var(--blf-white);
	font-size: clamp(48px, 5vw, 70px);
}

.blf-member-resource-hero p:last-child {
	max-width: 790px;
	margin: 0;
	color: rgba(255, 255, 255, 0.8);
	font-size: 20px;
}

.blf-member-resource-nav {
	border-bottom: 1px solid var(--blf-border);
	background: var(--blf-ivory);
	box-shadow: 0 8px 24px rgba(9, 28, 52, 0.05);
}

.blf-member-resource-nav .blf-shell {
	display: flex;
	align-items: stretch;
	overflow-x: auto;
	-ms-overflow-style: none;
	scrollbar-width: none;
}

.blf-member-resource-nav .blf-shell::-webkit-scrollbar {
	display: none;
}

body.blf-2026 .blf-member-resource-nav a {
	display: inline-flex;
	align-items: center;
	min-height: 58px;
	padding: 12px 17px;
	border-bottom: 3px solid transparent;
	color: var(--blf-navy);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.045em;
	text-decoration: none;
	text-transform: uppercase;
	white-space: nowrap;
}

body.blf-2026 .blf-member-resource-nav a:hover,
body.blf-2026 .blf-member-resource-nav a[aria-current="page"] {
	border-bottom-color: var(--blf-gold);
	background: rgba(201, 164, 75, 0.09);
}

.blf-member-resource-section {
	padding-block: 90px 104px;
}

.blf-member-resource-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(285px, 0.36fr);
	align-items: start;
	gap: clamp(52px, 7vw, 96px);
}

.blf-member-resource-content > h2,
body.blf-2026 .blf-member-resource-content > h2 {
	margin: 0 0 22px;
	font-size: clamp(38px, 4vw, 52px);
}

.blf-member-resource-content > p {
	max-width: 820px;
	margin: 0 0 36px;
	color: var(--blf-muted);
	font-size: 18px;
}

.blf-member-resource-note {
	padding: 18px 20px;
	border-left: 4px solid var(--blf-gold);
	background: var(--blf-ivory);
	color: var(--blf-ink) !important;
	font-size: 15px !important;
}

.blf-member-checklist {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px;
	margin-block: 44px 72px;
}

.blf-member-checklist-group {
	padding: 28px;
	border: 1px solid var(--blf-border);
	border-top: 4px solid var(--blf-gold);
	background: var(--blf-white);
	box-shadow: 0 10px 30px rgba(9, 28, 52, 0.05);
}

.blf-member-checklist-group h3,
body.blf-2026 .blf-member-checklist-group h3 {
	margin: 0 0 22px;
	font-size: 27px;
}

.blf-member-checklist-group label {
	display: grid;
	grid-template-columns: 20px minmax(0, 1fr);
	align-items: start;
	gap: 12px;
	margin-bottom: 16px;
	color: var(--blf-muted);
	font-size: 15px;
	line-height: 1.45;
}

.blf-member-checklist-group label:last-child {
	margin-bottom: 0;
}

.blf-member-checklist-group input[type="checkbox"] {
	width: 18px;
	height: 18px;
	margin-top: 2px;
	accent-color: var(--blf-gold);
}

.blf-local-tool-summary {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 28px;
	margin: -42px 0 64px;
	padding: 28px;
	border-left: 5px solid var(--blf-gold);
	background: var(--blf-ivory);
	box-shadow: 0 10px 30px rgba(9, 28, 52, 0.05);
}

.blf-local-tool-summary p {
	margin: 0;
}

.blf-local-tool-summary strong,
.blf-local-tool-summary span {
	display: block;
}

.blf-local-tool-summary strong {
	margin-bottom: 7px;
	color: var(--blf-navy);
	font-size: 20px;
}

.blf-local-tool-summary span {
	max-width: 760px;
	color: var(--blf-muted);
	font-size: 15px;
}

.blf-local-tool-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 12px;
}

body.blf-2026 .blf-local-tool-actions .blf-button {
	min-height: 46px;
	padding: 10px 16px;
	font-size: 13px;
}

.blf-member-action-guide,
.blf-member-timing,
.blf-member-do-not,
.blf-member-priority-box {
	padding: 38px;
	border: 1px solid var(--blf-border);
	background: var(--blf-ivory);
}

.blf-member-action-guide h2,
body.blf-2026 .blf-member-action-guide h2,
.blf-member-timing h2,
body.blf-2026 .blf-member-timing h2,
.blf-member-do-not h2,
body.blf-2026 .blf-member-do-not h2,
.blf-member-priority-box h2,
body.blf-2026 .blf-member-priority-box h2 {
	margin: 0 0 26px;
	font-size: clamp(32px, 3.4vw, 44px);
}

.blf-member-action-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.blf-member-action-grid article {
	padding: 24px;
	border: 1px solid var(--blf-border);
	background: var(--blf-white);
}

.blf-member-action-grid h3,
body.blf-2026 .blf-member-action-grid h3 {
	margin: 0 0 12px;
	font-size: 23px;
}

.blf-member-action-grid p {
	margin: 0;
	color: var(--blf-muted);
	font-size: 14px;
}

.blf-member-resource-sidebar {
	position: sticky;
	top: 170px;
}

.blf-member-sidebar-card {
	padding: 32px;
	border-top: 5px solid var(--blf-gold);
	background: var(--blf-navy);
	color: var(--blf-white);
	box-shadow: var(--blf-shadow);
}

.blf-member-sidebar-card h2,
body.blf-2026 .blf-member-sidebar-card h2 {
	margin: 0 0 18px;
	color: var(--blf-white);
	font-size: 32px;
}

.blf-member-sidebar-card > p:not(.blf-eyebrow) {
	margin: 0 0 26px;
	color: rgba(255, 255, 255, 0.75);
	font-size: 15px;
}

.blf-member-sidebar-card .blf-button {
	width: 100%;
	margin-bottom: 20px;
}

body.blf-2026 .blf-member-sidebar-card .blf-text-link {
	display: block;
	margin-top: 14px;
	color: var(--blf-cream);
	font-size: 14px;
}

.blf-member-resource-disclaimer,
.blf-member-alert {
	margin-top: 22px;
	padding: 22px;
	border: 1px solid var(--blf-border);
	background: var(--blf-ivory);
	font-size: 13px;
}

.blf-member-resource-disclaimer strong,
.blf-member-alert strong {
	display: block;
	margin-bottom: 7px;
	color: var(--blf-navy);
	font-size: 14px;
}

.blf-member-resource-disclaimer p,
.blf-member-alert p {
	margin: 0;
	color: var(--blf-muted);
}

.blf-member-alert {
	border-left: 4px solid var(--blf-gold);
}

.blf-member-topic-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px;
	margin-block: 44px 70px;
}

.blf-member-topic-grid article {
	padding: 30px;
	border: 1px solid var(--blf-border);
	border-top: 4px solid var(--blf-gold);
	background: var(--blf-white);
}

.blf-member-topic-grid h3,
body.blf-2026 .blf-member-topic-grid h3 {
	margin: 0 0 18px;
	font-size: 28px;
}

.blf-member-topic-grid label {
	display: grid;
	grid-template-columns: 20px minmax(0, 1fr);
	align-items: start;
	gap: 12px;
	margin-bottom: 15px;
	color: var(--blf-muted);
	font-size: 15px;
	line-height: 1.45;
}

.blf-member-topic-grid label:last-child {
	margin-bottom: 0;
}

.blf-member-topic-grid input[type="checkbox"] {
	width: 18px;
	height: 18px;
	margin-top: 2px;
	accent-color: var(--blf-gold);
}

.blf-public-tool-routes {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px;
	margin-top: 28px;
}

.blf-public-tool-routes article {
	padding: 30px;
	border: 1px solid var(--blf-border);
	border-top: 4px solid var(--blf-gold);
	background: var(--blf-white);
}

.blf-public-tool-routes h3,
body.blf-2026 .blf-public-tool-routes h3 {
	margin: 0 0 14px;
	font-size: 28px;
}

.blf-public-tool-routes article > p:not(.blf-strategy-eyebrow) {
	margin: 0 0 22px;
	color: var(--blf-muted);
	font-size: 15px;
}

.blf-member-topic-grid ul,
.blf-member-timeline ul,
.blf-member-do-not ul {
	margin: 0;
	padding-left: 21px;
}

.blf-member-topic-grid li,
.blf-member-timeline li,
.blf-member-do-not li {
	margin-bottom: 10px;
	color: var(--blf-muted);
	font-size: 15px;
}

.blf-member-timing dl {
	margin: 0;
}

.blf-member-timing dl > div {
	display: grid;
	grid-template-columns: minmax(140px, 0.3fr) minmax(0, 1fr);
	gap: 24px;
	padding-block: 20px;
	border-top: 1px solid var(--blf-border);
}

.blf-member-timing dt {
	color: var(--blf-navy);
	font-weight: 700;
}

.blf-member-timing dd {
	margin: 0;
	color: var(--blf-muted);
	font-size: 15px;
}

.blf-member-priority-box {
	margin-bottom: 50px;
	border-top: 5px solid var(--blf-gold);
}

.blf-member-priority-box p:last-child {
	margin-bottom: 0;
	color: var(--blf-muted);
}

.blf-member-timeline {
	margin-bottom: 54px;
}

.blf-member-timeline > section {
	display: grid;
	grid-template-columns: 56px minmax(0, 1fr);
	gap: 24px;
	padding: 34px 0;
	border-bottom: 1px solid var(--blf-border);
}

.blf-member-timeline > section:first-child {
	padding-top: 0;
}

.blf-member-timeline > section > span {
	display: grid;
	place-items: center;
	width: 50px;
	height: 50px;
	border: 2px solid var(--blf-gold);
	border-radius: 50%;
	color: var(--blf-navy);
	font-family: var(--blf-serif);
	font-size: 24px;
}

.blf-member-timeline h3,
body.blf-2026 .blf-member-timeline h3 {
	margin: 0 0 18px;
	font-size: 32px;
}

.blf-member-do-not {
	border-left: 5px solid var(--blf-gold);
}

.blf-member-status-panel {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 40px;
	margin-bottom: 44px;
	padding: 40px;
	border-top: 5px solid var(--blf-gold);
	background: var(--blf-navy);
	color: var(--blf-white);
}

.blf-member-status-panel h2,
body.blf-2026 .blf-member-status-panel h2 {
	margin: 0 0 14px;
	color: var(--blf-white);
	font-size: clamp(34px, 3.6vw, 48px);
}

.blf-member-status-panel p:last-child {
	max-width: 760px;
	margin: 0;
	color: rgba(255, 255, 255, 0.74);
}

.blf-member-status-badge {
	display: inline-flex;
	align-items: center;
	min-height: 42px;
	padding: 9px 18px;
	border: 1px solid var(--blf-gold);
	color: var(--blf-gold-light);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.blf-member-benefits-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
	margin-bottom: 56px;
}

.blf-member-benefits-grid article {
	padding: 28px;
	border: 1px solid var(--blf-border);
	background: var(--blf-ivory);
}

.blf-member-benefits-grid h3,
body.blf-2026 .blf-member-benefits-grid h3 {
	margin: 0 0 15px;
	font-size: 26px;
}

.blf-member-benefits-grid p {
	margin: 0;
	color: var(--blf-muted);
	font-size: 15px;
}

.blf-member-boundary-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	margin-bottom: 56px;
}

.blf-member-boundary-grid section {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	min-height: 360px;
	padding: 38px;
	border: 1px solid var(--blf-border);
	background: var(--blf-white);
	box-shadow: 0 10px 32px rgba(9, 28, 52, 0.05);
}

.blf-member-boundary-grid h2,
body.blf-2026 .blf-member-boundary-grid h2 {
	margin: 0 0 18px;
	font-size: 34px;
}

.blf-member-boundary-grid section > p:not(.blf-eyebrow) {
	margin: 0 0 28px;
	color: var(--blf-muted);
}

.blf-member-boundary-grid .blf-button {
	margin-top: auto;
}

.blf-member-benefits-help {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 48px;
	padding: 42px;
	background: var(--blf-navy);
	color: var(--blf-white);
}

.blf-member-benefits-help h2,
body.blf-2026 .blf-member-benefits-help h2 {
	margin: 0 0 12px;
	color: var(--blf-white);
	font-size: 36px;
}

.blf-member-benefits-help p:last-child {
	max-width: 660px;
	margin: 0;
	color: rgba(255, 255, 255, 0.74);
}

.blf-member-benefits-help + .blf-member-resource-disclaimer {
	max-width: 720px;
	margin-top: 34px;
}

/* Public Lawyer for Life overview */
.blf-l4l-page .site-content > .ast-container {
	display: block;
	width: 100%;
	max-width: none;
	padding: 0;
}

.blf-l4l-page .blf-footer-cta {
	display: none;
}

.blf-l4l-main {
	overflow: hidden;
	margin: 0 !important;
}

.blf-l4l-hero {
	padding-block: 104px;
	border-bottom: 5px solid var(--blf-gold);
	background:
		radial-gradient(circle at 84% 32%, rgba(201, 164, 75, 0.18), transparent 27%),
		linear-gradient(120deg, var(--blf-navy-deep), var(--blf-navy));
	color: var(--blf-white);
}

.blf-l4l-hero-inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 190px;
	align-items: center;
	gap: 88px;
}

.blf-l4l-hero h1,
body.blf-2026 .blf-l4l-hero h1 {
	max-width: 850px;
	margin: 0 0 26px;
	color: var(--blf-white);
	font-size: clamp(50px, 5.4vw, 76px);
}

.blf-l4l-hero-copy > p:not(.blf-eyebrow) {
	max-width: 790px;
	margin: 0 0 34px;
	color: rgba(255, 255, 255, 0.8);
	font-size: 21px;
}

.blf-l4l-hero img {
	width: 100%;
	height: auto;
	opacity: 0.92;
}

body.blf-2026 .blf-l4l-mycase-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 30px;
	color: var(--blf-cream);
	font-size: 15px;
	font-weight: 700;
	text-decoration-color: var(--blf-gold);
	text-underline-offset: 5px;
}

.blf-l4l-intro {
	background: var(--blf-white);
}

.blf-l4l-intro-grid,
.blf-l4l-equal-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	align-items: start;
	gap: clamp(60px, 8vw, 120px);
}

.blf-l4l-intro h2,
body.blf-2026 .blf-l4l-intro h2,
.blf-l4l-equal h2,
body.blf-2026 .blf-l4l-equal h2 {
	margin: 0;
	font-size: clamp(42px, 4.4vw, 58px);
}

.blf-l4l-intro-grid > div:last-child > p:last-child,
.blf-l4l-equal-grid > div:last-child > p:last-child {
	margin-bottom: 0;
}

.blf-l4l-system {
	background: var(--blf-ivory);
}

.blf-l4l-card-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.blf-l4l-card {
	min-height: 310px;
	padding: 36px 32px;
	border: 1px solid var(--blf-border);
	border-top: 4px solid var(--blf-gold);
	background: var(--blf-white);
	box-shadow: 0 12px 35px rgba(9, 28, 52, 0.06);
}

.blf-l4l-card > span {
	display: block;
	margin-bottom: 26px;
	color: var(--blf-gold);
	font-family: var(--blf-serif);
	font-size: 26px;
	font-weight: 600;
}

.blf-l4l-card h3,
body.blf-2026 .blf-l4l-card h3 {
	margin: 0 0 16px;
	font-size: 30px;
}

.blf-l4l-card p {
	margin: 0;
	color: var(--blf-muted);
	font-size: 16px;
}

.blf-l4l-equal {
	padding-block: 92px;
	background: var(--blf-navy);
	color: var(--blf-white);
}

body.blf-2026 .blf-l4l-equal h2 {
	color: var(--blf-white);
}

.blf-l4l-equal p:not(.blf-eyebrow) {
	color: rgba(255, 255, 255, 0.8);
	font-size: 19px;
}

.blf-l4l-roles {
	background: var(--blf-white);
}

.blf-l4l-role-card {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	min-height: 390px;
	padding: 38px 32px;
	border: 1px solid var(--blf-border);
	background: var(--blf-ivory);
}

.blf-l4l-role-card h3,
body.blf-2026 .blf-l4l-role-card h3 {
	margin: 0 0 18px;
	font-size: 32px;
}

.blf-l4l-role-card > p:not(.blf-service-label) {
	margin: 0 0 28px;
	color: var(--blf-muted);
	font-size: 16px;
}

.blf-l4l-role-card > a {
	margin-top: auto;
	font-weight: 700;
	text-decoration-color: var(--blf-gold);
	text-underline-offset: 5px;
}

.blf-l4l-cta {
	padding-block: 84px;
	border-bottom: 1px solid rgba(201, 164, 75, 0.35);
	background: linear-gradient(120deg, var(--blf-navy-deep), var(--blf-navy));
	color: var(--blf-white);
}

.blf-l4l-cta-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 64px;
}

.blf-l4l-cta h2,
body.blf-2026 .blf-l4l-cta h2 {
	max-width: 750px;
	margin: 0 0 18px;
	color: var(--blf-white);
	font-size: clamp(40px, 4.2vw, 56px);
}

.blf-l4l-cta p:not(.blf-eyebrow) {
	max-width: 720px;
	margin: 0;
	color: rgba(255, 255, 255, 0.76);
}

.blf-l4l-cta .blf-button-row {
	justify-content: flex-end;
	min-width: 250px;
}

/* Footer */
.blf-footer-cta {
	padding-block: 66px;
	border-top: 1px solid rgba(201, 164, 75, 0.35);
	border-bottom: 1px solid rgba(201, 164, 75, 0.35);
}

/* The homepage has its own tailored closing invitation. */
.home.blf-2026 .blf-footer-cta {
	display: none;
}

.blf-footer-cta p:not(.blf-eyebrow) {
	max-width: 680px;
	margin: 14px 0 0;
	color: rgba(255, 255, 255, 0.74);
}

.blf-site-footer {
	display: block !important;
	padding: 72px 0 28px;
	background: var(--blf-navy-deep);
	color: rgba(255, 255, 255, 0.74);
}

.blf-footer-grid {
	display: grid;
	grid-template-columns: 1.55fr 0.7fr 0.7fr 1fr;
	gap: 48px;
}

.blf-footer-brand img {
	width: min(310px, 100%);
	height: auto;
	margin-bottom: 20px;
}

.blf-footer-brand p {
	max-width: 390px;
	margin: 0;
}

body.blf-2026 .blf-site-footer h2 {
	margin: 0 0 18px;
	color: var(--blf-white);
	font-family: var(--blf-sans);
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.blf-site-footer ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.blf-site-footer li {
	margin: 0 0 9px;
}

body.blf-2026 .blf-site-footer a {
	color: rgba(255, 255, 255, 0.78);
	text-decoration: none;
}

body.blf-2026 .blf-site-footer a:hover {
	color: var(--blf-gold-light);
}

.blf-footer-contact address {
	font-style: normal;
}

.blf-footer-bottom {
	display: flex;
	justify-content: space-between;
	gap: 30px;
	margin-top: 54px;
	padding-top: 24px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	font-size: 14px;
}

.blf-footer-bottom p {
	margin: 0;
}

.blf-footer-bottom div {
	display: flex;
	gap: 24px;
}

.blf-disclaimer {
	padding-top: 16px;
	font-size: 12px;
}

.blf-disclaimer p {
	margin: 0;
}

/* Articles and resources index */
body.blog.blf-2026 .site-content > .ast-container,
body.search.blf-2026 .site-content > .ast-container {
	display: block;
	width: 100%;
	max-width: none;
	padding: 0;
}

body.blog.blf-2026 #primary.blf-blog,
body.search.blf-2026 #primary.blf-blog {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
}

.blf-blog,
.blf-blog *,
.blf-blog *::before,
.blf-blog *::after {
	box-sizing: border-box;
}

.blf-blog {
	overflow: hidden;
	background: var(--blf-white);
}

.blf-blog-hero {
	position: relative;
	padding-block: 104px;
	background: linear-gradient(135deg, var(--blf-navy-deep), var(--blf-navy));
	color: rgba(255, 255, 255, 0.8);
}

.blf-blog-hero::after {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 4px;
	background: var(--blf-gold);
	content: "";
}

body.blf-2026 .blf-blog-hero h1 {
	max-width: 820px;
	margin: 0;
	color: var(--blf-white);
	font-size: clamp(48px, 7vw, 82px);
}

.blf-blog-hero > .blf-shell > p:last-child {
	max-width: 760px;
	margin: 24px 0 0;
	font-size: 21px;
}

.blf-blog-hero .blf-search-intro {
	max-width: 760px;
	margin: 24px 0 0;
	font-size: 21px;
}

.blf-blog-index {
	padding-block: 100px 112px;
}

.blf-blog-heading {
	max-width: 790px;
	margin-bottom: 48px;
}

body.blf-2026 .blf-blog-heading h2,
body.blf-2026 .blf-blog-empty h2 {
	margin: 0;
	font-size: clamp(36px, 5vw, 54px);
}

.blf-search-form {
	display: grid;
	max-width: 780px;
	margin-top: 38px;
}

.blf-search-form label {
	margin-bottom: 10px;
	color: var(--blf-white);
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.blf-search-form-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 12px;
}

body.blf-2026 .blf-search-form input[type="search"] {
	min-width: 0;
	min-height: 52px;
	padding: 12px 16px;
	border: 1px solid rgba(255, 255, 255, 0.45);
	border-radius: 0;
	background: var(--blf-white);
	color: var(--blf-ink);
	font-size: 17px;
}

body.blf-2026 .blf-search-form button {
	min-height: 52px;
	padding: 12px 24px;
	border: 1px solid var(--blf-gold);
	border-radius: 0;
	background: var(--blf-gold);
	color: var(--blf-navy);
	font-size: 15px;
	font-weight: 700;
	cursor: pointer;
}

body.blf-2026 .blf-search-form button:hover {
	background: var(--blf-gold-light);
}

.blf-search-summary {
	margin: 0;
	color: var(--blf-muted);
}

.blf-blog-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 30px;
}

.blf-blog-card {
	display: flex;
	overflow: hidden;
	flex-direction: column;
	min-width: 0;
	margin: 0;
	border: 1px solid var(--blf-border);
	border-top: 4px solid var(--blf-gold);
	background: var(--blf-white);
	box-shadow: var(--blf-shadow);
}

.blf-blog-card-image {
	display: block;
	overflow: hidden;
	background: var(--blf-ivory);
}

.blf-blog-card-image img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	transition: transform 180ms ease;
}

.blf-blog-card-image:hover img {
	transform: scale(1.02);
}

.blf-blog-card-body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 34px;
}

.blf-blog-card-meta {
	margin: 0 0 14px;
	color: var(--blf-muted);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

body.blf-2026 .blf-blog-card h2,
body.blf-2026 .blf-blog-card h3 {
	margin: 0;
	font-size: clamp(27px, 3vw, 36px);
}

body.blf-2026 .blf-blog-card h2 a,
body.blf-2026 .blf-blog-card h3 a {
	color: var(--blf-navy);
	text-decoration: none;
}

body.blf-2026 .blf-blog-card h2 a:hover,
body.blf-2026 .blf-blog-card h3 a:hover {
	text-decoration-color: var(--blf-gold);
	text-decoration-line: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 5px;
}

.blf-blog-card-excerpt {
	margin: 20px 0 0;
	color: var(--blf-muted);
}

body.blf-2026 .blf-blog-card-link {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	gap: 9px;
	margin-top: 26px;
	color: var(--blf-navy);
	font-size: 15px;
	font-weight: 700;
	text-decoration-color: var(--blf-gold);
	text-decoration-thickness: 2px;
	text-underline-offset: 5px;
}

.blf-blog-pagination {
	margin-top: 58px;
}

.blf-blog-pagination .nav-links {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

body.blf-2026 .blf-blog-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	padding: 8px 13px;
	border: 1px solid var(--blf-border);
	background: var(--blf-white);
	color: var(--blf-navy);
	font-weight: 700;
	text-decoration: none;
}

body.blf-2026 .blf-blog-pagination .page-numbers.current,
body.blf-2026 .blf-blog-pagination a.page-numbers:hover {
	border-color: var(--blf-gold);
	background: var(--blf-gold);
	color: var(--blf-navy);
}

.blf-blog-empty {
	max-width: 780px;
	padding: 50px;
	border: 1px solid var(--blf-border);
	border-top: 4px solid var(--blf-gold);
	background: var(--blf-ivory);
}

.blf-blog-empty > p:not(.blf-eyebrow) {
	margin: 22px 0 28px;
}

@media (max-width: 1100px) {
	.blf-topbar-contact a:first-child,
	.blf-topbar-contact span {
		display: none;
	}

	.blf-primary-nav {
		gap: 18px;
	}

	.blf-primary-nav ul {
		gap: 18px;
	}

	.blf-primary-nav li a {
		font-size: 14px;
	}

	.blf-brand img {
		width: 220px;
	}

	.blf-card-grid-3 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.blf-card-grid-3 > :last-child {
		grid-column: 1 / -1;
	}

	.blf-service-card {
		min-height: auto;
	}

	.blf-process-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.blf-process-list li:nth-child(2) {
		border-right: 1px solid var(--blf-border);
	}

	.blf-process-list li:nth-child(n + 3) {
		border-top: 0;
	}

	.blf-footer-grid {
		grid-template-columns: 1.4fr 0.7fr 0.7fr;
	}

	.blf-footer-contact {
		grid-column: 1 / -1;
	}

	.blf-member-library-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.blf-member-benefits-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.blf-member-action-grid {
		grid-template-columns: 1fr;
	}

	.blf-l4l-card-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 960px) {
	:root {
		--blf-shell: min(100% - 36px, 760px);
	}

	body.admin-bar .blf-site-header {
		top: 46px;
	}

	.blf-topbar p {
		display: none;
	}

	.blf-topbar-inner {
		justify-content: center;
	}

	.blf-topbar-actions {
		width: 100%;
		justify-content: center;
	}

	.blf-menu-toggle {
		display: inline-flex;
	}

	.blf-nav-inner {
		position: relative;
		min-height: 78px;
	}

	.blf-brand img {
		width: 210px;
	}

	.blf-primary-nav {
		position: absolute;
		top: 100%;
		right: -18px;
		left: -18px;
		display: none;
		align-items: stretch;
		padding: 24px;
		border-top: 1px solid rgba(201, 164, 75, 0.34);
		background: var(--blf-navy);
		box-shadow: 0 18px 30px rgba(0, 0, 0, 0.22);
	}

	.blf-primary-nav.is-open {
		display: flex;
		flex-direction: column;
	}

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

	.blf-primary-nav li a {
		display: block;
		padding: 11px 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	}

	.blf-hero {
		min-height: 680px;
		background-image:
			linear-gradient(90deg, rgba(9, 28, 52, 0.98), rgba(9, 28, 52, 0.84)),
			var(--blf-hero-image);
		background-position: center, 65% center;
	}

	.blf-hero-copy {
		width: 100%;
		max-width: 660px;
	}

	.blf-split,
	.blf-split-reverse {
		grid-template-columns: 1fr;
		gap: 50px;
	}

	.blf-continuity-mark {
		min-height: 300px;
	}

	.blf-feature-list {
		grid-template-columns: 1fr;
	}

	.blf-texan-inner {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.blf-final-cta-inner,
	.blf-footer-cta-inner {
		align-items: flex-start;
		flex-direction: column;
		gap: 34px;
	}

	.blf-access-hero-inner,
	.blf-access-help-inner,
	.blf-member-hero-inner,
	.blf-l4l-hero-inner,
	.blf-l4l-intro-grid,
	.blf-l4l-equal-grid {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.blf-access-hero img {
		display: none;
	}

	.blf-l4l-hero img {
		display: none;
	}

	.blf-l4l-cta-inner {
		align-items: flex-start;
		flex-direction: column;
		gap: 34px;
	}

	.blf-l4l-cta .blf-button-row {
		justify-content: flex-start;
	}

	.blf-member-dashboard-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 24px;
	}

	.blf-member-resource-layout {
		grid-template-columns: 1fr;
	}

	.blf-member-resource-sidebar {
		position: static;
		display: grid;
		grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr);
		gap: 22px;
	}

	.blf-member-resource-sidebar .blf-member-resource-disclaimer,
	.blf-member-resource-sidebar .blf-member-alert {
		margin-top: 0;
	}

	.blf-member-benefits-help {
		align-items: flex-start;
		flex-direction: column;
	}

	.blf-member-account-grid {
		grid-template-columns: 1fr;
	}

	.blf-blog-hero {
		padding-block: 84px;
	}

	.blf-blog-index {
		padding-block: 84px 96px;
	}

	.blf-blog-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.blf-local-tool-summary,
	.blf-public-tool-routes {
		grid-template-columns: 1fr;
	}

	.blf-local-tool-summary {
		align-items: start;
		margin-top: -36px;
		padding: 24px;
	}

	.blf-local-tool-actions {
		justify-content: flex-start;
	}

	.blf-local-tool-actions .blf-button {
		width: 100%;
	}

	:root {
		--blf-shell: calc(100% - 28px);
	}

	body.blf-2026 {
		font-size: 17px;
	}

	.blf-topbar-contact {
		display: none;
	}

	.blf-utility-nav {
		justify-content: center;
		width: 100%;
		padding-right: 0;
		border-right: 0;
	}

	.blf-utility-nav a {
		font-size: 11px;
	}

	.blf-nav-inner {
		min-height: 72px;
	}

	.blf-brand img {
		width: 184px;
	}

	.blf-menu-toggle-label {
		display: none;
	}

	.blf-hero {
		min-height: 690px;
		background-position: center, 63% center;
	}

	.blf-hero-inner {
		padding-block: 76px;
	}

	body.blf-2026 .blf-hero h1 {
		font-size: 46px;
	}

	.blf-hero-lead {
		font-size: 18px;
	}

	.blf-hero .blf-button-row {
		align-items: flex-start;
		flex-direction: column;
	}

	.blf-section {
		padding-block: 78px;
	}

	.blf-section-heading {
		margin-bottom: 38px;
	}

	.blf-card-grid-3,
	.blf-process-list {
		grid-template-columns: 1fr;
	}

	.blf-card-grid-3 > :last-child {
		grid-column: auto;
	}

	.blf-path-card {
		min-height: 0;
	}

	.blf-process-list li,
	.blf-process-list li:nth-child(2),
	.blf-process-list li:nth-child(n + 3),
	.blf-process-list li:last-child {
		border: 1px solid var(--blf-border);
		border-bottom: 0;
	}

	.blf-process-list li:last-child {
		border-bottom: 1px solid var(--blf-border);
	}

	.blf-library-panel {
		padding: 34px 26px;
	}

	.blf-footer-grid {
		grid-template-columns: 1fr;
	}

	.blf-footer-contact {
		grid-column: auto;
	}

	.blf-footer-bottom {
		align-items: flex-start;
		flex-direction: column;
	}

	.blf-access-hero,
	.blf-access-options,
	.blf-member-dashboard,
	.blf-member-utilities,
	.blf-l4l-hero {
		padding-block: 72px;
	}

	.blf-access-card-grid,
	.blf-member-library-grid,
	.blf-l4l-card-grid {
		grid-template-columns: 1fr;
	}

	.blf-member-resource-hero,
	.blf-member-resource-section {
		padding-block: 68px;
	}

	.blf-member-checklist,
	.blf-member-topic-grid,
	.blf-member-benefits-grid,
	.blf-member-boundary-grid,
	.blf-member-resource-sidebar {
		grid-template-columns: 1fr;
	}

	.blf-member-checklist-group,
	.blf-member-topic-grid article,
	.blf-member-action-guide,
	.blf-member-timing,
	.blf-member-do-not,
	.blf-member-priority-box,
	.blf-member-status-panel,
	.blf-member-boundary-grid section,
	.blf-member-benefits-help {
		padding: 28px 24px;
	}

	.blf-member-status-panel {
		align-items: flex-start;
		flex-direction: column;
	}

	.blf-member-timing dl > div {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.blf-member-timeline > section {
		grid-template-columns: 44px minmax(0, 1fr);
		gap: 16px;
	}

	.blf-member-timeline > section > span {
		width: 42px;
		height: 42px;
		font-size: 20px;
	}

	.blf-member-benefits-help .blf-button-row {
		align-items: stretch;
		flex-direction: column;
		width: 100%;
	}

	.blf-l4l-card,
	.blf-l4l-role-card {
		min-height: 0;
		padding: 32px 28px;
	}

	.blf-l4l-equal,
	.blf-l4l-cta {
		padding-block: 68px;
	}

	.blf-l4l-cta .blf-button-row {
		align-items: stretch;
		flex-direction: column;
		width: 100%;
	}

	.blf-access-card {
		min-height: 0;
		padding: 34px 28px;
	}

	.blf-access-help {
		padding-block: 64px;
	}

	.blf-member-gate {
		min-height: 620px;
		padding-block: 78px;
	}

	.blf-member-gate .blf-button-row {
		align-items: stretch;
		flex-direction: column;
	}

	.blf-member-account-links {
		flex-wrap: wrap;
		white-space: normal;
	}

	.blf-member-library-card,
	.blf-member-utility-card {
		padding: 30px 26px;
	}

	.blf-member-account-section {
		padding-block: 72px;
	}

	.blf-member-account-card {
		padding: 32px 26px;
	}

	.blf-account-field-grid {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.blf-account-form-actions {
		align-items: flex-start;
		flex-direction: column;
	}

	.blf-final-cta,
	.blf-footer-cta {
		padding-block: 68px;
	}

	.blf-blog-hero,
	.blf-blog-index {
		padding-block: 68px;
	}

	.blf-blog-hero > .blf-shell > p:last-child,
	.blf-blog-hero .blf-search-intro {
		font-size: 18px;
	}

	.blf-blog-card-body,
	.blf-blog-empty {
		padding: 28px 24px;
	}

	.blf-search-form-row {
		grid-template-columns: 1fr;
	}
}

@media print {
	.blf-site-header,
	.blf-site-footer,
	.blf-footer-cta,
	.blf-strategy-final,
	.blf-member-resource-nav,
	.blf-member-resource-sidebar,
	.blf-local-tool-actions,
	.blf-public-tool-routes {
		display: none !important;
	}

	.blf-member-checklist,
	.blf-member-topic-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 12px !important;
		margin-block: 20px !important;
	}

	.blf-member-checklist-group,
	.blf-member-topic-grid article,
	.blf-local-tool-summary {
		break-inside: avoid;
		box-shadow: none !important;
	}

	.blf-local-tool-summary {
		margin: 16px 0 !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

/*
 * BOOK LAW FIRM header layout restoration.
 *
 * Keeps the approved navigation labels intact while restoring a single-line
 * desktop navigation. Medium-width screens use the existing mobile menu
 * instead of allowing individual navigation labels to wrap.
 */

@media (min-width: 1201px) {
	.blf-nav-inner {
		width: min(100% - 48px, 1280px);
		gap: 20px;
	}

	.blf-brand img {
		width: 230px;
	}

	.blf-primary-nav {
		min-width: 0;
		gap: 16px;
	}

	.blf-primary-nav ul {
		flex-wrap: nowrap;
		gap: 14px;
	}

	.blf-primary-nav li,
	.blf-primary-nav li a,
	.blf-primary-nav > .blf-button {
		flex: 0 0 auto;
		white-space: nowrap;
	}

	.blf-primary-nav li a {
		font-size: 14px;
		letter-spacing: 0.025em;
	}

	.blf-primary-nav > .blf-button-small {
		padding-inline: 14px;
		font-size: 12px;
		letter-spacing: 0.055em;
	}
}

@media (min-width: 961px) and (max-width: 1200px) {
	.blf-topbar p {
		display: none;
	}

	.blf-topbar-inner,
	.blf-topbar-actions {
		justify-content: center;
	}

	.blf-topbar-actions {
		width: 100%;
	}

	.blf-menu-toggle {
		display: inline-flex;
	}

	.blf-nav-inner {
		position: relative;
		min-height: 78px;
	}

	.blf-brand img {
		width: 210px;
	}

	.blf-primary-nav {
		position: absolute;
		top: 100%;
		right: -18px;
		left: -18px;
		display: none;
		align-items: stretch;
		padding: 24px;
		border-top: 1px solid rgba(201, 164, 75, 0.34);
		background: var(--blf-navy);
		box-shadow: 0 18px 30px rgba(0, 0, 0, 0.22);
	}

	.blf-primary-nav.is-open {
		display: flex;
		flex-direction: column;
	}

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

	.blf-primary-nav li a {
		display: block;
		padding: 11px 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	}
}

@media (min-width: 1320px) {
	.blf-topbar-inner {
		width: min(100% - 48px, 1280px);
		gap: 18px;
	}

	.blf-topbar-inner > p {
		font-size: 12px;
		white-space: nowrap;
	}

	.blf-topbar-actions {
		gap: 14px;
		white-space: nowrap;
	}

	.blf-utility-nav {
		gap: 12px;
		padding-right: 14px;
	}

	.blf-utility-nav a {
		font-size: 11px;
		white-space: nowrap;
	}

	.blf-topbar-contact {
		gap: 9px;
		white-space: nowrap;
	}

	.blf-topbar-contact a {
		font-size: 12px;
		white-space: nowrap;
	}
}

@media (min-width: 961px) and (max-width: 1319px) {
	.blf-topbar-inner > p {
		display: none;
	}

	.blf-topbar-inner,
	.blf-topbar-actions {
		justify-content: center;
	}
}

/* BOOK LAW FIRM article library directory */
.blf-blog-search {
	display: grid;
	max-width: 820px;
	margin: 34px 0 0;
	padding: 30px;
	border: 1px solid var(--blf-border);
	border-top: 4px solid var(--blf-gold);
	background: var(--blf-ivory);
}

.blf-blog-search > label {
	margin-bottom: 10px;
	color: var(--blf-navy);
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.blf-blog-search .blf-button-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 12px;
}

body.blf-2026 .blf-blog-search input[type="search"] {
	min-width: 0;
	min-height: 52px;
	padding: 12px 16px;
	border: 1px solid var(--blf-border);
	border-radius: 0;
	background: var(--blf-white);
	color: var(--blf-ink);
	font-size: 17px;
}

body.blf-2026 .blf-blog-search button {
	min-height: 52px;
	border: 1px solid var(--blf-gold);
	border-radius: 0;
	background: var(--blf-gold);
	color: var(--blf-navy);
	cursor: pointer;
}

body.blf-2026 .blf-blog-search button:hover,
body.blf-2026 .blf-blog-search button:focus-visible {
	background: var(--blf-gold-light);
}

.blf-blog-topic-nav {
	margin-top: 34px;
}

.blf-blog-topic-nav ul {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.blf-blog-topic-nav li {
	margin: 0;
}

body.blf-2026 .blf-blog-topic-nav a {
	display: flex;
	align-items: center;
	min-height: 100%;
	padding: 16px 18px;
	border: 1px solid var(--blf-border);
	border-left: 4px solid var(--blf-gold);
	background: var(--blf-white);
	color: var(--blf-navy);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.35;
	text-decoration: none;
}

body.blf-2026 .blf-blog-topic-nav a:hover,
body.blf-2026 .blf-blog-topic-nav a:focus-visible {
	background: var(--blf-ivory);
	text-decoration: underline;
	text-decoration-color: var(--blf-gold);
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
}

.blf-blog-index[id] {
	scroll-margin-top: 150px;
	border-top: 1px solid var(--blf-border);
}

.blf-blog-index[id] .blf-blog-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.blf-2026 .blf-blog-index[id] .blf-blog-card h3 {
	font-size: clamp(23px, 2.25vw, 30px);
}

@media (max-width: 1100px) {
	.blf-blog-topic-nav ul,
	.blf-blog-index[id] .blf-blog-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 680px) {
	.blf-blog-search {
		padding: 24px;
	}

	.blf-blog-search .blf-button-row,
	.blf-blog-topic-nav ul,
	.blf-blog-index[id] .blf-blog-grid {
		grid-template-columns: 1fr;
	}

	body.blf-2026 .blf-blog-search button {
		width: 100%;
	}
}
