/*
Theme Name:  Black Dollar & Culture
Description: Premium financial media child theme for Black Dollar & Culture News — Bloomberg-quality design in black, gold, and charcoal.
Author:      Black Dollar & Culture
Template:    hello-elementor
Version:     2.0.0
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 8.0
License:     GPL-2.0-or-later
Text Domain: bdc
*/

/* ============================================================
   DESIGN TOKENS
   ============================================================ */
:root {
	--bdc-gold:        #D4AF37;
	--bdc-gold-light:  #e8cc6a;
	--bdc-gold-dark:   #a8891f;
	--bdc-gold-bg:     rgba(212,175,55,.08);
	--bdc-gold-border: rgba(212,175,55,.25);
	--bdc-bg:          #0a0a0c;
	--bdc-bg-alt:      #0f0f12;
	--bdc-card:        #141418;
	--bdc-card-hover:  #1a1a1f;
	--bdc-border:      #252530;
	--bdc-border-light:#2e2e3a;
	--bdc-fg:          #f0f0f0;
	--bdc-fg-muted:    #9090a0;
	--bdc-fg-dim:      #606070;
	--bdc-green:       #22c55e;
	--bdc-red:         #ef4444;
	--bdc-font-serif:  'Playfair Display', Georgia, serif;
	--bdc-font-body:   'Plus Jakarta Sans', system-ui, sans-serif;
	--bdc-font-mono:   'JetBrains Mono', 'Courier New', monospace;
	--bdc-radius:      0;
	--bdc-shadow:      0 4px 24px rgba(0,0,0,.6);
	--bdc-shadow-gold: 0 0 24px rgba(212,175,55,.15);
	--bdc-nav-h:       70px;
	--bdc-max-w:       1280px;
	--bdc-transition:  .2s ease;
}

/* ============================================================
   RESET & BASE
   ============================================================ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }

body {
	font-family: var(--bdc-font-body);
	background: var(--bdc-bg);
	color: var(--bdc-fg);
	font-size: 1rem;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
}

img { max-width: 100%; height: auto; display: block; }

a { color: var(--bdc-gold); text-decoration: none; transition: color var(--bdc-transition); }
a:hover { color: var(--bdc-gold-light); }
a:focus-visible { outline: 2px solid var(--bdc-gold); outline-offset: 3px; }

h1,h2,h3,h4,h5,h6 {
	font-family: var(--bdc-font-serif);
	line-height: 1.2;
	color: var(--bdc-fg);
}

p { margin-bottom: 1rem; }
p:last-child { margin-bottom: 0; }

ul,ol { padding-left: 1.5rem; }

button {
	cursor: pointer;
	font-family: var(--bdc-font-body);
	border: none;
	background: none;
}

input, textarea, select {
	font-family: var(--bdc-font-body);
	font-size: 1rem;
}

/* ============================================================
   UTILITIES
   ============================================================ */
.bdc-wrap {
	max-width: var(--bdc-max-w);
	margin: 0 auto;
	padding: 0 1.5rem;
}

.bdc-section { position: relative; padding: 4rem 0; }
.bdc-section--alt { background: var(--bdc-bg-alt); }

.bdc-eyebrow {
	display: inline-block;
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--bdc-gold);
}

.bdc-section-header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin-bottom: 2rem;
	gap: 1rem;
	flex-wrap: wrap;
}

.bdc-section-heading {
	font-size: clamp(1.375rem, 3vw, 1.875rem);
	font-weight: 700;
}

.bdc-view-all {
	display: inline-flex;
	align-items: center;
	gap: .375rem;
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--bdc-gold);
	white-space: nowrap;
}

.bdc-view-all:hover { color: var(--bdc-gold-light); }

.bdc-badge {
	display: inline-block;
	padding: .2em .6em;
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	border: 1px solid;
}

.bdc-badge--gold { color: var(--bdc-gold); border-color: var(--bdc-gold-border); background: var(--bdc-gold-bg); }
.bdc-badge--cat  { color: var(--bdc-fg-muted); border-color: var(--bdc-border); background: transparent; }

.bdc-sr-only {
	position: absolute;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	white-space: nowrap;
	border: 0;
}

.up   { color: var(--bdc-green) !important; }
.down { color: var(--bdc-red)   !important; }

/* ============================================================
   GOOGLE FONTS IMPORT
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400&family=Plus+Jakarta+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;700&display=swap');

/* ============================================================
   BREAKING NEWS BAR
   ============================================================ */
.bdc-breaking {
	background: var(--bdc-gold);
	color: #000;
	height: 36px;
	display: flex;
	align-items: center;
	overflow: hidden;
	position: relative;
	z-index: 200;
}

.bdc-breaking__label {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	gap: .5rem;
	padding: 0 1rem 0 1.25rem;
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: #000;
	border-right: 1px solid rgba(0,0,0,.2);
	height: 100%;
}

.bdc-breaking__label .bdc-live-dot {
	width: 7px; height: 7px;
	background: #000;
	border-radius: 50%;
	animation: bdc-pulse 1.5s ease-in-out infinite;
}

.bdc-breaking__track-wrap { flex: 1; overflow: hidden; height: 100%; display: flex; align-items: center; }

.bdc-breaking__track {
	display: flex;
	align-items: center;
	gap: 3rem;
	white-space: nowrap;
	animation: bdc-scroll 30s linear infinite;
	font-size: .8125rem;
	font-weight: 600;
	color: #000;
}

.bdc-breaking__track:hover { animation-play-state: paused; }

.bdc-breaking__track a { color: #000; text-decoration: none; }
.bdc-breaking__track a:hover { text-decoration: underline; }

.bdc-breaking__sep {
	color: rgba(0,0,0,.4);
	font-size: .75rem;
	padding: 0 .5rem;
}

@keyframes bdc-scroll {
	0%   { transform: translateX(0); }
	100% { transform: translateX(-50%); }
}

@keyframes bdc-pulse {
	0%,100% { opacity: 1; transform: scale(1); }
	50%      { opacity: .4; transform: scale(.7); }
}

/* ============================================================
   NAVIGATION
   ============================================================ */
.bdc-nav {
	position: sticky;
	top: 0;
	z-index: 190;
	height: var(--bdc-nav-h);
	background: rgba(10,10,12,.95);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border-bottom: 1px solid var(--bdc-border);
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	padding: 0 1.5rem;
	gap: 1rem;
}

.bdc-nav__left {
	display: flex;
	align-items: center;
	gap: 1.5rem;
}

.bdc-nav__center { display: flex; justify-content: center; }

.bdc-nav__right {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 1rem;
}

.bdc-nav__logo {
	font-family: var(--bdc-font-serif);
	font-size: 1.125rem;
	font-weight: 900;
	color: var(--bdc-gold);
	letter-spacing: -.01em;
	white-space: nowrap;
	line-height: 1.1;
	text-align: center;
}

.bdc-nav__logo span { display: block; font-size: .5625rem; font-weight: 400; letter-spacing: .18em; text-transform: uppercase; color: var(--bdc-fg-muted); margin-top: .1rem; }

.bdc-nav__links {
	display: flex;
	align-items: center;
	gap: 1.25rem;
	list-style: none;
	padding: 0;
	margin: 0;
}

.bdc-nav__links a {
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--bdc-fg-muted);
	transition: color var(--bdc-transition);
}

.bdc-nav__links a:hover,
.bdc-nav__links .current-menu-item > a { color: var(--bdc-fg); }

.bdc-nav__actions { display: flex; align-items: center; gap: .75rem; }

.bdc-nav__search-btn {
	background: none; border: none; padding: .25rem;
	color: var(--bdc-fg-muted); cursor: pointer;
	transition: color var(--bdc-transition);
}
.bdc-nav__search-btn:hover { color: var(--bdc-fg); }

.bdc-nav__subscribe {
	display: inline-block;
	padding: .45rem 1rem;
	background: var(--bdc-gold);
	color: #000;
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	transition: background var(--bdc-transition);
	white-space: nowrap;
}
.bdc-nav__subscribe:hover { background: var(--bdc-gold-light); color: #000; }

.bdc-nav__toggle {
	display: none;
	background: none;
	border: none;
	color: var(--bdc-fg);
	padding: .25rem;
}

/* Mobile nav */
@media (max-width: 900px) {
	.bdc-nav {
		grid-template-columns: auto 1fr auto;
	}
	.bdc-nav__left { display: none; }
	.bdc-nav__center { justify-content: flex-start; }
	.bdc-nav__toggle { display: flex; }
	.bdc-nav__actions .bdc-nav__subscribe { display: none; }

	.bdc-mobile-menu {
		display: none;
		position: fixed;
		top: var(--bdc-nav-h);
		left: 0; right: 0;
		background: rgba(10,10,12,.98);
		border-bottom: 1px solid var(--bdc-border);
		padding: 1.5rem;
		z-index: 180;
		flex-direction: column;
		gap: 1rem;
	}
	.bdc-mobile-menu.open { display: flex; }
	.bdc-mobile-menu a {
		font-size: .875rem;
		font-weight: 600;
		letter-spacing: .08em;
		text-transform: uppercase;
		color: var(--bdc-fg-muted);
		padding: .5rem 0;
		border-bottom: 1px solid var(--bdc-border);
	}
	.bdc-mobile-menu a:hover { color: var(--bdc-fg); }
}

@media (max-width: 600px) {
	.bdc-nav { padding: 0 1rem; }
}

/* Search overlay */
.bdc-search-overlay {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(0,0,0,.9);
	z-index: 300;
	align-items: center;
	justify-content: center;
	padding: 2rem;
}
.bdc-search-overlay.open { display: flex; }
.bdc-search-overlay form { width: 100%; max-width: 640px; display: flex; gap: .75rem; }
.bdc-search-overlay input {
	flex: 1;
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	color: var(--bdc-fg);
	padding: 1rem 1.25rem;
	font-size: 1.125rem;
}
.bdc-search-overlay button {
	background: var(--bdc-gold);
	color: #000;
	padding: 1rem 1.5rem;
	font-weight: 700;
}
.bdc-search-close {
	position: absolute;
	top: 1.5rem; right: 1.5rem;
	background: none; border: none;
	color: var(--bdc-fg-muted);
	font-size: 1.5rem;
	cursor: pointer;
}

/* ============================================================
   HERO SLIDER
   ============================================================ */
.bdc-hero {
	position: relative;
	background: var(--bdc-bg);
	overflow: hidden;
}

.bdc-hero__slide {
	display: none;
	position: relative;
}
.bdc-hero__slide.active { display: block; }

.bdc-hero__slide-inner {
	display: grid;
	grid-template-columns: 1fr 360px;
	min-height: 540px;
}

.bdc-hero__image-col { position: relative; overflow: hidden; }

.bdc-hero__image-col img {
	width: 100%; height: 100%;
	object-fit: cover;
	transition: transform .6s ease;
}
.bdc-hero__slide:hover .bdc-hero__image-col img { transform: scale(1.03); }

.bdc-hero__image-overlay {
	position: absolute; inset: 0;
	background: linear-gradient(to right, transparent 60%, var(--bdc-bg));
}

.bdc-hero__content-col {
	background: var(--bdc-card);
	border-left: 1px solid var(--bdc-border);
	padding: 2.5rem 2rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 1rem;
}

.bdc-hero__meta { display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; }

.bdc-hero__cat {
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--bdc-gold);
	background: var(--bdc-gold-bg);
	border: 1px solid var(--bdc-gold-border);
	padding: .2em .6em;
}

.bdc-hero__read-time {
	font-family: var(--bdc-font-mono);
	font-size: .625rem;
	color: var(--bdc-fg-muted);
}

.bdc-hero__title {
	font-size: clamp(1.375rem, 3vw, 2rem);
	font-weight: 700;
	line-height: 1.2;
}
.bdc-hero__title a { color: var(--bdc-fg); }
.bdc-hero__title a:hover { color: var(--bdc-gold); }

.bdc-hero__excerpt {
	font-size: .9375rem;
	color: var(--bdc-fg-muted);
	line-height: 1.65;
}

.bdc-hero__cta {
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	background: var(--bdc-gold);
	color: #000;
	padding: .75rem 1.5rem;
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	align-self: flex-start;
	transition: background var(--bdc-transition);
}
.bdc-hero__cta:hover { background: var(--bdc-gold-light); color: #000; }

/* Slider controls */
.bdc-hero__controls {
	position: absolute;
	bottom: 1.5rem;
	left: 1.5rem;
	display: flex;
	align-items: center;
	gap: .75rem;
	z-index: 10;
}

.bdc-hero__arrow {
	width: 36px; height: 36px;
	display: flex; align-items: center; justify-content: center;
	background: rgba(0,0,0,.6);
	border: 1px solid var(--bdc-border);
	color: var(--bdc-fg);
	cursor: pointer;
	transition: background var(--bdc-transition);
}
.bdc-hero__arrow:hover { background: var(--bdc-gold); color: #000; }

.bdc-hero__dots { display: flex; gap: .375rem; align-items: center; }

.bdc-hero__dot {
	width: 6px; height: 6px;
	background: var(--bdc-fg-muted);
	cursor: pointer;
	transition: background var(--bdc-transition), transform var(--bdc-transition);
}
.bdc-hero__dot.active {
	background: var(--bdc-gold);
	transform: scale(1.5);
}

@media (max-width: 900px) {
	.bdc-hero__slide-inner { grid-template-columns: 1fr; }
	.bdc-hero__image-col { height: 280px; }
	.bdc-hero__image-overlay { background: linear-gradient(to bottom, transparent 40%, var(--bdc-bg)); }
}

/* ============================================================
   MARKET TICKER (below nav)
   ============================================================ */
.bdc-ticker {
	background: var(--bdc-bg-alt);
	border-bottom: 1px solid var(--bdc-border);
	height: 44px;
	display: flex;
	align-items: center;
	overflow: hidden;
}

.bdc-ticker__label {
	flex-shrink: 0;
	padding: 0 1rem;
	font-family: var(--bdc-font-mono);
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--bdc-gold);
	border-right: 1px solid var(--bdc-border);
	height: 100%;
	display: flex; align-items: center;
}

.bdc-ticker__wrap { flex: 1; overflow: hidden; }

.bdc-ticker__track {
	display: flex;
	gap: 2.5rem;
	animation: bdc-ticker-scroll 40s linear infinite;
	width: max-content;
}
.bdc-ticker__track:hover { animation-play-state: paused; }

.bdc-ticker__item {
	display: flex;
	align-items: center;
	gap: .5rem;
	font-family: var(--bdc-font-mono);
	font-size: .75rem;
	white-space: nowrap;
}

.bdc-ticker__sym { font-weight: 700; color: var(--bdc-fg); }
.bdc-ticker__price { color: var(--bdc-fg-muted); }
.bdc-ticker__change { font-size: .6875rem; }

@keyframes bdc-ticker-scroll {
	0%   { transform: translateX(0); }
	100% { transform: translateX(-50%); }
}

@keyframes bdc-flash-up {
	0%   { background: rgba(34,197,94,.25); }
	100% { background: transparent; }
}
@keyframes bdc-flash-down {
	0%   { background: rgba(239,68,68,.25); }
	100% { background: transparent; }
}
.bdc-ticker__item.flash-up   { animation: bdc-flash-up   .8s ease; }
.bdc-ticker__item.flash-down { animation: bdc-flash-down .8s ease; }

/* ============================================================
   TRENDING SECTION
   ============================================================ */
.bdc-trending { padding: 3rem 0; background: var(--bdc-bg-alt); }

.bdc-trending__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 1px;
	border: 1px solid var(--bdc-border);
}

