/* ═══════════════════════════════════════════════════════════════
   BASKETRAFFLEIDEAS.COM — DESIGN SYSTEM v1.1
   Navy/gold editorial palette — deep navy primary, warm cream bg.
   Width system:
     Site max-width (header/footer/wide): 1160px
     Content max-width (article body):     860px
     Side padding:                           24px
   All spacing in px. No rem/em.
   ═══════════════════════════════════════════════════════════════ */

:root {
	--bri-navy:          #1C2B5E;
	--bri-navy-dark:     #243372;
	--bri-navy-deep:     #1A2255;
	--bri-orange:        #C8962E;
	--bri-orange-dark:   #A67A22;
	--bri-orange-soft:   #FBF5E8;
	--bri-orange-border: #E8D5A3;
	--bri-gold:          #E5B040;
	--bri-cream:         #FBF5E8;
	--bri-soft:          #F2EAD8;
	--bri-soft-purple:   #F5F0FB;
	--bri-white:         #FFFFFF;
	--bri-ink:           #2A2A2A;
	--bri-muted:         #5E6570;
	--bri-border:        #DDD4BB;
	--bri-warning:       #C85D16;
	--bri-success:       #2F7D5A;

	/* Layout */
	--bri-site-width:    1160px;
	--bri-content-width:  860px;
	--bri-side-pad:        24px;

	/* Radii & shadows */
	--bri-radius:        22px;
	--bri-radius-sm:     14px;
	--bri-shadow:        0 16px 40px rgba(28,43,94,0.08);
	--bri-shadow-sm:     0 4px 16px rgba(28,43,94,0.06);
}

/* ── RESET ── */
*, *::before, *::after { box-sizing: border-box; }

body {
	font-family: 'Inter', system-ui, sans-serif;
	font-size: 16px;
	line-height: 1.7;
	color: var(--bri-ink);
	background: var(--bri-cream);
	-webkit-font-smoothing: antialiased;
	margin: 0;
	padding: 0;
}

img { max-width: 100%; display: block; height: auto; }
a { color: var(--bri-navy); text-decoration: none; transition: color 0.15s; }
a:hover { color: var(--bri-orange); text-decoration: none; }

/* ── GP SUPPRESSION ── */
.nav-primary, .main-navigation,
.entry-header, .entry-footer, .breadcrumb,
.footer-widgets, .site-info, .wp-block-post-title { display: none !important; }
.site-main         { padding: 0 !important; margin: 0 !important; }
.content-area      { width: 100% !important; float: none !important; }
.inside-site-inner { max-width: none !important; padding: 0 !important; }
article, .inside-article { padding: 0 !important; margin: 0 !important; max-width: none !important; }

/* ── LAYOUT WRAPPERS ── */
.bri-container       { max-width: 1160px; margin: 0 auto; padding: 0 24px; }
.bri-container--wide { max-width: 1160px; margin: 0 auto; padding: 0 24px; }
.bri-page-wrap,
#bri-builder-canvas  { max-width: 1160px; margin: 0 auto; padding: 0 24px 64px; min-height: 60vh; }

/* ═══════════════════════════════════════════════════════════════
   AFFILIATION BAR
   ═══════════════════════════════════════════════════════════════ */
.bri-affil-bar {
	background: var(--bri-orange-soft);
	border-bottom: 1px solid var(--bri-orange-border);
	padding: 10px 24px;
	font-size: 13px;
	color: var(--bri-muted);
	text-align: center;
	width: 100%;
}
.bri-affil-bar strong { color: var(--bri-warning); font-weight: 700; }
.bri-affil-bar a { color: var(--bri-navy); font-weight: 600; text-decoration: underline; }

/* ═══════════════════════════════════════════════════════════════
   HEADER
   ═══════════════════════════════════════════════════════════════ */
.bri-header {
	position: sticky;
	top: 0;
	z-index: 200;
	background: rgba(251, 245, 232, 0.96);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border-bottom: 1px solid var(--bri-border);
	width: 100%;
}

.bri-header__inner {
	max-width: 1160px;
	margin: 0 auto;
	padding: 0 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 72px;
	gap: 20px;
}