.bdc-trending__card {
	background: var(--bdc-card);
	padding: 1.5rem;
	border: none;
	transition: background var(--bdc-transition);
	display: flex;
	flex-direction: column;
	gap: .75rem;
}
.bdc-trending__card:hover { background: var(--bdc-card-hover); }

.bdc-trending__card-icon {
	width: 40px; height: 40px;
	display: flex; align-items: center; justify-content: center;
	background: var(--bdc-gold-bg);
	border: 1px solid var(--bdc-gold-border);
	color: var(--bdc-gold);
	flex-shrink: 0;
}
.bdc-trending__card-icon svg { width: 18px; height: 18px; }

.bdc-trending__card-label {
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--bdc-gold);
}

.bdc-trending__card-title {
	font-family: var(--bdc-font-serif);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--bdc-fg);
}

.bdc-trending__card-excerpt {
	font-size: .8125rem;
	color: var(--bdc-fg-muted);
	line-height: 1.55;
}

/* ============================================================
   MARKET SNAPSHOT
   ============================================================ */
.bdc-markets { padding: 3rem 0; }

.bdc-markets__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 1px;
	background: var(--bdc-border);
	border: 1px solid var(--bdc-border);
}

.bdc-markets__card {
	background: var(--bdc-card);
	padding: 1.25rem 1.5rem;
	display: flex;
	flex-direction: column;
	gap: .375rem;
}

.bdc-markets__card-label {
	font-family: var(--bdc-font-mono);
	font-size: .6875rem;
	font-weight: 700;
	color: var(--bdc-fg-muted);
	text-transform: uppercase;
	letter-spacing: .08em;
}

.bdc-markets__card-price {
	font-family: var(--bdc-font-mono);
	font-size: 1.375rem;
	font-weight: 700;
	color: var(--bdc-fg);
}

.bdc-markets__card-change {
	font-family: var(--bdc-font-mono);
	font-size: .75rem;
	display: flex;
	align-items: center;
	gap: .25rem;
}

.bdc-markets__gauge {
	background: var(--bdc-card);
	padding: 1.5rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: .5rem;
	grid-column: span 2;
}
.bdc-markets__gauge-label {
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--bdc-fg-muted);
}
.bdc-markets__gauge-value {
	font-family: var(--bdc-font-mono);
	font-size: 2rem;
	font-weight: 700;
	color: var(--bdc-green);
}
.bdc-markets__gauge-name {
	font-size: .875rem;
	font-weight: 700;
	color: var(--bdc-green);
}
.bdc-markets__sample-badge {
	font-family: var(--bdc-font-mono);
	font-size: .5625rem;
	font-weight: 700;
	letter-spacing: .1em;
	color: var(--bdc-fg-dim);
	text-transform: uppercase;
	margin-top: .25rem;
}

/* ============================================================
   LATEST STORIES (article grid)
   ============================================================ */
.bdc-stories { padding: 4rem 0; }

.bdc-stories__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
}

@media (max-width: 900px) { .bdc-stories__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .bdc-stories__grid { grid-template-columns: 1fr; } }

.bdc-post-card {
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	display: flex;
	flex-direction: column;
	transition: border-color var(--bdc-transition), box-shadow var(--bdc-transition);
}
.bdc-post-card:hover {
	border-color: var(--bdc-gold-border);
	box-shadow: var(--bdc-shadow-gold);
}

.bdc-post-card__thumb {
	position: relative;
	overflow: hidden;
	aspect-ratio: 16/9;
}
.bdc-post-card__thumb img {
	width: 100%; height: 100%;
	object-fit: cover;
	transition: transform .4s ease;
}
.bdc-post-card:hover .bdc-post-card__thumb img { transform: scale(1.04); }

.bdc-post-card__thumb-placeholder {
	width: 100%; height: 100%;
	background: var(--bdc-bg-alt);
	display: flex; align-items: center; justify-content: center;
}
.bdc-post-card__thumb-placeholder svg { width: 40px; height: 40px; color: var(--bdc-border); }

.bdc-post-card__body { padding: 1.25rem; flex: 1; display: flex; flex-direction: column; gap: .625rem; }

.bdc-post-card__meta { display: flex; align-items: center; gap: .625rem; flex-wrap: wrap; }

.bdc-post-card__cat {
	font-size: .5625rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--bdc-gold);
}

.bdc-post-card__time {
	font-family: var(--bdc-font-mono);
	font-size: .5625rem;
	color: var(--bdc-fg-muted);
}

.bdc-post-card__title {
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.3;
	flex: 1;
}
.bdc-post-card__title a { color: var(--bdc-fg); }
.bdc-post-card__title a:hover { color: var(--bdc-gold); }

.bdc-post-card__excerpt {
	font-size: .875rem;
	color: var(--bdc-fg-muted);
	line-height: 1.55;
}

.bdc-post-card__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: .75rem 1.25rem;
	border-top: 1px solid var(--bdc-border);
	font-size: .75rem;
	color: var(--bdc-fg-muted);
}

/* Load More */
.bdc-load-more {
	text-align: center;
	margin-top: 2.5rem;
}
.bdc-load-more button {
	background: transparent;
	border: 1px solid var(--bdc-border);
	color: var(--bdc-fg);
	padding: .875rem 2.5rem;
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	transition: border-color var(--bdc-transition), color var(--bdc-transition);
}
.bdc-load-more button:hover { border-color: var(--bdc-gold); color: var(--bdc-gold); }

/* ============================================================
   BLACK HISTORY SECTION
   ============================================================ */
.bdc-history { padding: 4rem 0; background: var(--bdc-bg-alt); }

.bdc-history__featured {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0;
	border: 1px solid var(--bdc-border);
	margin-bottom: 2rem;
}

.bdc-history__featured-image {
	position: relative;
	overflow: hidden;
	min-height: 320px;
}
.bdc-history__featured-image img {
	width: 100%; height: 100%;
	object-fit: cover;
}
.bdc-history__featured-image-overlay {
	position: absolute; inset: 0;
	background: linear-gradient(to right, transparent, var(--bdc-bg-alt));
}

.bdc-history__featured-content {
	background: var(--bdc-card);
	padding: 2.5rem 2rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 1rem;
	border-left: 1px solid var(--bdc-gold-border);
}

.bdc-history__year {
	font-family: var(--bdc-font-mono);
	font-size: 3rem;
	font-weight: 700;
	color: var(--bdc-gold);
	line-height: 1;
}

.bdc-history__featured-title {
	font-size: clamp(1.125rem, 2.5vw, 1.5rem);
	font-weight: 700;
}

.bdc-history__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1px;
	background: var(--bdc-border);
	border: 1px solid var(--bdc-border);
}

.bdc-history__card {
	background: var(--bdc-card);
	padding: 1.5rem;
	transition: background var(--bdc-transition);
}
.bdc-history__card:hover { background: var(--bdc-card-hover); }

.bdc-history__card-year {
	font-family: var(--bdc-font-mono);
	font-size: .75rem;
	color: var(--bdc-gold);
	font-weight: 700;
	margin-bottom: .5rem;
}

.bdc-history__card-title {
	font-size: .9375rem;
	font-weight: 700;
	line-height: 1.3;
}
.bdc-history__card-title a { color: var(--bdc-fg); }
.bdc-history__card-title a:hover { color: var(--bdc-gold); }

@media (max-width: 900px) {
	.bdc-history__featured { grid-template-columns: 1fr; }
	.bdc-history__featured-image { min-height: 220px; }
	.bdc-history__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) { .bdc-history__grid { grid-template-columns: 1fr; } }

/* ============================================================
   CATEGORY SECTION (Investing / Real Estate / Entrepreneurship)
   ============================================================ */
.bdc-cat-section { padding: 4rem 0; }

.bdc-cat-section__grid {
	display: grid;
	grid-template-columns: 2fr 1fr 1fr;
	gap: 1.5rem;
}

@media (max-width: 900px) { .bdc-cat-section__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .bdc-cat-section__grid { grid-template-columns: 1fr; } }

/* ============================================================
   VIDEOS
   ============================================================ */
.bdc-videos { padding: 4rem 0; background: var(--bdc-bg-alt); }

.bdc-videos__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 1.5rem;
}

.bdc-video-card {
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	transition: border-color var(--bdc-transition);
}
.bdc-video-card:hover { border-color: var(--bdc-gold-border); }

.bdc-video-card__thumb {
	position: relative;
	aspect-ratio: 16/9;
	overflow: hidden;
	background: var(--bdc-bg);
}
.bdc-video-card__thumb img { width: 100%; height: 100%; object-fit: cover; }

.bdc-video-card__play {
	position: absolute; inset: 0;
	display: flex; align-items: center; justify-content: center;
	background: rgba(0,0,0,.4);
	transition: background var(--bdc-transition);
}
.bdc-video-card:hover .bdc-video-card__play { background: rgba(0,0,0,.6); }

.bdc-video-card__play-icon {
	width: 48px; height: 48px;
	background: var(--bdc-gold);
	border-radius: 50%;
	display: flex; align-items: center; justify-content: center;
	transition: transform var(--bdc-transition);
}
.bdc-video-card:hover .bdc-video-card__play-icon { transform: scale(1.1); }
.bdc-video-card__play-icon svg { width: 18px; height: 18px; color: #000; margin-left: 3px; }

.bdc-video-card__duration {
	position: absolute;
	bottom: .5rem; right: .5rem;
	background: rgba(0,0,0,.85);
	font-family: var(--bdc-font-mono);
	font-size: .6875rem;
	font-weight: 700;
	padding: .15em .5em;
	color: var(--bdc-fg);
}

.bdc-video-card__body { padding: 1rem; }

.bdc-video-card__cat {
	font-size: .5625rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--bdc-gold);
	margin-bottom: .375rem;
}

.bdc-video-card__title {
	font-size: .9375rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--bdc-fg);
}

/* ============================================================
   FREE GUIDES / EBOOKS
   ============================================================ */
.bdc-guides { padding: 4rem 0; }

.bdc-guides__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 1.5rem;
}

.bdc-guide-card {
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	display: flex;
	flex-direction: column;
	transition: border-color var(--bdc-transition), box-shadow var(--bdc-transition);
}
.bdc-guide-card:hover {
	border-color: var(--bdc-gold-border);
	box-shadow: var(--bdc-shadow-gold);
}

.bdc-guide-card__cover {
	position: relative;
	aspect-ratio: 3/4;
	overflow: hidden;
	background: var(--bdc-bg-alt);
}
.bdc-guide-card__cover img { width: 100%; height: 100%; object-fit: cover; }

.bdc-guide-card__badge {
	position: absolute;
	top: .75rem; right: .75rem;
	background: var(--bdc-gold);
	color: #000;
	font-size: .5625rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	padding: .2em .6em;
}

.bdc-guide-card__body { padding: 1rem; flex: 1; display: flex; flex-direction: column; gap: .5rem; }

.bdc-guide-card__title {
	font-size: .9375rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--bdc-fg);
}

.bdc-guide-card__sub {
	font-size: .8125rem;
	color: var(--bdc-fg-muted);
}

.bdc-guide-card__cta {
	display: inline-flex;
	align-items: center;
	gap: .375rem;
	margin-top: auto;
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--bdc-gold);
}

/* ============================================================
   NEWSLETTER
   ============================================================ */
.bdc-newsletter {
	padding: 5rem 0;
	background: var(--bdc-gold);
	position: relative;
	overflow: hidden;
}

.bdc-newsletter::before {
	content: '';
	position: absolute; inset: 0;
	background-image: repeating-linear-gradient(
		0deg,
		rgba(0,0,0,.06) 0px, rgba(0,0,0,.06) 1px,
		transparent 1px, transparent 40px
	),
	repeating-linear-gradient(
		90deg,
		rgba(0,0,0,.06) 0px, rgba(0,0,0,.06) 1px,
		transparent 1px, transparent 40px
	);
	pointer-events: none;
}

.bdc-newsletter__inner {
	position: relative;
	max-width: 640px;
	margin: 0 auto;
	padding: 0 1.5rem;
	text-align: center;
}

.bdc-newsletter__eyebrow {
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: rgba(0,0,0,.6);
	margin-bottom: .75rem;
}

.bdc-newsletter__heading {
	font-family: var(--bdc-font-serif);
	font-size: clamp(1.75rem, 4vw, 2.5rem);
	font-weight: 900;
	color: #000;
	line-height: 1.15;
	margin-bottom: 1rem;
}

.bdc-newsletter__sub {
	font-size: 1rem;
	color: rgba(0,0,0,.7);
	margin-bottom: 2rem;
	line-height: 1.65;
}

.bdc-newsletter__form { display: flex; gap: .75rem; max-width: 480px; margin: 0 auto; }