/* Logo */
.bri-logo {
	font-family: 'Inter', sans-serif;
	font-size: 17px;
	font-weight: 900;
	color: var(--bri-navy);
	text-decoration: none;
	letter-spacing: -0.3px;
	display: inline-flex;
	align-items: center;
	gap: 9px;
	flex-shrink: 0;
}
.bri-logo__dot {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--bri-orange), var(--bri-gold));
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	flex-shrink: 0;
}
.bri-logo em   { font-style: normal; color: var(--bri-orange); }
.bri-logo span { color: var(--bri-muted); font-weight: 600; }
.bri-logo img  { height: 70px; width: auto; display: block; }
.bri-logo:hover { text-decoration: none; color: var(--bri-navy); }

/* Nav */
.bri-nav {
	display: flex;
	list-style: none;
	padding: 0;
	margin: 0;
	align-items: center;
	gap: 2px;
	flex-wrap: wrap;
}

.bri-nav > li { position: relative; }

.bri-nav > li > a {
	font-size: 14px;
	font-weight: 600;
	color: var(--bri-navy);
	text-decoration: none;
	padding: 7px 13px;
	border-radius: 8px;
	transition: all 0.15s;
	display: block;
	white-space: nowrap;
}
.bri-nav > li > a:hover {
	background: var(--bri-soft);
	color: var(--bri-navy);
	text-decoration: none;
}
.bri-nav > li > a.active { color: var(--bri-orange); }

/* CTA nav item */
.bri-nav-cta {
	background: var(--bri-navy) !important;
	color: var(--bri-white) !important;
	padding: 9px 20px !important;
	border-radius: 999px !important;
	font-weight: 800 !important;
	font-size: 13px !important;
	transition: background 0.15s !important;
	white-space: nowrap;
}
.bri-nav-cta:hover {
	background: var(--bri-navy-dark) !important;
	color: var(--bri-white) !important;
	text-decoration: none !important;
}

/* Phone nav item */
.bri-nav-phone a {
	color: var(--bri-muted) !important;
	font-size: 13px !important;
	font-weight: 600;
}
.bri-nav-phone a:hover { color: var(--bri-orange) !important; }

/* Mega menu */
.bri-nav-parent { position: relative; }

.bri-mega-menu {
	display: none;
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	background: var(--bri-white);
	border: 1px solid var(--bri-border);
	border-radius: 14px;
	box-shadow: var(--bri-shadow);
	padding: 20px;
	min-width: 220px;
	z-index: 300;
	gap: 24px;
	grid-auto-flow: column;
}
.bri-nav-parent:hover .bri-mega-menu { display: grid; }

.bri-mega-section h5 {
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 1.4px;
	text-transform: uppercase;
	color: var(--bri-muted);
	margin: 0 0 10px;
	padding: 0;
	font-family: 'Inter', sans-serif;
}
.bri-mega-section ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.bri-mega-section ul li a {
	font-size: 13px;
	font-weight: 600;
	color: var(--bri-navy);
	padding: 5px 8px;
	border-radius: 6px;
	display: block;
	transition: all 0.13s;
	white-space: nowrap;
}
.bri-mega-section ul li a:hover {
	background: var(--bri-orange-soft);
	color: var(--bri-orange);
	text-decoration: none;
}

/* ═══════════════════════════════════════════════════════════════
   FOOTER
   ═══════════════════════════════════════════════════════════════ */
.bri-footer {
	background: var(--bri-navy-deep);
	color: rgba(255, 255, 255, 0.7);
	margin-top: 64px;
	font-size: 14px;
}

.bri-footer__disclosure {
	background: rgba(255, 255, 255, 0.04);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	padding: 16px 0;
}
.bri-footer__disclosure-inner {
	max-width: 1160px;
	margin: 0 auto;
	padding: 0 24px;
	font-size: 12px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.5);
}
.bri-footer__disclosure-inner strong { color: var(--bri-gold); }
.bri-footer__disclosure-inner a { color: rgba(255,255,255,0.6); text-decoration: underline; }
.bri-footer__disclosure-inner a:hover { color: var(--bri-white); }

.bri-footer__inner {
	max-width: 1160px;
	margin: 0 auto;
	padding: 52px 24px 44px;
	display: grid;
	grid-template-columns: 2fr 1fr 1fr 1fr;
	gap: 40px;
	align-items: start;
}

.bri-footer__brand-name {
	font-size: 17px;
	font-weight: 900;
	color: var(--bri-white);
	letter-spacing: -0.3px;
	margin-bottom: 12px;
	display: inline-block;
	font-family: 'Inter', sans-serif;
	text-decoration: none;
}
.bri-footer__brand-name em   { font-style: normal; color: var(--bri-gold); }
.bri-footer__brand-name span { color: rgba(255,255,255,0.45); font-weight: 600; }
.bri-footer__brand-name img  { height: 120px; width: auto; display: block; }
.bri-footer__brand p {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.5);
	line-height: 1.6;
	margin: 0;
}

.bri-footer__col h4 {
	font-family: 'Inter', sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 1.2px;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.4);
	margin: 0 0 14px;
}
.bri-footer__col ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.bri-footer__col ul li { margin: 0; }
.bri-footer__col ul a {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.6);
	text-decoration: none;
	transition: color 0.15s;
}
.bri-footer__col ul a:hover { color: var(--bri-white); text-decoration: none; }

.bri-footer__bottom { border-top: 1px solid rgba(255,255,255,0.08); padding: 16px 0; }
.bri-footer__bottom-inner {
	max-width: 1160px;
	margin: 0 auto;
	padding: 0 24px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	font-size: 12px;
	color: rgba(255, 255, 255, 0.35);
}
.bri-footer__bottom-inner a { color: rgba(255,255,255,0.45); text-decoration: none; }
.bri-footer__bottom-inner a:hover { color: var(--bri-white); }

/* ═══════════════════════════════════════════════════════════════
   TYPOGRAPHY
   ═══════════════════════════════════════════════════════════════ */
h1, h2, h3, h4 {
	font-family: 'Inter', sans-serif;
	font-weight: 900;
	line-height: 1.1;
	color: var(--bri-navy);
	margin-top: 0;
	letter-spacing: -0.03em;
}
h1 { font-size: 48px; margin-bottom: 20px; }
h2 { font-size: 32px; margin: 40px 0 16px; }
h3 { font-size: 20px; font-weight: 700; margin: 28px 0 10px; }
h4 { font-size: 16px; font-weight: 700; margin: 20px 0 8px; }
p  { margin-bottom: 16px; }

/* ═══════════════════════════════════════════════════════════════
   BREADCRUMB
   ═══════════════════════════════════════════════════════════════ */
.bri-breadcrumb {
	background: var(--bri-white);
	border-bottom: 1px solid var(--bri-border);
	padding: 11px 0;
}
.bri-breadcrumb-inner {
	max-width: 1160px;
	margin: 0 auto;
	padding: 0 24px;
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	color: var(--bri-muted);
}
.bri-breadcrumb-inner a { color: var(--bri-muted); text-decoration: none; }
.bri-breadcrumb-inner a:hover { color: var(--bri-orange); }
.bri-bc-sep { opacity: 0.5; }
.bri-bc-current { color: var(--bri-navy); font-weight: 700; }

/* ═══════════════════════════════════════════════════════════════
   PAGE HERO
   ═══════════════════════════════════════════════════════════════ */
.bri-hero {
	background:
		radial-gradient(circle at top right, rgba(229,176,64,0.13), transparent 28%),
		radial-gradient(circle at left center, rgba(200,150,46,0.07), transparent 26%),
		var(--bri-white);
	padding: 72px 0 56px;
	border-bottom: 1px solid var(--bri-border);
	overflow: hidden;
}
.bri-hero__inner {
	max-width: 1160px;
	margin: 0 auto;
	padding: 0 24px;
}
.bri-hero__grid {
	display: grid;
	grid-template-columns: 1.1fr 0.9fr;
	gap: 44px;
	align-items: center;
}

.bri-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--bri-orange-soft);
	border: 1px solid var(--bri-orange-border);
	color: var(--bri-orange);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	padding: 6px 14px;
	border-radius: 999px;
	margin-bottom: 18px;
}