.bdc-newsletter__input {
	flex: 1;
	background: rgba(0,0,0,.12);
	border: 1px solid rgba(0,0,0,.2);
	color: #000;
	padding: .875rem 1.25rem;
	font-size: .9375rem;
	outline: none;
}
.bdc-newsletter__input::placeholder { color: rgba(0,0,0,.5); }
.bdc-newsletter__input:focus { border-color: rgba(0,0,0,.5); }

.bdc-newsletter__btn {
	background: #000;
	color: var(--bdc-gold);
	padding: .875rem 1.5rem;
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	white-space: nowrap;
	transition: background var(--bdc-transition);
	border: none;
	cursor: pointer;
}
.bdc-newsletter__btn:hover { background: #1a1a1a; }

.bdc-newsletter__disclaimer {
	margin-top: 1.25rem;
	font-size: .75rem;
	color: rgba(0,0,0,.55);
}

.bdc-newsletter__success {
	display: none;
	flex-direction: column;
	align-items: center;
	gap: .75rem;
}
.bdc-newsletter__success-title {
	font-family: var(--bdc-font-serif);
	font-size: 1.5rem;
	font-weight: 700;
	color: #000;
}
.bdc-newsletter__success-text { color: rgba(0,0,0,.7); }

@media (max-width: 600px) {
	.bdc-newsletter__form { flex-direction: column; }
	.bdc-newsletter__btn { width: 100%; }
}

/* ============================================================
   FOOTER
   ============================================================ */
.bdc-footer {
	background: #000;
	border-top: 1px solid var(--bdc-border);
	padding: 4rem 0 0;
}

.bdc-footer__grid {
	display: grid;
	grid-template-columns: 1.5fr 1fr 1fr 1fr;
	gap: 3rem;
	padding-bottom: 3rem;
	border-bottom: 1px solid var(--bdc-border);
}

.bdc-footer__brand-name {
	font-family: var(--bdc-font-serif);
	font-size: 1.25rem;
	font-weight: 900;
	color: var(--bdc-gold);
	margin-bottom: .5rem;
}

.bdc-footer__brand-tagline {
	font-size: .875rem;
	color: var(--bdc-fg-muted);
	margin-bottom: 1.25rem;
	line-height: 1.65;
}

.bdc-footer__socials {
	display: flex;
	gap: .625rem;
	flex-wrap: wrap;
}

.bdc-footer__social {
	width: 36px; height: 36px;
	display: flex; align-items: center; justify-content: center;
	border: 1px solid var(--bdc-border);
	color: var(--bdc-fg-muted);
	transition: border-color var(--bdc-transition), color var(--bdc-transition);
}
.bdc-footer__social:hover { border-color: var(--bdc-gold); color: var(--bdc-gold); }
.bdc-footer__social svg { width: 16px; height: 16px; }

.bdc-footer__col-heading {
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--bdc-fg-muted);
	margin-bottom: 1rem;
	padding-bottom: .75rem;
	border-bottom: 1px solid var(--bdc-border);
}

.bdc-footer__links {
	list-style: none;
	padding: 0; margin: 0;
	display: flex;
	flex-direction: column;
	gap: .625rem;
}

.bdc-footer__links a {
	font-size: .875rem;
	color: var(--bdc-fg-muted);
	transition: color var(--bdc-transition);
}
.bdc-footer__links a:hover { color: var(--bdc-gold); }

.bdc-footer__bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 1.5rem 0;
	flex-wrap: wrap;
	gap: .75rem;
}

.bdc-footer__copy {
	font-size: .8125rem;
	color: var(--bdc-fg-dim);
}

.bdc-footer__policies {
	display: flex;
	gap: 1.25rem;
}
.bdc-footer__policies a {
	font-size: .8125rem;
	color: var(--bdc-fg-dim);
}
.bdc-footer__policies a:hover { color: var(--bdc-gold); }

@media (max-width: 900px) { .bdc-footer__grid { grid-template-columns: 1fr 1fr; gap: 2rem; } }
@media (max-width: 600px) { .bdc-footer__grid { grid-template-columns: 1fr; } }

/* ============================================================
   SINGLE POST
   ============================================================ */
.bdc-single { padding: 3rem 0; }

.bdc-single__container {
	display: grid;
	grid-template-columns: 1fr 300px;
	gap: 3rem;
	max-width: var(--bdc-max-w);
	margin: 0 auto;
	padding: 0 1.5rem;
}

.bdc-single__header { margin-bottom: 2rem; }

.bdc-single__cat-bar { display: flex; align-items: center; gap: .75rem; margin-bottom: 1rem; }

.bdc-single__title {
	font-size: clamp(1.75rem, 4vw, 2.75rem);
	font-weight: 900;
	line-height: 1.15;
	margin-bottom: 1rem;
}

.bdc-single__excerpt {
	font-size: 1.125rem;
	color: var(--bdc-fg-muted);
	line-height: 1.65;
	margin-bottom: 1.5rem;
}

.bdc-single__byline {
	display: flex;
	align-items: center;
	gap: 1rem;
	padding: 1rem 0;
	border-top: 1px solid var(--bdc-border);
	border-bottom: 1px solid var(--bdc-border);
}

.bdc-single__author-name { font-weight: 700; font-size: .875rem; }
.bdc-single__meta { font-size: .8125rem; color: var(--bdc-fg-muted); }

.bdc-single__hero-img {
	width: 100%;
	aspect-ratio: 16/9;
	object-fit: cover;
	margin-bottom: 2rem;
}

.bdc-single__content {
	font-size: 1.0625rem;
	line-height: 1.8;
	color: rgba(240,240,240,.9);
}
.bdc-single__content h2 { font-size: 1.5rem; margin: 2rem 0 .75rem; color: var(--bdc-fg); }
.bdc-single__content h3 { font-size: 1.25rem; margin: 1.75rem 0 .5rem; color: var(--bdc-fg); }
.bdc-single__content p { margin-bottom: 1.25rem; }
.bdc-single__content a { color: var(--bdc-gold); }
.bdc-single__content blockquote {
	border-left: 3px solid var(--bdc-gold);
	margin: 2rem 0;
	padding: 1rem 1.5rem;
	background: var(--bdc-gold-bg);
	font-family: var(--bdc-font-serif);
	font-size: 1.125rem;
	font-style: italic;
}

@media (max-width: 900px) {
	.bdc-single__container { grid-template-columns: 1fr; }
}

/* ============================================================
   SIDEBAR
   ============================================================ */
.bdc-sidebar { padding-top: .5rem; }

.widget {
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	padding: 1.5rem;
	margin-bottom: 1.5rem;
}

.widget-title {
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--bdc-gold);
	margin-bottom: 1rem;
	padding-bottom: .75rem;
	border-bottom: 1px solid var(--bdc-border);
}

/* ============================================================
   ARCHIVE / CATEGORY
   ============================================================ */
.bdc-archive { padding: 3rem 0; }
.bdc-archive__header { margin-bottom: 2.5rem; }
.bdc-archive__title { font-size: clamp(1.5rem, 3vw, 2.25rem); }

/* ============================================================
   SEARCH PAGE
   ============================================================ */
.bdc-search { padding: 3rem 0; }
.bdc-search__header { margin-bottom: 2.5rem; }
.bdc-search-form { display: flex; gap: .75rem; max-width: 480px; margin-bottom: 2.5rem; }
.bdc-search-form input {
	flex: 1;
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	color: var(--bdc-fg);
	padding: .875rem 1.25rem;
	font-size: 1rem;
}
.bdc-search-form button {
	background: var(--bdc-gold);
	color: #000;
	padding: .875rem 1.5rem;
	font-weight: 700;
}

/* ============================================================
   404 PAGE
   ============================================================ */
.bdc-404 {
	min-height: 60vh;
	display: flex; align-items: center; justify-content: center;
	text-align: center;
	padding: 4rem 1.5rem;
}
.bdc-404__code {
	font-family: var(--bdc-font-serif);
	font-size: clamp(6rem, 20vw, 12rem);
	font-weight: 900;
	color: var(--bdc-gold);
	line-height: 1;
	opacity: .3;
}
.bdc-404__title { font-size: clamp(1.5rem, 4vw, 2.5rem); margin: 1rem 0; }
.bdc-404__text { color: var(--bdc-fg-muted); margin-bottom: 2rem; }
.bdc-404__cta {
	display: inline-block;
	background: var(--bdc-gold);
	color: #000;
	padding: .875rem 2rem;
	font-weight: 700;
	font-size: .875rem;
}

/* ============================================================
   PAGINATION
   ============================================================ */
.bdc-pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: .375rem;
	margin-top: 3rem;
}

.bdc-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px; height: 38px;
	border: 1px solid var(--bdc-border);
	font-size: .875rem;
	color: var(--bdc-fg-muted);
	transition: all var(--bdc-transition);
}
.bdc-pagination .page-numbers:hover,
.bdc-pagination .page-numbers.current {
	background: var(--bdc-gold);
	border-color: var(--bdc-gold);
	color: #000;
}

/* ============================================================
   BREADCRUMBS
   ============================================================ */
.bdc-breadcrumb {
	padding: 1rem 0;
	font-size: .8125rem;
	color: var(--bdc-fg-muted);
	border-bottom: 1px solid var(--bdc-border);
	margin-bottom: 2rem;
}
.bdc-breadcrumb a { color: var(--bdc-fg-muted); }
.bdc-breadcrumb a:hover { color: var(--bdc-gold); }
.bdc-breadcrumb span { margin: 0 .5rem; color: var(--bdc-fg-dim); }

/* ============================================================
   PROGRESS BAR (reading)
   ============================================================ */
.bdc-progress {
	position: fixed;
	top: 0; left: 0;
	height: 3px;
	background: var(--bdc-gold);
	width: 0%;
	z-index: 9999;
	transition: width .1s linear;
}

/* ============================================================
   RESPONSIVE UTILITIES
   ============================================================ */
@media (max-width: 600px) {
	.bdc-section { padding: 2.5rem 0; }
	.bdc-section-header { flex-direction: column; align-items: flex-start; }
}

/* ============================================================
   PRINT
   ============================================================ */
@media print {
	.bdc-breaking, .bdc-nav, .bdc-ticker, .bdc-footer,
	.bdc-newsletter { display: none; }
	body { background: #fff; color: #000; }
}



/* ── Hero placeholder (shown when post has no featured image) ── */
.bdc-hero__placeholder {
	width: 100%;
	height: 100%;
	min-height: 540px;
	background: var(--bdc-card);
	display: flex;
	align-items: center;
	justify-content: center;
}
.bdc-hero__placeholder-text {
	font-family: var(--bdc-font-serif);
	font-size: 5rem;
	font-weight: 900;
	color: rgba(255,255,255,.04);
	user-select: none;
}

/* ── Hero byline row ── */
.bdc-hero__byline {
	display: flex;
	align-items: center;
	gap: .75rem;
	font-size: .8125rem;
	color: var(--bdc-fg-muted);
	padding-top: 1rem;
	border-top: 1px solid var(--bdc-border);
}
.bdc-hero__byline-sep { color: var(--bdc-border); }

/* ── Guarantee non-active slides are hidden even before CSS parses ─────────
   The inline style=display:none on each non-active slide already handles
   this, but the CSS rule ensures JS-driven transitions work correctly when
   the slider activates/deactivates slides.
   ──────────────────────────────────────────────────────────────────────── */
.bdc-hero__slide            { display: none; }
.bdc-hero__slide.active     { display: block; }

/* ============================================================
   HOMEPAGE WRAPPER
   Applied to <main class="bdc-homepage"> in front-page.php and home.php.
   Each section handles its own internal spacing.
   ============================================================ */
.bdc-homepage {
	display: block;
	width: 100%;
	min-height: 100vh;
	background: var(--bdc-bg);
}

/* Safety: suppress any featured image that leaks onto the homepage */
.bdc-homepage .wp-post-image,
.bdc-homepage .attachment-bdc-hero,
.bdc-homepage .attachment-full,
.bdc-homepage img.wp-post-image {
	display: none !important;
}

/* ============================================================
   AUTHOR PAGE
   ============================================================ */
.bdc-author { padding: 3rem 0; }

.bdc-author__header {
	display: flex;
	gap: 2rem;
	align-items: flex-start;
	padding: 2.5rem;
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	margin-bottom: 2.5rem;
}

.bdc-author__avatar-img {
	width: 120px;
	height: 120px;
	border-radius: 50%;
	object-fit: cover;
	border: 3px solid var(--bdc-gold);
	flex-shrink: 0;
}

.bdc-author__name {
	font-size: clamp(1.5rem, 3vw, 2rem);
	margin: .25rem 0 .75rem;
}

.bdc-author__bio {
	color: var(--bdc-fg-muted);
	font-size: .9375rem;
	line-height: 1.65;
	max-width: 56ch;
	margin-bottom: 1rem;
}

.bdc-author__links {
	display: flex;
	align-items: center;
	gap: 1.25rem;
	flex-wrap: wrap;
}

.bdc-author__count {
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--bdc-fg-muted);
	border: 1px solid var(--bdc-border);
	padding: .25em .75em;
}

.bdc-author__social-link {
	display: inline-flex;
	align-items: center;
	gap: .375rem;
	font-size: .8125rem;
	font-weight: 600;
	color: var(--bdc-gold);
}

.bdc-author__divider { height: 1px; background: var(--bdc-border); margin-bottom: 1.75rem; }

.bdc-author__articles-heading {
	font-size: 1.25rem;
	margin-bottom: 1.5rem;
}

@media (max-width: 640px) {
	.bdc-author__header { flex-direction: column; }
	.bdc-author__avatar-img { width: 80px; height: 80px; }
}

/* ============================================================
   TAG ARCHIVE
   ============================================================ */
.bdc-archive__desc {
	color: var(--bdc-fg-muted);
	font-size: .9375rem;
	margin-top: .5rem;
	max-width: 56ch;
}
.bdc-archive__count {
	font-size: .8125rem;
	color: var(--bdc-fg-dim);
	margin-top: .25rem;
}

/* ============================================================
   COMMENTS
   ============================================================ */
.bdc-comments {
	margin-top: 3rem;
	padding-top: 2.5rem;
	border-top: 1px solid var(--bdc-border);
}