.bri-hero h1 {
	font-size: 48px;
	font-weight: 900;
	line-height: 1.03;
	letter-spacing: -0.04em;
	color: var(--bri-navy);
	margin-bottom: 18px;
}
.bri-hero h1 em { font-style: normal; color: var(--bri-orange); }

/* ═══════════════════════════════════════════════════════════════
   LABELS
   ═══════════════════════════════════════════════════════════════ */
.bri-label {
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 1.6px;
	text-transform: uppercase;
	display: inline-block;
	margin-bottom: 10px;
}
.bri-label--orange  { color: var(--bri-orange); }
.bri-label--navy    { color: var(--bri-navy); }
.bri-label--muted   { color: var(--bri-muted); }
.bri-label--success { color: var(--bri-success); }

/* ═══════════════════════════════════════════════════════════════
   DIVIDER
   ═══════════════════════════════════════════════════════════════ */
.bri-divider { border: none; border-top: 1px solid var(--bri-border); margin: 48px 0; }

/* ═══════════════════════════════════════════════════════════════
   CALLOUTS
   ═══════════════════════════════════════════════════════════════ */
.bri-callout {
	border-radius: var(--bri-radius);
	padding: 24px 28px;
	margin: 24px 0;
	font-size: 15px;
	box-shadow: var(--bri-shadow-sm);
}
.bri-callout--orange {
	background: var(--bri-orange-soft);
	border: 1px solid var(--bri-orange-border);
	border-left: 5px solid var(--bri-orange);
}
.bri-callout--navy {
	background: var(--bri-white);
	border: 1px solid var(--bri-border);
	border-left: 5px solid var(--bri-navy);
}
.bri-callout--dark {
	background: var(--bri-navy-deep);
	color: var(--bri-white);
	border-left: 5px solid var(--bri-gold);
}
.bri-callout--success {
	background: #EAF7F1;
	border: 1px solid #A8D5BC;
	border-left: 5px solid var(--bri-success);
}
.bri-callout__label {
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 2px;
	text-transform: uppercase;
	margin-bottom: 10px;
	display: block;
}
.bri-callout--orange .bri-callout__label { color: var(--bri-warning); }
.bri-callout--navy   .bri-callout__label { color: var(--bri-navy); }
.bri-callout--dark   .bri-callout__label { color: var(--bri-gold); }
.bri-callout--success .bri-callout__label { color: var(--bri-success); }

/* Quick answer */
.bri-quick-answer {
	background: linear-gradient(180deg, #ffffff, #fdf7ec);
	border: 1px solid var(--bri-border);
	border-left: 5px solid var(--bri-navy);
	border-radius: var(--bri-radius);
	padding: 24px 28px;
	box-shadow: var(--bri-shadow-sm);
	margin: 32px 0;
}
.bri-quick-answer .qa-label {
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--bri-navy);
	margin-bottom: 10px;
	display: block;
}
.bri-quick-answer p { color: var(--bri-muted); font-size: 15px; margin: 0; }
.bri-quick-answer strong { color: var(--bri-navy); }

/* Reality block */
.bri-reality-block {
	background: var(--bri-orange-soft);
	border: 1px solid var(--bri-orange-border);
	border-left: 5px solid var(--bri-orange);
	border-radius: var(--bri-radius);
	padding: 20px 24px;
	margin: 24px 0;
	box-shadow: var(--bri-shadow-sm);
}
.bri-reality-block .reality-label {
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--bri-orange);
	margin-bottom: 8px;
	display: block;
}
.bri-reality-block p { color: var(--bri-muted); font-size: 14px; line-height: 1.7; margin: 0; }

/* What-happens (soft purple) */
.bri-what-happens {
	background: var(--bri-soft-purple);
	border: 1px solid #ddd0ef;
	border-radius: var(--bri-radius);
	padding: 24px 28px;
	box-shadow: var(--bri-shadow-sm);
	margin: 24px 0;
}
.bri-what-happens .wh-label {
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #7B2FBE;
	margin-bottom: 16px;
	display: block;
}
.bri-what-happens ul { list-style: none; display: grid; gap: 14px; padding: 0; margin: 0; }
.bri-what-happens li { display: flex; align-items: flex-start; gap: 12px; color: var(--bri-muted); font-size: 14px; line-height: 1.65; }
.bri-what-happens .wh-check {
	width: 22px; height: 22px; border-radius: 6px;
	background: rgba(123,47,190,0.12); color: #7B2FBE;
	display: flex; align-items: center; justify-content: center;
	flex-shrink: 0; font-size: 11px; font-weight: 900; margin-top: 1px;
}

/* ═══════════════════════════════════════════════════════════════
   BUTTONS
   ═══════════════════════════════════════════════════════════════ */
.bri-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border-radius: 999px;
	padding: 12px 24px;
	font-family: 'Inter', sans-serif;
	font-size: 14px;
	font-weight: 800;
	border: 2px solid transparent;
	transition: all 0.18s;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	line-height: 1;
}
.bri-btn--primary {
	background: var(--bri-navy);
	color: var(--bri-white);
	box-shadow: 0 8px 20px rgba(28,43,94,0.22);
}
.bri-btn--primary:hover {
	background: var(--bri-navy-dark);
	color: var(--bri-white);
	transform: translateY(-1px);
	text-decoration: none;
}
.bri-btn--gold {
	background: var(--bri-gold);
	color: var(--bri-navy-deep);
	box-shadow: 0 8px 20px rgba(229,176,64,0.28);
}
.bri-btn--gold:hover {
	background: var(--bri-orange);
	color: var(--bri-white);
	transform: translateY(-1px);
	text-decoration: none;
}
.bri-btn--outline {
	background: var(--bri-white);
	color: var(--bri-navy);
	border-color: var(--bri-border);
}
.bri-btn--outline:hover {
	background: var(--bri-soft);
	color: var(--bri-navy);
	text-decoration: none;
}
.bri-btn--dark {
	background: transparent;
	color: var(--bri-white);
	border-color: rgba(255,255,255,0.34);
}
.bri-btn--dark:hover {
	background: rgba(255,255,255,0.1);
	color: var(--bri-white);
	text-decoration: none;
}
.bri-btn--lg { padding: 14px 30px; font-size: 16px; }

/* ═══════════════════════════════════════════════════════════════
   CTA BLOCK
   ═══════════════════════════════════════════════════════════════ */
.bri-cta,
.bri-bottom-cta {
	background: linear-gradient(160deg, var(--bri-navy-deep) 0%, var(--bri-navy) 65%, var(--bri-navy-dark) 100%);
	border-radius: var(--bri-radius);
	padding: 52px 48px;
	margin: 52px 0;
	text-align: center;
	color: var(--bri-white);
	position: relative;
	overflow: hidden;
	box-shadow: var(--bri-shadow);
}
.bri-cta::after,
.bri-bottom-cta::after {
	content: '';
	position: absolute;
	right: -40px;
	bottom: -40px;
	width: 220px;
	height: 220px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(229,176,64,0.18), transparent 68%);
	pointer-events: none;
}
.bri-cta h2,
.bri-bottom-cta h2 { color: var(--bri-white); margin: 0 0 14px; }
.bri-cta h2 span,
.bri-bottom-cta h2 span { color: var(--bri-gold); }
.bri-cta p,
.bri-bottom-cta p { color: rgba(255,255,255,0.65); margin-bottom: 28px; font-size: 16px; }
.bri-cta-label {
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--bri-gold);
	display: block;
	margin-bottom: 16px;
}
.bri-cta__buttons { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }
.bri-cta-phone { margin-top: 20px; font-size: 14px; color: rgba(255,255,255,0.45); }
.bri-cta-phone a { color: var(--bri-gold); font-weight: 700; }

/* Lead magnet variant */
.bri-lead-magnet {
	background: linear-gradient(160deg, var(--bri-navy-dark) 0%, var(--bri-navy) 65%, #384a59 100%);
	border-radius: var(--bri-radius);
	color: #fff;
	position: relative;
	overflow: hidden;
	box-shadow: var(--bri-shadow);
	margin: 40px 0;
	padding: 40px 38px;
}
.bri-lead-magnet::after {
	content: '';
	position: absolute;
	right: -40px;
	bottom: -40px;
	width: 220px;
	height: 220px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(229,176,64,0.18), transparent 68%);
	pointer-events: none;
}