.bdc-comments__title {
	font-size: 1.25rem;
	margin-bottom: 1.75rem;
	color: var(--bdc-fg);
}

.bdc-comment-list {
	list-style: none;
	padding: 0;
	margin-bottom: 2.5rem;
}

.bdc-comment {
	margin-bottom: 1.5rem;
}

.bdc-comment--depth-2 { padding-left: 2.5rem; }
.bdc-comment--depth-3 { padding-left: 5rem; }

.bdc-comment__body {
	display: flex;
	gap: 1rem;
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	padding: 1.25rem;
}

.bdc-comment__avatar-img {
	border-radius: 50%;
	width: 48px;
	height: 48px;
	flex-shrink: 0;
}

.bdc-comment__content { flex: 1; min-width: 0; }

.bdc-comment__header {
	display: flex;
	align-items: baseline;
	gap: .75rem;
	margin-bottom: .5rem;
	flex-wrap: wrap;
}

.bdc-comment__author {
	font-weight: 700;
	font-size: .875rem;
	color: var(--bdc-fg);
}

.bdc-comment__date {
	font-size: .75rem;
	color: var(--bdc-fg-muted);
}

.bdc-comment__text { font-size: .9375rem; line-height: 1.65; color: rgba(240,240,240,.9); }
.bdc-comment__text p { margin-bottom: .5rem; }
.bdc-comment__text p:last-child { margin-bottom: 0; }

.bdc-comment__reply { margin-top: .75rem; }
.bdc-comment__reply a {
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--bdc-gold);
}

.bdc-comment__moderation {
	font-size: .8125rem;
	color: var(--bdc-fg-muted);
	font-style: italic;
	margin-bottom: .5rem;
}

.bdc-comments__closed {
	color: var(--bdc-fg-muted);
	font-style: italic;
	margin-bottom: 1.5rem;
}

/* Comment form */
.bdc-comments__form-title {
	font-size: 1.5rem;
	margin-bottom: 1.5rem;
}

.bdc-comment-form { margin-top: 2rem; }

.bdc-comment-form__row {
	margin-bottom: 1.25rem;
}

.bdc-comment-form__row label {
	display: block;
	font-size: .8125rem;
	font-weight: 700;
	margin-bottom: .375rem;
	color: var(--bdc-fg);
}

.bdc-comment-form__row .required { color: var(--bdc-gold); }

.bdc-comment-form__input {
	width: 100%;
	max-width: 540px;
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	color: var(--bdc-fg);
	padding: .75rem 1rem;
	font-size: .9375rem;
	transition: border-color var(--bdc-transition);
}

.bdc-comment-form__input:focus {
	outline: none;
	border-color: var(--bdc-gold);
}

.bdc-comment-form__textarea { height: 140px; resize: vertical; }

.bdc-comment-form__row--check {
	display: flex;
	align-items: flex-start;
	gap: .5rem;
}

.bdc-btn-primary {
	background: var(--bdc-gold);
	color: #000;
	padding: .875rem 2rem;
	font-weight: 700;
	font-size: .875rem;
	border: none;
	cursor: pointer;
	transition: background var(--bdc-transition);
	font-family: var(--bdc-font-body);
	letter-spacing: .04em;
}
.bdc-btn-primary:hover { background: var(--bdc-gold-light); }

/* ============================================================
   SINGLE POST — TAGS, SHARE BAR, AUTHOR BOX
   ============================================================ */
.bdc-single__tags {
	display: flex;
	gap: .5rem;
	flex-wrap: wrap;
	margin-top: 2rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--bdc-border);
}

.bdc-single__tag {
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	border: 1px solid var(--bdc-border);
	padding: .3em .75em;
	color: var(--bdc-fg-muted);
	transition: all var(--bdc-transition);
}
.bdc-single__tag:hover {
	border-color: var(--bdc-gold);
	color: var(--bdc-gold);
}

/* Share bar */
.bdc-share-bar {
	display: flex;
	align-items: center;
	gap: .625rem;
	flex-wrap: wrap;
	margin-top: 2rem;
	padding: 1rem 1.25rem;
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
}

.bdc-share-bar__label {
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--bdc-fg-muted);
	margin-right: .25rem;
}

.bdc-share-bar__link {
	display: inline-flex;
	align-items: center;
	gap: .375rem;
	padding: .5rem .875rem;
	font-size: .75rem;
	font-weight: 700;
	border: 1px solid var(--bdc-border);
	color: var(--bdc-fg-muted);
	background: transparent;
	cursor: pointer;
	font-family: var(--bdc-font-body);
	transition: all var(--bdc-transition);
	text-decoration: none;
}

.bdc-share-bar__link:hover {
	border-color: var(--bdc-gold);
	color: var(--bdc-gold);
}

.bdc-share-bar__link-text { display: none; }
@media (min-width: 480px) { .bdc-share-bar__link-text { display: inline; } }

/* Author box */
.bdc-author-box {
	display: flex;
	gap: 1.5rem;
	align-items: flex-start;
	margin-top: 2.5rem;
	padding: 1.75rem;
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	border-left: 3px solid var(--bdc-gold);
}

.bdc-author-box__avatar-img {
	border-radius: 50%;
	width: 80px;
	height: 80px;
	flex-shrink: 0;
	border: 2px solid var(--bdc-gold-border);
}

.bdc-author-box__name {
	font-size: 1.125rem;
	margin: .25rem 0 .5rem;
}
.bdc-author-box__name a { color: var(--bdc-fg); }
.bdc-author-box__name a:hover { color: var(--bdc-gold); }

.bdc-author-box__bio {
	font-size: .9rem;
	color: var(--bdc-fg-muted);
	line-height: 1.6;
	margin-bottom: .75rem;
}

.bdc-author-box__links { display: flex; gap: 1rem; flex-wrap: wrap; align-items: center; }

.bdc-author-box__more {
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--bdc-gold);
}

.bdc-author-box__twitter { font-size: .8125rem; color: var(--bdc-fg-muted); }
.bdc-author-box__twitter:hover { color: var(--bdc-gold); }

@media (max-width: 540px) {
	.bdc-author-box { flex-direction: column; }
	.bdc-author-box__avatar-img { width: 60px; height: 60px; }
}

/* ============================================================
   RELATED POSTS
   ============================================================ */
.bdc-related-posts {
	background: var(--bdc-bg-alt);
	padding: 3.5rem 0;
	margin-top: 3rem;
}

.bdc-related-posts__header {
	max-width: var(--bdc-max-w);
	margin: 0 auto 1.75rem;
	padding: 0 1.5rem;
}

.bdc-related-posts__title {
	font-size: 1.5rem;
	margin-top: .25rem;
}

.bdc-related-posts__grid {
	max-width: var(--bdc-max-w);
	margin: 0 auto;
	padding: 0 1.5rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
}

@media (max-width: 900px) { .bdc-related-posts__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .bdc-related-posts__grid { grid-template-columns: 1fr; } }

/* ============================================================
   VIDEO SINGLE TEMPLATE
   ============================================================ */
.bdc-video-single__embed {
	position: relative;
	padding-top: 56.25%;
	background: #000;
}

.bdc-video-single__embed iframe {
	position: absolute;
	top: 0; left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.bdc-video-single__player { margin-bottom: 1.5rem; }

.bdc-video-single__placeholder {
	position: relative;
	background: var(--bdc-card);
}

.bdc-video-single__meta {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-bottom: .75rem;
}

.bdc-video-single__duration {
	font-family: var(--bdc-font-mono);
	font-size: .875rem;
	color: var(--bdc-fg-muted);
	background: var(--bdc-bg-alt);
	border: 1px solid var(--bdc-border);
	padding: .2em .6em;
}

/* ============================================================
   EBOOK SINGLE TEMPLATE
   ============================================================ */
.bdc-ebook-single__layout {
	display: grid;
	grid-template-columns: 280px 1fr;
	gap: 3rem;
	padding-top: 2rem;
	padding-bottom: 3rem;
	align-items: start;
}

@media (max-width: 768px) {
	.bdc-ebook-single__layout { grid-template-columns: 1fr; }
}

.bdc-ebook-single__cover { position: sticky; top: calc(var(--bdc-nav-h) + 1.5rem); }

.bdc-ebook-single__cover-img {
	width: 100%;
	box-shadow: var(--bdc-shadow);
	margin-bottom: 1.25rem;
}

.bdc-ebook-single__cover-placeholder {
	width: 100%;
	aspect-ratio: 3/4;
	background: var(--bdc-card);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 4rem;
	margin-bottom: 1.25rem;
}

.bdc-ebook-single__download {
	display: block;
	text-align: center;
	background: var(--bdc-gold);
	color: #000;
	padding: .875rem 1rem;
	font-weight: 700;
	font-size: .875rem;
	letter-spacing: .04em;
	transition: background var(--bdc-transition);
	text-decoration: none;
	margin-bottom: 1rem;
}
.bdc-ebook-single__download:hover { background: var(--bdc-gold-light); color: #000; }

.bdc-ebook-single__stats {
	display: flex;
	gap: 0;
	border: 1px solid var(--bdc-border);
}

.bdc-ebook-single__stat {
	flex: 1;
	text-align: center;
	padding: .75rem .5rem;
	border-right: 1px solid var(--bdc-border);
}
.bdc-ebook-single__stat:last-child { border-right: none; }

.bdc-ebook-single__stat-value {
	display: block;
	font-weight: 700;
	font-size: 1rem;
	color: var(--bdc-gold);
}
.bdc-ebook-single__stat-label {
	display: block;
	font-size: .6875rem;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--bdc-fg-muted);
}

.bdc-ebook-single__subtitle {
	font-size: .875rem;
	color: var(--bdc-fg-muted);
	margin-bottom: .5rem;
}

.bdc-ebook-single__cta-box {
	background: var(--bdc-gold-bg);
	border: 1px solid var(--bdc-gold-border);
	padding: 2rem;
	margin: 2.5rem 0;
	text-align: center;
}
.bdc-ebook-single__cta-box h3 { margin: .5rem 0 1rem; }

.bdc-guide-card__badge--large {
	font-size: .75rem;
	padding: .4em .9em;
}

/* ============================================================
   CUSTOM WIDGETS
   ============================================================ */

/* Market widget */
.bdc-widget-market__list { padding: 0; }

.bdc-widget-market__row {
	display: flex;
	align-items: center;
	gap: .5rem;
	padding: .5rem 0;
	border-bottom: 1px solid var(--bdc-border);
}
.bdc-widget-market__row:last-child { border-bottom: none; }

.bdc-widget-market__sym {
	font-family: var(--bdc-font-mono);
	font-size: .8125rem;
	font-weight: 700;
	flex: 0 0 60px;
}

.bdc-widget-market__price {
	font-size: .875rem;
	flex: 1;
}

.bdc-widget-market__change {
	font-size: .75rem;
	font-weight: 700;
	text-align: right;
}

.bdc-widget-market__note {
	font-size: .6875rem;
	color: var(--bdc-fg-dim);
	margin-top: .75rem;
}

/* History widget */
.bdc-widget-history__year {
	font-family: var(--bdc-font-mono);
	font-size: 1.375rem;
	font-weight: 700;
	color: var(--bdc-gold);
	margin-bottom: .25rem;
}

.bdc-widget-history__title {
	font-size: .9375rem;
	line-height: 1.4;
	margin-bottom: .5rem;
}
.bdc-widget-history__title a { color: var(--bdc-fg); }
.bdc-widget-history__title a:hover { color: var(--bdc-gold); }

.bdc-widget-history__excerpt {
	font-size: .8125rem;
	color: var(--bdc-fg-muted);
	line-height: 1.55;
}

/* Newsletter widget */
.bdc-widget-nl__title {
	font-family: var(--bdc-font-serif);
	font-size: 1rem;
	font-weight: 700;
	margin-bottom: .375rem;
}

.bdc-widget-nl__sub {
	font-size: .8125rem;
	color: var(--bdc-fg-muted);
	margin-bottom: .75rem;
}

.bdc-widget-nl__form { display: flex; flex-direction: column; gap: .5rem; }

.bdc-widget-nl__input {
	background: var(--bdc-bg);
	border: 1px solid var(--bdc-border);
	color: var(--bdc-fg);
	padding: .625rem .875rem;
	font-size: .875rem;
	width: 100%;
}
.bdc-widget-nl__input:focus { outline: none; border-color: var(--bdc-gold); }

.bdc-widget-nl__btn {
	background: var(--bdc-gold);
	color: #000;
	padding: .625rem 1rem;
	font-weight: 700;
	font-size: .875rem;
	border: none;
	cursor: pointer;
	font-family: var(--bdc-font-body);
}
.bdc-widget-nl__btn:hover { background: var(--bdc-gold-light); }

/* Top posts widget */
.bdc-widget-top__list { list-style: none; padding: 0; }

.bdc-widget-top__item {
	display: flex;
	gap: .875rem;
	align-items: flex-start;
	padding: .75rem 0;
	border-bottom: 1px solid var(--bdc-border);
}
.bdc-widget-top__item:last-child { border-bottom: none; }

.bdc-widget-top__num {
	font-family: var(--bdc-font-mono);
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--bdc-gold);
	flex-shrink: 0;
	line-height: 1;
	margin-top: .125rem;
}

.bdc-widget-top__cat {
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--bdc-gold);
	margin-bottom: .25rem;
}

.bdc-widget-top__title { font-size: .875rem; line-height: 1.4; }
.bdc-widget-top__title a { color: var(--bdc-fg); }
.bdc-widget-top__title a:hover { color: var(--bdc-gold); }

/* ============================================================
   FINANCIAL CALCULATORS
   ============================================================ */
.bdc-calculator {
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	margin: 2rem 0;
	overflow: hidden;
}

.bdc-calculator__header {
	padding: 1.25rem 1.5rem;
	border-bottom: 1px solid var(--bdc-border);
	background: var(--bdc-bg-alt);
}

.bdc-calculator__title {
	font-size: 1.25rem;
	font-weight: 700;
	margin-top: .25rem;
}

.bdc-calculator__body {
	padding: 1.5rem;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.5rem;
}

@media (max-width: 640px) {
	.bdc-calculator__body { grid-template-columns: 1fr; }
}