/* ═══════════════════════════════════════════════════════════════
   THEME / CONTENT CARDS
   ═══════════════════════════════════════════════════════════════ */
.bri-card-grid-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.bri-card-grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.bri-card-grid-2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }

.bri-card,
.bri-theme-card,
.bri-related-card {
	background: var(--bri-white);
	border: 1px solid var(--bri-border);
	border-radius: var(--bri-radius);
	padding: 22px;
	box-shadow: var(--bri-shadow-sm);
	display: block;
	color: inherit;
	text-decoration: none;
	transition: all 0.18s;
}
.bri-card:hover,
.bri-theme-card:hover,
.bri-related-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 28px rgba(28,43,94,0.10);
	border-color: #C8B890;
	color: inherit;
	text-decoration: none;
}
.bri-card__icon { font-size: 24px; margin-bottom: 12px; line-height: 1; }
.bri-card__title {
	font-size: 15px;
	font-weight: 800;
	color: var(--bri-navy);
	margin-bottom: 8px;
	line-height: 1.3;
}
.bri-card__desc { font-size: 13px; color: var(--bri-muted); line-height: 1.6; }
.bri-card__tag,
.bri-theme-card .card-val,
.bri-related-card .rc-type {
	display: inline-block;
	margin-top: 12px;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #7a4a14;
	background: var(--bri-orange-soft);
	border: 1px solid var(--bri-orange-border);
	padding: 3px 10px;
	border-radius: 999px;
}
.bri-rc-type { color: var(--bri-orange); background: none; border: none; margin-top: 0; margin-bottom: 8px; padding: 0; }
.bri-rc-title { font-size: 16px; font-weight: 800; color: var(--bri-navy); margin-bottom: 10px; line-height: 1.3; }
.bri-rc-desc  { font-size: 13px; color: var(--bri-muted); line-height: 1.6; margin-bottom: 14px; }
.bri-rc-link  { color: var(--bri-orange); font-weight: 800; font-size: 13px; }

/* ═══════════════════════════════════════════════════════════════
   DATA CALLOUT (dark numbered block)
   ═══════════════════════════════════════════════════════════════ */
.bri-data-callout {
	background: var(--bri-navy-dark);
	border-radius: 20px;
	padding: 28px 32px;
	display: flex;
	gap: 24px;
	align-items: flex-start;
	color: var(--bri-white);
	box-shadow: var(--bri-shadow);
	margin: 28px 0;
}
.bri-data-num,
.bri-data-callout .data-num {
	font-size: 52px;
	font-weight: 900;
	line-height: 1;
	color: var(--bri-gold);
	letter-spacing: -0.04em;
	flex-shrink: 0;
}
.bri-data-context strong,
.bri-data-callout .data-context strong { display: block; font-size: 16px; color: var(--bri-white); margin-bottom: 8px; }
.bri-data-context p,
.bri-data-callout .data-context p { color: rgba(255,255,255,0.68); font-size: 14px; line-height: 1.65; margin: 0; }

/* ═══════════════════════════════════════════════════════════════
   RELATED CARDS GRID
   ═══════════════════════════════════════════════════════════════ */
.bri-related-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }

/* ═══════════════════════════════════════════════════════════════
   FAQ
   ═══════════════════════════════════════════════════════════════ */
.bri-faq { background: var(--bri-soft); border-radius: var(--bri-radius); padding: 32px; }
.bri-faq-item,
.bri-faq-item-card {
	background: var(--bri-white);
	border: 1px solid var(--bri-border);
	border-radius: var(--bri-radius-sm);
	padding: 20px 22px;
	box-shadow: var(--bri-shadow-sm);
	margin-bottom: 12px;
}
.bri-faq-item { border-bottom: 1px solid var(--bri-border); background: none; border-radius: 0; border: none; border-bottom: 1px solid var(--bri-border); padding: 20px 0; box-shadow: none; margin: 0; }
.bri-faq-item:first-child { padding-top: 0; }
.bri-faq-item:last-child  { border-bottom: none; padding-bottom: 0; }
.bri-faq-q,
.bri-faq-item .faq-q {
	font-size: 17px;
	font-weight: 800;
	color: var(--bri-navy);
	margin-bottom: 10px;
	line-height: 1.4;
}
.bri-faq-a,
.bri-faq-item .faq-a { font-size: 15px; color: var(--bri-muted); margin: 0; line-height: 1.72; }
.bri-faq-a a { color: var(--bri-navy); font-weight: 700; text-decoration: underline; }