.bdc-calculator__body--two-col {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.5rem;
}
@media (max-width: 768px) {
	.bdc-calculator__body--two-col { grid-template-columns: 1fr; }
}

.bdc-calculator__fields { display: flex; flex-direction: column; gap: 1rem; }
.bdc-calculator__results {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
	align-content: start;
}

@media (max-width: 400px) {
	.bdc-calculator__results { grid-template-columns: 1fr; }
}

.bdc-calc-field { display: flex; flex-direction: column; gap: .375rem; }
.bdc-calc-field label {
	font-size: .75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--bdc-fg-muted);
}

.bdc-calc-field__input-wrap {
	display: flex;
	align-items: center;
	border: 1px solid var(--bdc-border);
	background: var(--bdc-bg);
	transition: border-color var(--bdc-transition);
}
.bdc-calc-field__input-wrap:focus-within { border-color: var(--bdc-gold); }

.bdc-calc-field__prefix,
.bdc-calc-field__suffix {
	padding: 0 .625rem;
	font-size: .8125rem;
	color: var(--bdc-fg-muted);
	flex-shrink: 0;
}

.bdc-calc-input {
	flex: 1;
	background: transparent;
	border: none;
	color: var(--bdc-fg);
	padding: .625rem .5rem;
	font-size: .9375rem;
	font-family: var(--bdc-font-mono);
	min-width: 0;
}
.bdc-calc-input:focus { outline: none; }

select.bdc-calc-input {
	padding: .625rem .5rem;
	cursor: pointer;
	appearance: none;
}

.bdc-calc-result {
	background: var(--bdc-bg-alt);
	border: 1px solid var(--bdc-border);
	padding: 1rem;
	text-align: center;
}

.bdc-calc-result--primary {
	background: var(--bdc-gold-bg);
	border-color: var(--bdc-gold-border);
	grid-column: span 2;
}
@media (max-width: 400px) { .bdc-calc-result--primary { grid-column: span 1; } }

.bdc-calc-result__label {
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--bdc-fg-muted);
	margin-bottom: .375rem;
}

.bdc-calc-result__value {
	font-family: var(--bdc-font-mono);
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--bdc-fg);
}
.bdc-calc-result--primary .bdc-calc-result__value {
	font-size: 1.625rem;
	color: var(--bdc-gold);
}

/* Net Worth calculator specific */
.bdc-nw-col { display: flex; flex-direction: column; gap: .625rem; }

.bdc-nw-col__heading {
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	padding-bottom: .625rem;
	border-bottom: 2px solid;
	margin-bottom: .25rem;
}
.bdc-nw-col__heading--assets { color: var(--bdc-green); border-color: var(--bdc-green); }
.bdc-nw-col__heading--liabilities { color: var(--bdc-red); border-color: var(--bdc-red); }

.bdc-nw-row {
	display: flex;
	align-items: center;
	gap: .5rem;
	justify-content: space-between;
}
.bdc-nw-row label {
	font-size: .8125rem;
	color: var(--bdc-fg-muted);
	flex: 0 0 55%;
}
.bdc-nw-row .bdc-calc-field__input-wrap { flex: 1; }

.bdc-nw-total {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: .625rem .75rem;
	background: var(--bdc-bg-alt);
	border: 1px solid var(--bdc-border);
	margin-top: .5rem;
	font-size: .875rem;
	font-weight: 700;
}

.bdc-nw-result {
	text-align: center;
	padding: 1.5rem;
	border-top: 1px solid var(--bdc-border);
	background: var(--bdc-bg-alt);
}
.bdc-nw-result__value { font-size: 2.25rem !important; }
.bdc-nw-result__sub { font-size: .875rem; color: var(--bdc-fg-muted); margin-top: .5rem; }

/* ============================================================
   EDITORIAL SHORTCODES
   ============================================================ */
.bdc-pullquote {
	border-left: 3px solid var(--bdc-gold);
	margin: 2rem 0;
	padding: 1.25rem 2rem;
	background: var(--bdc-gold-bg);
	position: relative;
}

.bdc-pullquote::before {
	content: '\201C';
	font-family: var(--bdc-font-serif);
	font-size: 4rem;
	color: var(--bdc-gold);
	opacity: .3;
	position: absolute;
	top: -.5rem;
	left: 1.25rem;
	line-height: 1;
}

.bdc-pullquote__text {
	font-family: var(--bdc-font-serif);
	font-size: 1.25rem;
	font-style: italic;
	line-height: 1.55;
	color: var(--bdc-fg);
	margin-bottom: .75rem;
}

.bdc-pullquote__author {
	font-size: .8125rem;
	font-weight: 700;
	color: var(--bdc-gold);
	letter-spacing: .04em;
}

.bdc-lead {
	font-size: 1.125rem;
	line-height: 1.75;
	color: var(--bdc-fg);
	font-weight: 500;
	margin-bottom: 1.5rem;
}

/* Stat blocks */
.bdc-stats-row {
	display: flex;
	gap: 1px;
	flex-wrap: wrap;
	margin: 2rem 0;
	background: var(--bdc-border);
}

.bdc-stat-block {
	flex: 1;
	min-width: 120px;
	text-align: center;
	padding: 1.5rem 1rem;
	background: var(--bdc-card);
}

.bdc-stat-block__value {
	font-family: var(--bdc-font-mono);
	font-size: 1.625rem;
	font-weight: 700;
	color: var(--bdc-gold);
	margin-bottom: .25rem;
}

.bdc-stat-block__label {
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--bdc-fg-muted);
}

.bdc-stat-block__note {
	font-size: .75rem;
	color: var(--bdc-fg-dim);
	margin-top: .25rem;
}

/* ============================================================
   VIDEO ARCHIVE GRID
   ============================================================ */
.bdc-videos__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 1.5rem;
}

/* ============================================================
   GUIDES ARCHIVE GRID
   ============================================================ */
.bdc-guides__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 1.5rem;
}

/* ============================================================
   VIDEO CARD (archive/related)
   ============================================================ */
.bdc-video-card {
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	transition: transform var(--bdc-transition), border-color var(--bdc-transition);
	display: flex;
	flex-direction: column;
}
.bdc-video-card:hover { transform: translateY(-3px); border-color: var(--bdc-gold-border); }

.bdc-video-card__thumb {
	position: relative;
	aspect-ratio: 16/9;
	overflow: hidden;
	background: var(--bdc-bg-alt);
}
.bdc-video-card__thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.bdc-video-card:hover .bdc-video-card__thumb img { transform: scale(1.04); }

.bdc-video-card__play {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(0,0,0,.35);
	transition: background var(--bdc-transition);
}
.bdc-video-card:hover .bdc-video-card__play { background: rgba(0,0,0,.5); }

.bdc-video-card__play-icon {
	width: 52px;
	height: 52px;
	background: var(--bdc-gold);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform var(--bdc-transition);
}
.bdc-video-card:hover .bdc-video-card__play-icon { transform: scale(1.1); }

.bdc-video-card__duration {
	position: absolute;
	bottom: .5rem;
	right: .5rem;
	background: rgba(0,0,0,.8);
	color: #fff;
	font-family: var(--bdc-font-mono);
	font-size: .75rem;
	padding: .2em .5em;
}

.bdc-video-card__body { padding: 1rem; flex: 1; }

.bdc-video-card__cat {
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--bdc-gold);
	margin-bottom: .375rem;
}

.bdc-video-card__title {
	font-size: .9375rem;
	font-weight: 700;
	line-height: 1.4;
	color: var(--bdc-fg);
}

/* ============================================================
   GUIDE CARD (archive/related)
   ============================================================ */
.bdc-guide-card {
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	display: flex;
	flex-direction: column;
	transition: transform var(--bdc-transition), border-color var(--bdc-transition);
}
.bdc-guide-card:hover { transform: translateY(-3px); border-color: var(--bdc-gold-border); }

.bdc-guide-card__cover {
	position: relative;
	aspect-ratio: 3/4;
	overflow: hidden;
	background: var(--bdc-bg-alt);
}
.bdc-guide-card__cover img { width: 100%; height: 100%; object-fit: cover; }

.bdc-guide-card__badge {
	position: absolute;
	top: .75rem;
	left: .75rem;
	background: var(--bdc-gold);
	color: #000;
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	padding: .3em .7em;
}

.bdc-guide-card__body { padding: 1rem; flex: 1; display: flex; flex-direction: column; }

.bdc-guide-card__title {
	font-size: .9375rem;
	font-weight: 700;
	color: var(--bdc-fg);
	line-height: 1.4;
	margin-bottom: .375rem;
}

.bdc-guide-card__sub {
	font-size: .8125rem;
	color: var(--bdc-fg-muted);
	flex: 1;
	margin-bottom: .75rem;
}

.bdc-guide-card__cta {
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--bdc-gold);
}

/* ============================================================
   CAT SECTION GRID
   ============================================================ */
.bdc-cat-section__grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-template-rows: auto auto;
	gap: 1.5rem;
}
@media (max-width: 900px) { .bdc-cat-section__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .bdc-cat-section__grid { grid-template-columns: 1fr; } }

/* ============================================================
   HISTORY SECTION
   ============================================================ */
.bdc-history__featured {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2rem;
	margin-bottom: 2.5rem;
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	overflow: hidden;
}

.bdc-history__featured-image {
	position: relative;
	min-height: 320px;
}
.bdc-history__featured-image img { width: 100%; height: 100%; object-fit: cover; }
.bdc-history__featured-image-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to right, rgba(0,0,0,0), rgba(20,20,24,.6));
}

.bdc-history__featured-content {
	padding: 2rem 2rem 2rem 1rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.bdc-history__year {
	font-family: var(--bdc-font-mono);
	font-size: 3rem;
	font-weight: 700;
	color: var(--bdc-gold);
	opacity: .4;
	line-height: 1;
	margin-bottom: .5rem;
}

.bdc-history__featured-title { font-size: 1.375rem; margin-bottom: .75rem; }

.bdc-history__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
}

.bdc-history__card {
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	padding: 1.25rem;
	border-left: 3px solid var(--bdc-gold-border);
	transition: border-color var(--bdc-transition);
}
.bdc-history__card:hover { border-left-color: var(--bdc-gold); }

.bdc-history__card-year {
	font-family: var(--bdc-font-mono);
	font-size: 1.125rem;
	font-weight: 700;
	color: var(--bdc-gold);
	margin-bottom: .375rem;
}

.bdc-history__card-title { font-size: .9375rem; line-height: 1.4; }
.bdc-history__card-title a { color: var(--bdc-fg); }
.bdc-history__card-title a:hover { color: var(--bdc-gold); }

@media (max-width: 900px) {
	.bdc-history__featured { grid-template-columns: 1fr; }
	.bdc-history__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
	.bdc-history__grid { grid-template-columns: 1fr; }
}

/* ============================================================
   MARKET SNAPSHOT SECTION
   ============================================================ */
.bdc-markets__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
	gap: 1px;
	background: var(--bdc-border);
}

.bdc-markets__card {
	background: var(--bdc-card);
	padding: 1.25rem 1rem;
	text-align: center;
}

.bdc-markets__card-label {
	font-family: var(--bdc-font-mono);
	font-size: .75rem;
	font-weight: 700;
	letter-spacing: .08em;
	color: var(--bdc-fg-muted);
	margin-bottom: .25rem;
}

.bdc-markets__card-price {
	font-family: var(--bdc-font-mono);
	font-size: 1.0625rem;
	font-weight: 700;
	margin-bottom: .125rem;
}

.bdc-markets__card-change {
	font-size: .8125rem;
	font-weight: 700;
}

.bdc-markets__gauge {
	background: var(--bdc-card);
	padding: 1.25rem 1rem;
	text-align: center;
	grid-column: span 2;
}

.bdc-markets__gauge-label {
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--bdc-fg-muted);
	margin-bottom: .375rem;
}

.bdc-markets__gauge-value {
	font-family: var(--bdc-font-mono);
	font-size: 2.5rem;
	font-weight: 700;
	line-height: 1;
}

.bdc-markets__gauge-name {
	font-size: .875rem;
	font-weight: 700;
	margin-top: .25rem;
}

.bdc-markets__sample-badge {
	display: inline-block;
	margin-top: .5rem;
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--bdc-fg-dim);
	border: 1px solid var(--bdc-border);
	padding: .2em .6em;
}

/* ============================================================
   NEWSLETTER SECTION
   ============================================================ */
.bdc-newsletter {
	background: var(--bdc-gold);
	padding: 5rem 1.5rem;
	text-align: center;
}

.bdc-newsletter__inner {
	max-width: 600px;
	margin: 0 auto;
}

.bdc-newsletter__eyebrow {
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: rgba(0,0,0,.6);
	margin-bottom: .875rem;
}

.bdc-newsletter__heading {
	font-size: clamp(1.75rem, 5vw, 2.75rem);
	font-weight: 900;
	color: #000;
	line-height: 1.15;
	margin-bottom: 1rem;
}

.bdc-newsletter__sub {
	font-size: 1rem;
	color: rgba(0,0,0,.7);
	line-height: 1.6;
	margin-bottom: 2rem;
}

.bdc-newsletter__form {
	display: flex;
	max-width: 480px;
	margin: 0 auto 1rem;
	gap: 0;
}

.bdc-newsletter__input {
	flex: 1;
	background: #fff;
	border: 2px solid #000;
	border-right: none;
	padding: .875rem 1.25rem;
	font-size: 1rem;
	color: #000;
	font-family: var(--bdc-font-body);
}
.bdc-newsletter__input:focus { outline: none; }
.bdc-newsletter__input::placeholder { color: rgba(0,0,0,.5); }