/* ── Hotline story block ── */
.bri-hotline,
.bri-hotline-block {
	background: var(--bri-white);
	border: 1px solid var(--bri-border);
	border-left: 5px solid var(--bri-warning);
	border-radius: var(--bri-radius);
	padding: 28px 32px;
	box-shadow: var(--bri-shadow-sm);
	margin: 28px 0;
}
.bri-hotline__tag,
.bri-hotline-block .hotline-tag {
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--bri-warning);
	display: block;
	margin-bottom: 10px;
}
.bri-hotline blockquote,
.bri-hotline-block blockquote {
	font-size: 17px;
	font-weight: 800;
	color: var(--bri-navy);
	line-height: 1.5;
	margin: 0 0 12px;
	border: none;
	padding: 0;
	background: none;
}
.bri-hotline__body,
.bri-hotline-block .hotline-body { font-size: 14px; color: var(--bri-muted); line-height: 1.72; margin-bottom: 12px; }
.bri-hotline__lesson,
.bri-hotline-block .hotline-lesson {
	font-size: 14px;
	font-weight: 700;
	color: var(--bri-navy);
	border-top: 1px solid var(--bri-border);
	padding-top: 13px;
	line-height: 1.6;
}

/* ═══════════════════════════════════════════════════════════════
   PAGE IN-NAV STRIP
   ═══════════════════════════════════════════════════════════════ */
.bri-page-nav {
	background: var(--bri-white);
	border-top: 1px solid var(--bri-border);
	border-bottom: 1px solid var(--bri-border);
	padding: 13px 0;
}
.bri-page-nav a {
	white-space: nowrap;
	padding: 6px 12px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
	color: var(--bri-muted);
	transition: all 0.16s;
}
.bri-page-nav a:hover {
	background: var(--bri-soft);
	color: var(--bri-navy);
}

/* ═══════════════════════════════════════════════════════════════
   SECTION SCAFFOLD
   ═══════════════════════════════════════════════════════════════ */
.bri-section-head { margin-bottom: 24px; }
.bri-section-tag,
.bri-eyebrow-text {
	display: inline-block;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 1.6px;
	text-transform: uppercase;
	color: var(--bri-orange);
	margin-bottom: 10px;
}
.bri-section-head h2 {
	font-size: 34px;
	font-weight: 900;
	color: var(--bri-navy);
	line-height: 1.1;
	letter-spacing: -0.03em;
	margin: 0 0 10px;
}
.bri-section-head h2 em { font-style: normal; color: var(--bri-orange); }
.bri-section-head p { max-width: 860px; color: var(--bri-muted); font-size: 16px; margin: 0; }

/* ═══════════════════════════════════════════════════════════════
   PROSE
   ═══════════════════════════════════════════════════════════════ */
.bri-prose p { color: var(--bri-muted); font-size: 16px; margin-bottom: 18px; line-height: 1.78; }
.bri-prose p:last-child { margin-bottom: 0; }
.bri-prose a { color: var(--bri-navy); font-weight: 700; border-bottom: 1px solid var(--bri-border); transition: all 0.15s; }
.bri-prose a:hover { color: var(--bri-orange); border-color: var(--bri-orange); text-decoration: none; }
.bri-prose strong { color: var(--bri-navy); }

/* ═══════════════════════════════════════════════════════════════
   TABLE
   ═══════════════════════════════════════════════════════════════ */
.bri-table-wrap { overflow-x: auto; margin: 20px 0; }
.bri-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.bri-table th {
	padding: 10px 16px;
	text-align: left;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.5px;
	background: var(--bri-navy);
	color: var(--bri-white);
}
.bri-table td { padding: 10px 16px; border-bottom: 1px solid var(--bri-border); vertical-align: top; }
.bri-table tr:last-child td { border-bottom: none; }
.bri-table tr:nth-child(even) td { background: var(--bri-soft); }
.bri-table tr:nth-child(odd)  td { background: var(--bri-white); }