.bdc-newsletter__btn {
	background: #000;
	color: var(--bdc-gold);
	padding: .875rem 1.5rem;
	font-weight: 700;
	font-size: .875rem;
	border: 2px solid #000;
	cursor: pointer;
	white-space: nowrap;
	font-family: var(--bdc-font-body);
	letter-spacing: .04em;
	transition: background var(--bdc-transition);
}
.bdc-newsletter__btn:hover { background: #1a1a1a; }

.bdc-newsletter__disclaimer {
	font-size: .75rem;
	color: rgba(0,0,0,.55);
}

.bdc-newsletter__success-title {
	font-size: 1.25rem;
	font-weight: 700;
	color: #000;
}
.bdc-newsletter__success-text { color: rgba(0,0,0,.7); }

@media (max-width: 480px) {
	.bdc-newsletter__form { flex-direction: column; }
	.bdc-newsletter__input { border-right: 2px solid #000; border-bottom: none; }
	.bdc-newsletter__btn { width: 100%; }
}

/* ============================================================
   HERO SLIDER
   ============================================================ */
.bdc-hero {
	position: relative;
	background: var(--bdc-bg-alt);
	overflow: hidden;
}

.bdc-hero__slide {
	display: none;
}
.bdc-hero__slide.active { display: block; }

.bdc-hero__slide-inner {
	display: grid;
	grid-template-columns: 1fr 1fr;
	min-height: 540px;
}

@media (max-width: 900px) {
	.bdc-hero__slide-inner { grid-template-columns: 1fr; }
}

.bdc-hero__image-col { position: relative; min-height: 320px; overflow: hidden; }
.bdc-hero__image-col img { width: 100%; height: 100%; object-fit: cover; }
.bdc-hero__image-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to right, rgba(0,0,0,0) 60%, rgba(10,10,12,.9));
}

.bdc-hero__content-col {
	padding: 3rem 2.5rem 3rem 2rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	background: var(--bdc-bg-alt);
}
@media (max-width: 900px) {
	.bdc-hero__image-overlay { background: linear-gradient(to bottom, rgba(0,0,0,0) 40%, rgba(10,10,12,.95)); }
	.bdc-hero__content-col { padding: 1.5rem; }
}

.bdc-hero__meta {
	display: flex;
	align-items: center;
	gap: .75rem;
	margin-bottom: .75rem;
}

.bdc-hero__cat {
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--bdc-gold);
}

.bdc-hero__read-time {
	font-size: .6125rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--bdc-fg-muted);
}

.bdc-hero__title {
	font-size: clamp(1.375rem, 3vw, 2.125rem);
	font-weight: 900;
	line-height: 1.2;
	margin-bottom: 1rem;
}
.bdc-hero__title a { color: var(--bdc-fg); }
.bdc-hero__title a:hover { color: var(--bdc-gold); }

.bdc-hero__excerpt {
	font-size: .9375rem;
	color: var(--bdc-fg-muted);
	line-height: 1.65;
	margin-bottom: 1rem;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.bdc-hero__cta {
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	background: var(--bdc-gold);
	color: #000;
	padding: .75rem 1.5rem;
	font-weight: 700;
	font-size: .8125rem;
	letter-spacing: .06em;
	text-transform: uppercase;
	margin-top: 1rem;
	transition: background var(--bdc-transition);
	align-self: flex-start;
}
.bdc-hero__cta:hover { background: var(--bdc-gold-light); color: #000; }

/* Slider controls */
.bdc-hero__controls {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	padding: 1rem;
	background: var(--bdc-bg-alt);
	border-top: 1px solid var(--bdc-border);
}

.bdc-hero__arrow {
	width: 36px;
	height: 36px;
	border: 1px solid var(--bdc-border);
	background: transparent;
	color: var(--bdc-fg-muted);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all var(--bdc-transition);
}
.bdc-hero__arrow:hover { border-color: var(--bdc-gold); color: var(--bdc-gold); }

.bdc-hero__dots { display: flex; gap: .5rem; }

.bdc-hero__dot {
	width: 8px;
	height: 8px;
	background: var(--bdc-border);
	border: none;
	cursor: pointer;
	transition: all var(--bdc-transition);
}
.bdc-hero__dot.active { background: var(--bdc-gold); width: 24px; }

/* ============================================================
   TRENDING SECTION
   ============================================================ */
.bdc-trending__grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 1px;
	background: var(--bdc-border);
}

.bdc-trending__card {
	background: var(--bdc-card);
	padding: 1.5rem;
	display: flex;
	flex-direction: column;
	gap: .625rem;
	transition: background var(--bdc-transition);
}
.bdc-trending__card:hover { background: var(--bdc-card-hover); }

.bdc-trending__card-icon {
	width: 36px;
	height: 36px;
	color: var(--bdc-gold);
}
.bdc-trending__card-icon .bdc-icon { width: 100%; height: 100%; }

.bdc-trending__card-label {
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--bdc-gold);
}

.bdc-trending__card-title {
	font-size: .9375rem;
	font-weight: 700;
	line-height: 1.4;
	color: var(--bdc-fg);
}

.bdc-trending__card-excerpt {
	font-size: .8125rem;
	color: var(--bdc-fg-muted);
	line-height: 1.55;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

@media (max-width: 1024px) { .bdc-trending__grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 640px)  { .bdc-trending__grid { grid-template-columns: 1fr 1fr; } }

/* ============================================================
   LOAD MORE BUTTON
   ============================================================ */
.bdc-load-more {
	text-align: center;
	margin-top: 2.5rem;
}
.bdc-load-more button {
	background: transparent;
	border: 1px solid var(--bdc-border);
	color: var(--bdc-fg);
	padding: .875rem 2.5rem;
	font-weight: 700;
	font-size: .8125rem;
	letter-spacing: .06em;
	text-transform: uppercase;
	cursor: pointer;
	transition: all var(--bdc-transition);
	font-family: var(--bdc-font-body);
}
.bdc-load-more button:hover { border-color: var(--bdc-gold); color: var(--bdc-gold); }
.bdc-load-more button:disabled { opacity: .5; cursor: default; }

/* ============================================================
   POST CARD
   ============================================================ */
.bdc-stories__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
}
@media (max-width: 900px) { .bdc-stories__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .bdc-stories__grid { grid-template-columns: 1fr; } }

.bdc-post-card {
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	display: flex;
	flex-direction: column;
	transition: transform var(--bdc-transition), border-color var(--bdc-transition);
}
.bdc-post-card:hover { transform: translateY(-2px); border-color: var(--bdc-gold-border); }

.bdc-post-card__thumb {
	aspect-ratio: 16/9;
	overflow: hidden;
	background: var(--bdc-bg-alt);
}
.bdc-post-card__thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.bdc-post-card:hover .bdc-post-card__thumb img { transform: scale(1.04); }

.bdc-post-card__thumb-placeholder {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--bdc-border);
	aspect-ratio: 16/9;
}
.bdc-post-card__thumb-placeholder svg { width: 40px; height: 40px; }

.bdc-post-card__body { padding: 1.25rem; flex: 1; }
.bdc-post-card__footer {
	padding: .75rem 1.25rem;
	border-top: 1px solid var(--bdc-border);
	display: flex;
	justify-content: space-between;
	font-size: .75rem;
	color: var(--bdc-fg-muted);
}

.bdc-post-card__meta {
	display: flex;
	align-items: center;
	gap: .5rem;
	margin-bottom: .625rem;
}

.bdc-post-card__cat {
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--bdc-gold);
}

.bdc-post-card__time {
	font-size: .625rem;
	font-weight: 600;
	color: var(--bdc-fg-dim);
	padding-left: .5rem;
	border-left: 1px solid var(--bdc-border);
}

.bdc-post-card__title {
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.35;
	margin-bottom: .625rem;
}
.bdc-post-card__title a { color: var(--bdc-fg); }
.bdc-post-card__title a:hover { color: var(--bdc-gold); }

.bdc-post-card__excerpt {
	font-size: .875rem;
	color: var(--bdc-fg-muted);
	line-height: 1.6;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Flash animations for ticker */
@keyframes bdc-flash-up {
	0%   { background: rgba(34,197,94,.15); }
	100% { background: transparent; }
}
@keyframes bdc-flash-down {
	0%   { background: rgba(239,68,68,.15); }
	100% { background: transparent; }
}
.flash-up   { animation: bdc-flash-up   .9s ease forwards; }
.flash-down { animation: bdc-flash-down .9s ease forwards; }

/* ============================================================
   POST CARD — PLACEHOLDER THUMB
   (shown when a card has no featured image)
   ============================================================ */
.bdc-post-card__thumb--placeholder {
	background: var(--bdc-card);
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 160px;
	aspect-ratio: 16/9;
}
.bdc-post-card__placeholder-inner {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

/* ============================================================
   TEASER STRIPS
   (Financial Tools / Video Center / Resource Center promo)
   Mirrors TeaserStrips.tsx from the approved React homepage.
   ============================================================ */
.bdc-teasers { padding: 4rem 0; background: var(--bdc-bg-alt); }

.bdc-teasers__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.25rem;
}
@media (max-width: 900px) { .bdc-teasers__grid { grid-template-columns: 1fr; } }
@media (min-width: 600px) and (max-width: 900px) { .bdc-teasers__grid { grid-template-columns: repeat(2, 1fr); } }

.bdc-teaser-card {
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	display: flex;
	flex-direction: column;
	padding: 1.75rem;
	transition: transform var(--bdc-transition), border-color var(--bdc-transition), box-shadow var(--bdc-transition);
}
.bdc-teaser-card:hover {
	transform: translateY(-3px);
	border-color: var(--bdc-gold-border);
	box-shadow: var(--bdc-shadow-gold);
}

.bdc-teaser-card__icon {
	width: 3rem;
	height: 3rem;
	background: rgba(212,175,55,.08);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 1.25rem;
	transition: background var(--bdc-transition);
}
.bdc-teaser-card__icon svg { color: var(--bdc-gold); }
.bdc-teaser-card:hover .bdc-teaser-card__icon { background: rgba(212,175,55,.15); }

.bdc-teaser-card__title {
	font-family: var(--bdc-font-serif);
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.35;
	color: var(--bdc-fg);
	margin-bottom: .75rem;
}

.bdc-teaser-card__desc {
	font-size: .875rem;
	color: var(--bdc-fg-muted);
	line-height: 1.65;
	flex: 1;
	margin-bottom: 1.5rem;
}

.bdc-teaser-card__cta {
	display: inline-flex;
	align-items: center;
	gap: .375rem;
	margin-top: auto;
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--bdc-fg);
	transition: color var(--bdc-transition);
}
.bdc-teaser-card:hover .bdc-teaser-card__cta { color: var(--bdc-gold); }

/* ============================================================
   WEALTH LIBRARY / EBOOK STOREFRONT — HOMEPAGE VARIANT
   Overrides the archive card layout with the centred-cover
   editorial layout that matches the approved Ebooks.tsx design.
   ============================================================ */
.bdc-guides { position: relative; overflow: hidden; }

/* Gold radial glow — matches bg-primary/5 blur in React */
.bdc-guides__glow {
	position: absolute;
	top: 0; right: 0;
	width: 50%;
	height: 100%;
	background: radial-gradient(ellipse at top right, rgba(212,175,55,.06) 0%, transparent 70%);
	pointer-events: none;
}

/* Centred section header */
.bdc-guides__header {
	text-align: center;
	max-width: 42rem;
	margin: 0 auto 4rem;
}
.bdc-guides__subtext {
	font-family: var(--bdc-font-serif);
	font-size: 1.0625rem;
	color: var(--bdc-fg-muted);
	line-height: 1.65;
	margin-top: .75rem;
}

/* Override grid to match 3-col ebook layout */
#bdc-free-guides .bdc-guides__grid {
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem 3rem;
	justify-items: center;
}
@media (max-width: 900px) {
	#bdc-free-guides .bdc-guides__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
	#bdc-free-guides .bdc-guides__grid { grid-template-columns: 1fr; }
}

/* Ebook cover hover overlay with Download button */
.bdc-guide-card__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(0,0,0,.75) 0%, transparent 60%);
	opacity: 0;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	padding-bottom: 1.25rem;
	transition: opacity var(--bdc-transition);
}
.bdc-guide-card:hover .bdc-guide-card__overlay { opacity: 1; }

.bdc-guide-card__dl-btn {
	display: inline-flex;
	align-items: center;
	gap: .4rem;
	background: var(--bdc-gold);
	color: #000;
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	padding: .45em 1em;
}

.bdc-guide-card__placeholder {
	width: 100%;
	height: 100%;
	min-height: 220px;
	background: var(--bdc-card);
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Lift effect on ebook cards (matches group-hover:-translate-y-2) */
#bdc-free-guides .bdc-guide-card {
	border: none;
	background: transparent;
	box-shadow: 0 8px 32px rgba(0,0,0,.4);
	transition: transform .5s ease, box-shadow .5s ease;
}
#bdc-free-guides .bdc-guide-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 20px 48px rgba(212,175,55,.15);
}
#bdc-free-guides .bdc-guide-card__cover {
	border: 1px solid rgba(255,255,255,.06);
}

/* ============================================================
   BD&C STUDIOS VIDEO ROW — HORIZONTAL SCROLL
   Matches VideoRow.tsx: snap-x horizontal overflow container
   with fixed-width cards.
   ============================================================ */
#bdc-videos { background: var(--bdc-bg); padding: 4rem 0; }

.bdc-videos__scroll-outer {
	width: 100%;
	overflow: hidden;
	/* Extend slightly beyond the wrap so cards bleed to edge */
}

.bdc-videos__scroll-inner {
	display: flex;
	overflow-x: auto;
	gap: 1.5rem;
	padding: 1rem 1.5rem 2rem;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none; /* Firefox */
}
.bdc-videos__scroll-inner::-webkit-scrollbar { display: none; }

/* Cards in the scroll row are fixed-width, snap-aligned */
#bdc-videos .bdc-video-card {
	flex: none;
	width: 300px;
	scroll-snap-align: start;
}
@media (min-width: 640px) {
	#bdc-videos .bdc-video-card { width: 380px; }
}

/* Placeholder when no image is available */
.bdc-video-card__thumb-placeholder {
	width: 100%;
	height: 100%;
	min-height: 160px;
	background: var(--bdc-card);
}

/* Dark overlay on thumb — always present (matches black/40) */
.bdc-video-card__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,.35);
	transition: background var(--bdc-transition);
}
.bdc-video-card:hover .bdc-video-card__overlay { background: rgba(0,0,0,.2); }

/* Views count line */
.bdc-video-card__views {
	font-family: var(--bdc-font-mono);
	font-size: .625rem;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--bdc-fg-muted);
	margin-top: .375rem;
}

/* Play icon colour fix in scroll-row context */
#bdc-videos .bdc-video-card__play-icon svg { color: var(--bdc-gold); }

/* ============================================================
   FULL-WIDTH LAYOUT OVERRIDE  (v3 — placed LAST, wins all)
   ──────────────────────────────────────────────────────────
   Problem: Hello Elementor's parent stylesheet applies width
   constraints via CSS custom properties and structural selectors
   (--hello-elementor-content-width, .site-main max-width, etc.).
   This block resets every known constraint and re-establishes the
   BDC full-width layout at 1440 px desktop.

   Tested against:
     • 1920 px desktop
     • 1440 px laptop
     • 1024 px tablet landscape
     •  768 px tablet portrait
     •  390 px mobile (iPhone 14 Pro)
   ============================================================ */

/* ── 1. Reset Hello Elementor CSS custom-property widths ─────────────────── */
:root {
	--hello-elementor-content-width:  100% !important;
	--hello-elementor-header-width:   100% !important;
	--hello-elementor-content-padding: 0   !important;
	--container-max-width:             none !important;
	/* Re-declare BDC container width as 1440 px (per user spec) */
	--bdc-max-w: 1440px;
}

/* ── 2. Kill inherited max-width on all structural WordPress / HE wrappers ── */
html,
body {
	width: 100%;
	max-width: none;
	overflow-x: hidden;
}

/* Page-level shells HE outputs when its header.php runs */
#page,
.site,
.site-inner,
#content,
.site-content,
#wrapper,
.wrapper {
	max-width: none !important;
	width: 100% !important;
	margin-left:  0 !important;
	margin-right: 0 !important;
	padding-left:  0 !important;
	padding-right: 0 !important;
}

/* Content / primary area shells */
#primary,
.content-area,
#main,
.site-main,
.page-content,
.entry-content,
.entry-header,
.entry-footer,
.hentry {
	max-width:    none  !important;
	width:        100%  !important;
	margin-left:  0     !important;
	margin-right: 0     !important;
	padding-left: 0     !important;
	padding-right: 0    !important;
	float: none         !important;
}

/* Elementor section/container wrappers */
.elementor-section-wrap,
.elementor-inner,
.elementor-container,
.e-con,
.e-con-inner {
	max-width: none !important;
	width: 100% !important;
}

/* ── 3. Homepage <main> — authoritative declaration ──────────────────────── */
main#primary,
main.bdc-homepage,
.bdc-homepage {
	display:    block;
	width:      100%;
	max-width:  none;
	margin:     0;
	padding:    0;
	background: var(--bdc-bg);
}

/* ── 4. Every top-level BDC section spans the full viewport ─────────────── */
.bdc-breaking,
.bdc-nav,
.bdc-ticker,
.bdc-hero,
.bdc-trending,
.bdc-market-snapshot,
.bdc-stories,
.bdc-cat-section,
.bdc-history,
.bdc-teasers,
.bdc-guides,
.bdc-newsletter,
.bdc-videos,
.bdc-footer {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
}

/* ── 5. Container (.bdc-wrap) — 1440 px max, fluid padding ──────────────── */
/*
 * clamp() gives fluid side padding that scales from 1 rem (mobile) to
 * 2.5 rem (wide desktop) so there is always breathing room without
 * needing explicit breakpoints.
 */
.bdc-wrap {
	max-width:    var(--bdc-max-w);    /* 1440 px */
	width:        100%;
	margin-left:  auto;
	margin-right: auto;
	padding-left:  clamp(1rem, 4vw, 2.5rem);
	padding-right: clamp(1rem, 4vw, 2.5rem);
	box-sizing: border-box;
}

/* ── 6. Navigation — fluid, no inherited max-width ───────────────────────── */
.bdc-nav {
	width:      100%;
	max-width:  none;
	padding:    0 clamp(1rem, 4vw, 2.5rem);
}

/* On ultra-wide screens anchor the nav content to 1760 px so links don't
   drift to the far edges of a 4K monitor */
@media (min-width: 1760px) {
	.bdc-nav {
		padding-left:  calc((100vw - 1760px) / 2 + 2rem);
		padding-right: calc((100vw - 1760px) / 2 + 2rem);
	}
}

/* ── 7. Hero — authoritative desktop layout ──────────────────────────────── */
/*
 * Two-column grid:
 *   left  (image)   — fluid, takes all remaining space
 *   right (content) — fixed-width editorial panel
 *
 * Height is controlled with clamp() so the hero scales proportionally
 * between 520 px and 650 px across the 1024–1920 px range.
 * object-fit: cover on the image prevents any "natural size" overflow.
 */
.bdc-hero {
	width:     100%;
	max-width: none;
	overflow:  hidden;
	background: var(--bdc-bg-alt);
}

.bdc-hero__slide {
	display: none;
	width:   100%;
}
.bdc-hero__slide.active { display: block; }

/* --- Two-column desktop hero --- */
.bdc-hero__slide-inner {
	display:               grid;
	grid-template-columns: 1fr 480px;       /* image | editorial panel */
	height:                clamp(520px, 42vw, 650px);
	width:                 100%;
	overflow:              hidden;
}

.bdc-hero__image-col {
	position:   relative;
	overflow:   hidden;
	height:     100%;               /* fills the grid track height */
}

.bdc-hero__image-col img {
	position:        absolute;      /* fills the col with object-fit */
	inset:           0;
	width:           100%;
	height:          100%;
	object-fit:      cover;
	object-position: center 20%;   /* keep faces / top of image in frame */
	transition:      transform .6s ease;
	display:         block;
}
.bdc-hero__slide:hover .bdc-hero__image-col img { transform: scale(1.03); }

.bdc-hero__placeholder {
	position:        absolute;
	inset:           0;
	background:      var(--bdc-card);
	display:         flex;
	align-items:     center;
	justify-content: center;
}
.bdc-hero__placeholder-text {
	font-family: var(--bdc-font-serif);
	font-size:   6rem;
	font-weight: 900;
	color:       rgba(255,255,255,.04);
	user-select: none;
}

.bdc-hero__image-overlay {
	position:   absolute;
	inset:      0;
	background: linear-gradient(
		to right,
		rgba(0,0,0,.05) 40%,
		rgba(10,10,12,.9) 100%
	);
	z-index:       1;
	pointer-events: none;
}

.bdc-hero__content-col {
	position:        relative;
	z-index:         2;
	background:      var(--bdc-card);
	border-left:     1px solid var(--bdc-border);
	padding:         3rem 2.5rem;
	display:         flex;
	flex-direction:  column;
	justify-content: center;
	gap:             1.25rem;
	overflow-y:      auto;
}

.bdc-hero__meta {
	display:     flex;
	align-items: center;
	gap:         .75rem;
	flex-wrap:   wrap;
}

.bdc-hero__title {
	font-family: var(--bdc-font-serif);
	font-size:   clamp(1.5rem, 2.5vw, 2.25rem);
	font-weight: 900;
	line-height: 1.15;
	color:       var(--bdc-fg);
}
.bdc-hero__title a        { color: var(--bdc-fg); }
.bdc-hero__title a:hover  { color: var(--bdc-gold); }

.bdc-hero__excerpt {
	font-size:                .9375rem;
	color:                    var(--bdc-fg-muted);
	line-height:              1.65;
	display:                  -webkit-box;
	-webkit-line-clamp:       4;
	-webkit-box-orient:       vertical;
	overflow:                 hidden;
}

/* Hero controls stay on the image side */
.bdc-hero__controls {
	position: absolute;
	bottom:   1.5rem;
	left:     1.5rem;
	display:  flex;
	align-items: center;
	gap:      .75rem;
	z-index:  10;
}

/* --- 1440 px laptop --- */
@media (min-width: 1440px) {
	.bdc-hero__slide-inner { grid-template-columns: 1fr 520px; }
}

/* --- 1920 px / ultra-wide --- */
@media (min-width: 1920px) {
	.bdc-hero__slide-inner { grid-template-columns: 1fr 600px; }
}

/* --- 1024 px tablet landscape --- */
@media (max-width: 1024px) {
	.bdc-hero__slide-inner {
		grid-template-columns: 1fr 380px;
		height: clamp(440px, 48vw, 560px);
	}
}

/* --- 768 px tablet portrait — stack vertically --- */
@media (max-width: 768px) {
	.bdc-hero__slide-inner {
		grid-template-columns: 1fr;
		height:   auto;
		overflow: visible;
	}
	.bdc-hero__image-col {
		height:     260px;
		max-height: 260px;
	}
	.bdc-hero__image-col img {
		position:   static;
		width:      100%;
		height:     260px;
		object-fit: cover;
	}
	.bdc-hero__image-overlay {
		background: linear-gradient(
			to bottom,
			rgba(0,0,0,0) 40%,
			rgba(10,10,12,.9) 100%
		);
	}
	.bdc-hero__content-col {
		border-left: none;
		border-top:  1px solid var(--bdc-border);
		padding:     1.5rem;
	}
}

/* --- 390 px mobile --- */
@media (max-width: 390px) {
	.bdc-hero__content-col { padding: 1.25rem 1rem; }
	.bdc-hero__title       { font-size: 1.375rem; }
}

/* ── 8. Suppress any WP-injected featured image on the homepage ──────────── */
.bdc-homepage > img,
.bdc-homepage .wp-post-image,
.bdc-homepage .attachment-full,
.bdc-homepage .attachment-bdc-hero,
body.home > .wp-post-image,
body.front-page > .wp-post-image {
	display: none !important;
}

/* ── 9. Market snapshot + trending — stretch grids to full width ─────────── */
.bdc-market-snapshot .bdc-wrap,
.bdc-trending .bdc-wrap,
.bdc-stories .bdc-wrap,
.bdc-cat-section .bdc-wrap,
.bdc-history .bdc-wrap,
.bdc-teasers .bdc-wrap,
.bdc-guides .bdc-wrap,
.bdc-videos .bdc-wrap,
.bdc-footer .bdc-wrap {
	max-width:    var(--bdc-max-w);
	padding-left:  clamp(1rem, 4vw, 2.5rem);
	padding-right: clamp(1rem, 4vw, 2.5rem);
}

/* ============================================================
   UTILITY BUTTONS
   ============================================================ */
.bdc-btn {
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	padding: .75rem 1.75rem;
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	transition: background var(--bdc-transition), color var(--bdc-transition), border-color var(--bdc-transition);
	white-space: nowrap;
}
.bdc-btn--gold {
	background: var(--bdc-gold);
	color: #000;
}
.bdc-btn--gold:hover { background: var(--bdc-gold-light); color: #000; }

.bdc-btn--outline {
	background: transparent;
	border: 1px solid var(--bdc-border-light);
	color: var(--bdc-fg);
}
.bdc-btn--outline:hover { border-color: var(--bdc-gold-border); color: var(--bdc-gold); }

/* ============================================================
   LEGACY / BLACK WEALTH CENTER
   ============================================================ */
.bdc-legacy {
	position: relative;
	padding: 5rem 0;
	background: var(--bdc-bg);
	overflow: hidden;
}

.bdc-legacy__glow {
	position: absolute;
	top: 50%; left: 50%;
	transform: translate(-50%, -50%);
	width: 900px; height: 900px;
	background: radial-gradient(ellipse, rgba(212,175,55,.04) 0%, transparent 70%);
	pointer-events: none;
}

.bdc-legacy__header {
	text-align: center;
	max-width: 38rem;
	margin: 0 auto 3.5rem;
}

.bdc-legacy__title {
	font-family: var(--bdc-font-serif);
	font-size: clamp(2rem, 4vw, 3rem);
	font-weight: 900;
	line-height: 1.1;
	color: var(--bdc-fg);
	margin: .625rem 0 .875rem;
}

.bdc-legacy__subtitle {
	font-family: var(--bdc-font-serif);
	font-size: 1.0625rem;
	color: var(--bdc-fg-muted);
	line-height: 1.65;
}

.bdc-legacy__grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 1.25rem;
	margin-bottom: 3rem;
}
@media (max-width: 1024px) { .bdc-legacy__grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 640px)  { .bdc-legacy__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 390px)  { .bdc-legacy__grid { grid-template-columns: 1fr; } }

.bdc-legacy__card {
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	padding: 1.75rem 1.5rem;
	display: flex;
	flex-direction: column;
	gap: .75rem;
	transition: border-color var(--bdc-transition), transform var(--bdc-transition), box-shadow var(--bdc-transition);
}
.bdc-legacy__card:hover {
	border-color: var(--bdc-gold-border);
	transform: translateY(-3px);
	box-shadow: var(--bdc-shadow-gold);
}

.bdc-legacy__num {
	font-family: var(--bdc-font-mono);
	font-size: 1.5rem;
	font-weight: 700;
	color: rgba(212,175,55,.5);
	line-height: 1;
}

.bdc-legacy__card-title {
	font-family: var(--bdc-font-serif);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--bdc-fg);
}
.bdc-legacy__card:hover .bdc-legacy__card-title { color: var(--bdc-gold); }

.bdc-legacy__card-desc {
	font-size: .8125rem;
	color: var(--bdc-fg-muted);
	line-height: 1.65;
	flex: 1;
}

.bdc-legacy__card-cta {
	font-size: .5625rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--bdc-gold);
	opacity: 0;
	transition: opacity var(--bdc-transition);
	margin-top: auto;
}
.bdc-legacy__card:hover .bdc-legacy__card-cta { opacity: 1; }

.bdc-legacy__footer-cta {
	text-align: center;
}

/* ============================================================
   FAMILY BANK
   ============================================================ */
.bdc-family-bank {
	padding: 5rem 0;
	background: var(--bdc-bg-alt);
}

.bdc-family-bank__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4rem;
	align-items: center;
}
@media (max-width: 900px) {
	.bdc-family-bank__grid { grid-template-columns: 1fr; gap: 2.5rem; }
}

.bdc-family-bank__title {
	font-family: var(--bdc-font-serif);
	font-size: clamp(1.875rem, 3vw, 2.75rem);
	font-weight: 900;
	line-height: 1.15;
	color: var(--bdc-fg);
	margin: .5rem 0 1.25rem;
}