/* ═══════════════════════════════════════════════════════════════
   PRICING CARDS
   ═══════════════════════════════════════════════════════════════ */
.bri-pricing-card {
	background: var(--bri-white);
	border: 1px solid var(--bri-border);
	border-radius: var(--bri-radius);
	padding: 24px;
	box-shadow: var(--bri-shadow-sm);
}
.bri-pricing-card.highlighted {
	border-color: rgba(28,43,94,0.2);
	background: linear-gradient(180deg, #ffffff, #f9fafb);
}

/* ═══════════════════════════════════════════════════════════════
   UTILITY / BRAND CLASSES
   ═══════════════════════════════════════════════════════════════ */
.bri-bg-cream  { background-color: var(--bri-cream) !important; }
.bri-bg-soft   { background-color: var(--bri-soft) !important; }
.bri-bg-white  { background-color: var(--bri-white) !important; }
.bri-bg-navy   { background-color: var(--bri-navy) !important; }
.bri-bg-dark   { background-color: var(--bri-navy-dark) !important; }
.bri-bg-orange { background-color: var(--bri-orange) !important; }
.bri-text-orange { color: var(--bri-orange) !important; }
.bri-text-navy   { color: var(--bri-navy) !important; }
.bri-text-muted  { color: var(--bri-muted) !important; }
.bri-text-white  { color: #fff !important; }
.bri-source-note { font-size: 13px; color: var(--bri-muted); font-style: italic; margin-top: -8px; margin-bottom: 16px; }
.bri-affil-note  { font-size: 12px; color: var(--bri-muted); font-style: italic; margin-top: 6px; }

/* Gutenberg color palette awareness */
.has-bri-orange-color  { color: var(--bri-orange) !important; }
.has-bri-navy-color    { color: var(--bri-navy) !important; }
.has-bri-gold-color    { color: var(--bri-gold) !important; }
.has-bri-cream-background-color  { background-color: var(--bri-cream) !important; }
.has-bri-orange-background-color { background-color: var(--bri-orange) !important; }
.has-bri-navy-background-color   { background-color: var(--bri-navy) !important; }

/* Widget title */
.widget-title {
	color: var(--bri-navy);
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 16px;
	padding-bottom: 10px;
	border-bottom: 2px solid var(--bri-gold);
}

/* ═══════════════════════════════════════════════════════════════
   ANIMATIONS
   ═══════════════════════════════════════════════════════════════ */
@keyframes bri-fadeUp { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:none; } }
.bri-hero       { animation: bri-fadeUp 0.45s ease both; }
.bri-card       { animation: bri-fadeUp 0.4s ease both; }
.bri-card:nth-child(2) { animation-delay: 0.06s; }
.bri-card:nth-child(3) { animation-delay: 0.12s; }
.bri-card:nth-child(4) { animation-delay: 0.18s; }

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE — 900px
   ═══════════════════════════════════════════════════════════════ */
@media (max-width: 900px) {
	.bri-hero__grid { grid-template-columns: 1fr; }
	.bri-hero h1   { font-size: 36px; }
	.bri-footer__inner { grid-template-columns: 1fr 1fr; gap: 28px; }
	.bri-card-grid-4 { grid-template-columns: repeat(2, 1fr); }
	.bri-related-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE — 640px
   ═══════════════════════════════════════════════════════════════ */
@media (max-width: 640px) {
	.bri-header__inner { height: 64px; }
	.bri-logo          { font-size: 15px; }
	.bri-nav > li > a  { padding: 6px 9px; font-size: 13px; }
	.bri-hero          { padding: 48px 0 36px; }
	.bri-hero h1       { font-size: 30px; }
	.bri-footer__inner { grid-template-columns: 1fr; gap: 24px; }
	.bri-card-grid-4,
	.bri-card-grid-3   { grid-template-columns: 1fr; }
	.bri-related-grid  { grid-template-columns: 1fr; }
	.bri-cta,
	.bri-bottom-cta    { padding: 36px 24px; }
	.bri-data-callout  { flex-direction: column; gap: 12px; }
	.bri-data-num,
	.bri-data-callout .data-num { font-size: 40px; }
	.bri-lead-magnet   { padding: 30px 24px; }
}