.bdc-family-bank__body {
	font-size: 1rem;
	color: var(--bdc-fg-muted);
	line-height: 1.75;
	margin-bottom: 2rem;
}

.bdc-family-bank__ctas {
	display: flex;
	align-items: center;
	gap: 1rem;
	flex-wrap: wrap;
}

.bdc-family-bank__tools {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.25rem;
}
@media (max-width: 640px) {
	.bdc-family-bank__tools { grid-template-columns: 1fr; }
}

.bdc-family-bank__tool {
	display: flex;
	gap: 1rem;
	align-items: flex-start;
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	padding: 1.25rem;
	transition: border-color var(--bdc-transition);
}
.bdc-family-bank__tool:hover { border-color: var(--bdc-gold-border); }

.bdc-family-bank__tool-icon {
	flex-shrink: 0;
	width: 2.5rem; height: 2.5rem;
	display: flex; align-items: center; justify-content: center;
	background: rgba(212,175,55,.08);
	color: var(--bdc-gold);
}

.bdc-family-bank__tool-label {
	font-size: .8125rem;
	font-weight: 700;
	color: var(--bdc-fg);
	margin-bottom: .25rem;
}

.bdc-family-bank__tool-desc {
	font-size: .75rem;
	color: var(--bdc-fg-muted);
	line-height: 1.55;
}

/* ============================================================
   SIR WEALTHINGTON QUOTE
   ============================================================ */
.bdc-sir-wealthington {
	padding: 5rem 0;
	background: var(--bdc-bg);
	border-top: 1px solid var(--bdc-border);
	border-bottom: 1px solid var(--bdc-border);
}

.bdc-sir-wealthington__figure {
	position: relative;
	max-width: 52rem;
	margin: 0 auto;
	text-align: center;
}

.bdc-sir-wealthington__mark {
	display: block;
	font-family: var(--bdc-font-serif);
	font-size: 6rem;
	line-height: .75;
	color: var(--bdc-gold);
	opacity: .25;
	margin-bottom: 1rem;
	user-select: none;
}

.bdc-sir-wealthington__quote {
	font-family: var(--bdc-font-serif);
	font-size: clamp(1.25rem, 3vw, 1.875rem);
	font-weight: 700;
	line-height: 1.45;
	color: var(--bdc-fg);
	font-style: italic;
	margin: 0 0 2rem;
}

.bdc-sir-wealthington__attribution {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.25rem;
}

.bdc-sir-wealthington__divider {
	display: block;
	width: 2.5rem;
	height: 1px;
	background: var(--bdc-gold);
	opacity: .4;
}

.bdc-sir-wealthington__name {
	font-family: var(--bdc-font-mono);
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--bdc-fg-muted);
}

/* ============================================================
   MOST READ THIS WEEK
   ============================================================ */
.bdc-most-read { }  /* inherits .bdc-section + .bdc-section--alt */

.bdc-most-read__list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.bdc-most-read__item {
	border-bottom: 1px solid var(--bdc-border);
}
.bdc-most-read__item:first-child { border-top: 1px solid var(--bdc-border); }

.bdc-most-read__link {
	display: flex;
	align-items: center;
	gap: 1.25rem;
	padding: 1.25rem 0;
	color: var(--bdc-fg);
	transition: background var(--bdc-transition);
	text-decoration: none;
}
.bdc-most-read__link:hover { color: var(--bdc-fg); }
.bdc-most-read__item:hover { background: rgba(255,255,255,.015); }

.bdc-most-read__rank {
	font-family: var(--bdc-font-mono);
	font-size: 1.375rem;
	font-weight: 700;
	color: rgba(212,175,55,.35);
	min-width: 2.5rem;
	line-height: 1;
	flex-shrink: 0;
}

.bdc-most-read__thumb {
	width: 80px; height: 80px;
	flex-shrink: 0;
	overflow: hidden;
}
.bdc-most-read__thumb img {
	width: 100%; height: 100%;
	object-fit: cover;
}

.bdc-most-read__body { flex: 1; min-width: 0; }

.bdc-most-read__cat {
	display: block;
	font-size: .5rem;
	font-weight: 700;
	letter-spacing: .15em;
	color: var(--bdc-gold);
	margin-bottom: .375rem;
}

.bdc-most-read__title {
	font-family: var(--bdc-font-serif);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--bdc-fg);
	margin: 0 0 .375rem;
	/* prevent very long titles from overflowing */
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
.bdc-most-read__link:hover .bdc-most-read__title { color: var(--bdc-gold); }

.bdc-most-read__meta {
	font-size: .6875rem;
	color: var(--bdc-fg-dim);
	display: flex;
	align-items: center;
	gap: .375rem;
}
.bdc-most-read__sep { color: var(--bdc-border-light); }

.bdc-most-read__arrow {
	font-size: 1rem;
	color: var(--bdc-fg-dim);
	flex-shrink: 0;
	transition: color var(--bdc-transition), transform var(--bdc-transition);
}
.bdc-most-read__link:hover .bdc-most-read__arrow {
	color: var(--bdc-gold);
	transform: translateX(3px);
}

/* ============================================================
   BROWSE BY CATEGORY
   ============================================================ */
.bdc-browse-cats { }  /* inherits .bdc-section */

.bdc-browse-cats__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.25rem;
}
@media (max-width: 1024px) { .bdc-browse-cats__grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 768px)  { .bdc-browse-cats__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 390px)  { .bdc-browse-cats__grid { grid-template-columns: 1fr; } }

.bdc-cat-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: .625rem;
	padding: 1.5rem;
	background: var(--bdc-cat-bg, var(--bdc-card));
	border: 1px solid var(--bdc-border);
	color: var(--bdc-fg);
	text-decoration: none;
	transition: border-color var(--bdc-transition), transform var(--bdc-transition), box-shadow var(--bdc-transition);
}
.bdc-cat-card:hover {
	border-color: var(--bdc-gold-border);
	transform: translateY(-2px);
	box-shadow: var(--bdc-shadow-gold);
	color: var(--bdc-fg);
}

.bdc-cat-card__icon {
	width: 2.25rem; height: 2.25rem;
	display: flex; align-items: center; justify-content: center;
	color: var(--bdc-gold);
}

.bdc-cat-card__name {
	font-family: var(--bdc-font-serif);
	font-size: 1rem;
	font-weight: 700;
	color: var(--bdc-fg);
	line-height: 1.25;
}

.bdc-cat-card__count {
	font-family: var(--bdc-font-mono);
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--bdc-fg-muted);
}

.bdc-cat-card__cta {
	font-size: .5625rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--bdc-gold);
	margin-top: auto;
	opacity: 0;
	transition: opacity var(--bdc-transition);
}
.bdc-cat-card:hover .bdc-cat-card__cta { opacity: 1; }

/* ============================================================
   SINGLE ARTICLE — KEY TAKEAWAYS
   ============================================================ */
.bdc-takeaways {
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	border-left: 3px solid var(--bdc-gold);
	padding: 1.5rem;
	margin-bottom: 2rem;
}

.bdc-takeaways__header {
	display: flex;
	align-items: center;
	gap: .625rem;
	margin-bottom: 1rem;
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--bdc-gold);
}
.bdc-takeaways__header svg { color: var(--bdc-gold); flex-shrink: 0; }

.bdc-takeaways__list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: .75rem;
}

.bdc-takeaways__list li {
	position: relative;
	padding-left: 1.25rem;
	font-size: .9375rem;
	color: var(--bdc-fg-muted);
	line-height: 1.6;
}
.bdc-takeaways__list li::before {
	content: '';
	position: absolute;
	left: 0; top: .55em;
	width: 6px; height: 6px;
	background: var(--bdc-gold);
	border-radius: 50%;
}

/* ============================================================
   SINGLE ARTICLE — EBOOK CTA
   ============================================================ */
.bdc-ebook-cta {
	display: flex;
	align-items: center;
	gap: 1.5rem;
	background: var(--bdc-card);
	border: 1px solid var(--bdc-border);
	padding: 1.75rem;
	margin: 2.5rem 0;
}
@media (max-width: 640px) {
	.bdc-ebook-cta { flex-direction: column; align-items: flex-start; }
}

.bdc-ebook-cta__icon {
	flex-shrink: 0;
	width: 3.5rem; height: 3.5rem;
	display: flex; align-items: center; justify-content: center;
	background: rgba(212,175,55,.08);
	color: var(--bdc-gold);
}

.bdc-ebook-cta__body { flex: 1; }

.bdc-ebook-cta__eyebrow {
	font-size: .5625rem;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--bdc-gold);
	margin-bottom: .375rem;
}

.bdc-ebook-cta__title {
	font-family: var(--bdc-font-serif);
	font-size: 1rem;
	font-weight: 700;
	color: var(--bdc-fg);
	line-height: 1.35;
	margin-bottom: .375rem;
}

.bdc-ebook-cta__desc {
	font-size: .8125rem;
	color: var(--bdc-fg-muted);
	margin: 0;
}

.bdc-ebook-cta__btn {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	background: var(--bdc-gold);
	color: #000;
	padding: .75rem 1.25rem;
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	white-space: nowrap;
	transition: background var(--bdc-transition);
}
.bdc-ebook-cta__btn:hover { background: var(--bdc-gold-light); color: #000; }

/* ============================================================
   SINGLE ARTICLE — INLINE NEWSLETTER CTA
   ============================================================ */
.bdc-inline-newsletter {
	background: var(--bdc-gold);
	padding: 2.5rem;
	margin: 2.5rem 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2.5rem;
	align-items: center;
}
@media (max-width: 768px) {
	.bdc-inline-newsletter { grid-template-columns: 1fr; gap: 1.5rem; }
}

.bdc-inline-newsletter__eyebrow {
	font-family: var(--bdc-font-mono);
	font-size: .5625rem;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: rgba(0,0,0,.55);
	margin-bottom: .375rem;
}

.bdc-inline-newsletter__title {
	font-family: var(--bdc-font-serif);
	font-size: 1.25rem;
	font-weight: 900;
	line-height: 1.2;
	color: #000;
	margin-bottom: .5rem;
}

.bdc-inline-newsletter__desc {
	font-size: .875rem;
	color: rgba(0,0,0,.65);
	line-height: 1.55;
	margin: 0;
}

.bdc-inline-newsletter__fields {
	display: flex;
	gap: 0;
}

.bdc-inline-newsletter__input {
	flex: 1;
	background: rgba(0,0,0,.12);
	border: 2px solid rgba(0,0,0,.25);
	border-right: none;
	color: #000;
	padding: .875rem 1rem;
	font-size: .875rem;
	min-width: 0;
}
.bdc-inline-newsletter__input::placeholder { color: rgba(0,0,0,.5); }
.bdc-inline-newsletter__input:focus { outline: none; border-color: rgba(0,0,0,.5); }

.bdc-inline-newsletter__btn {
	background: #000;
	color: var(--bdc-gold);
	border: 2px solid #000;
	padding: .875rem 1.25rem;
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	cursor: pointer;
	white-space: nowrap;
	transition: background var(--bdc-transition), color var(--bdc-transition);
}
.bdc-inline-newsletter__btn:hover {
	background: rgba(0,0,0,.85);
	color: var(--bdc-gold-light);
}

.bdc-inline-newsletter__disclaimer {
	font-size: .6875rem;
	color: rgba(0,0,0,.5);
	margin-top: .625rem;
}

/* ============================================================
   SINGLE ARTICLE — PREVIOUS / NEXT POST NAV
   ============================================================ */
.bdc-post-nav {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1px;
	background: var(--bdc-border);
	border: 1px solid var(--bdc-border);
	margin: 2.5rem 0;
}
@media (max-width: 640px) {
	.bdc-post-nav { grid-template-columns: 1fr; }
}

.bdc-post-nav__item {
	background: var(--bdc-card);
	padding: 1.25rem 1.5rem;
	display: flex;
	flex-direction: column;
	gap: .5rem;
}
.bdc-post-nav__item--next { text-align: right; }
.bdc-post-nav__item--next .bdc-post-nav__label { justify-content: flex-end; }

.bdc-post-nav__label {
	display: flex;
	align-items: center;
	gap: .375rem;
	font-family: var(--bdc-font-mono);
	font-size: .5625rem;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--bdc-fg-muted);
}

.bdc-post-nav__title {
	font-family: var(--bdc-font-serif);
	font-size: .9375rem;
	font-weight: 700;
	color: var(--bdc-fg);
	line-height: 1.35;
	transition: color var(--bdc-transition);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.bdc-post-nav__title:hover { color: var(--bdc-gold); }

/* ============================================================
   FULL-WIDTH OVERRIDE — v4 patch
   Extends v3 to cover new sections and Hello Elementor's
   body:not(.elementor-page) specificity.
   ============================================================ */

/* ── New homepage sections must span full viewport ───────────────────────── */
.bdc-legacy,
.bdc-family-bank,
.bdc-sir-wealthington,
.bdc-most-read,
.bdc-browse-cats {
	width:     100%;
	max-width: none;
	box-sizing: border-box;
}

/*
 * Hello Elementor v2 / v3 applies width constraints via the compound
 * selector `body:not(.elementor-page) .content-area` which has specificity
 * (0,2,0). Override it explicitly to beat that specificity regardless of
 * whether the body carries the `elementor-page` class.
 */
body .content-area,
body #primary,
body .site-main,
body:not(.elementor-page) .content-area,
body:not(.elementor-page) #primary,
body:not(.elementor-page) .site-main,
body.bdc-is-homepage .content-area,
body.bdc-is-homepage #primary,
body.bdc-is-homepage .site-main {
	width:         100% !important;
	max-width:     none !important;
	margin-left:   0    !important;
	margin-right:  0    !important;
	padding-left:  0    !important;
	padding-right: 0    !important;
	float:         none !important;
}

/* ── Hello Elementor header / footer wrappers ────────────────────────────── */
.site-header,
.site-footer,
#masthead,
#colophon {
	width:     100% !important;
	max-width: none !important;
}

/* ── Some HE versions wrap everything in .page-wrap ─────────────────────── */
.page-wrap {
	width:        100%  !important;
	max-width:    none  !important;
	margin-left:  0     !important;
	margin-right: 0     !important;
	padding-left: 0     !important;
	padding-right: 0    !important;
}
