/* =========================================================================
   BlockHive Premium — main.css  v1.0.0
   Dark crypto fintech UI · glassmorphism · neon accents
   ====================================================================== */

:root {
	--bh-bg: #02060f;
	--bh-bg-alt: #060d1d;
	--bh-surface: rgba(255, 255, 255, 0.035);
	--bh-surface-strong: rgba(13, 22, 44, 0.85);
	--bh-border: rgba(140, 170, 220, 0.14);
	--bh-border-glow: rgba(34, 211, 238, 0.35);
	--bh-text: #e6edf7;
	--bh-muted: #8ca0b8;
	--bh-cyan: #22d3ee;
	--bh-blue: #3b82f6;
	--bh-blue-deep: #1d4ed8;
	--bh-green: #10b981;
	--bh-red: #ef4444;
	--bh-gradient: linear-gradient(120deg, #38e1f5 0%, #2e7cf6 55%, #1d4ed8 100%);
	--bh-font-display: "Space Grotesk", system-ui, sans-serif;
	--bh-font-body: "Inter", system-ui, sans-serif;
	--bh-radius: 18px;
	--bh-radius-sm: 12px;
	--bh-container: 1200px;
	--bh-shadow-glow: 0 0 40px rgba(34, 211, 238, 0.12);
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
	margin: 0;
	background: var(--bh-bg);
	color: var(--bh-text);
	font-family: var(--bh-font-body);
	font-size: 16px;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
}

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

h1, h2, h3, h4 {
	font-family: var(--bh-font-display);
	line-height: 1.15;
	margin: 0 0 0.6em;
	font-weight: 700;
	letter-spacing: -0.01em;
}

h2 { font-size: clamp(1.7rem, 3.4vw, 2.5rem); }
h3 { font-size: 1.15rem; }
p { margin: 0 0 1em; }
a { color: var(--bh-cyan); text-decoration: none; }
a:hover { color: #67e8f9; }

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
summary:focus-visible {
	outline: 2px solid var(--bh-cyan);
	outline-offset: 2px;
	border-radius: 4px;
}

.bh-container { width: min(var(--bh-container), 92%); margin-inline: auto; }
.bh-container--narrow { width: min(820px, 92%); }
.bh-center { text-align: center; }
.bh-center-flex { justify-content: center; }

.bh-skip-link {
	position: absolute; left: -9999px; top: 0;
	background: var(--bh-cyan); color: #04121a; padding: 10px 18px; z-index: 200;
	border-radius: 0 0 10px 0; font-weight: 600;
}
.bh-skip-link:focus { left: 0; }

.bh-up { color: var(--bh-green); }
.bh-down { color: var(--bh-red); }

.bh-text-gradient {
	display: block;
	background: var(--bh-gradient);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.bh-eyebrow {
	display: inline-block;
	font-family: var(--bh-font-display);
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--bh-cyan);
	margin-bottom: 14px;
	padding: 6px 14px;
	border: 1px solid rgba(34, 211, 238, 0.3);
	border-radius: 999px;
	background: rgba(34, 211, 238, 0.06);
}

/* ------------------------------------------------------------------ */
/* Buttons                                                             */
/* ------------------------------------------------------------------ */
.bh-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-family: var(--bh-font-display);
	font-weight: 600;
	font-size: 0.95rem;
	padding: 12px 26px;
	border-radius: 999px;
	border: 1px solid transparent;
	cursor: pointer;
	position: relative;
	overflow: hidden;
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}

.bh-btn--primary {
	background: var(--bh-gradient);
	color: #06111c;
	box-shadow: 0 6px 24px rgba(59, 130, 246, 0.35);
}
.bh-btn--primary:hover { transform: translateY(-2px); box-shadow: 0 10px 32px rgba(34, 211, 238, 0.45); color: #06111c; }

/* button hover shine */
.bh-btn--primary::after {
	content: "";
	position: absolute; inset: 0;
	background: linear-gradient(110deg, transparent 30%, rgba(255, 255, 255, 0.5) 50%, transparent 70%);
	transform: translateX(-120%);
	transition: transform 0.55s ease;
}
.bh-btn--primary:hover::after { transform: translateX(120%); }

.bh-btn--ghost {
	background: rgba(255, 255, 255, 0.03);
	border-color: var(--bh-border);
	color: var(--bh-text);
}
.bh-btn--ghost:hover { border-color: var(--bh-border-glow); box-shadow: var(--bh-shadow-glow); color: #fff; transform: translateY(-2px); }

.bh-btn--lg { padding: 15px 34px; font-size: 1.02rem; }
.bh-btn--block { width: 100%; }
.bh-btn--wa { background: #16a34a; color: #fff; border: none; }
.bh-btn--wa:hover { background: #15803d; color: #fff; }

/* ------------------------------------------------------------------ */
/* Header                                                              */
/* ------------------------------------------------------------------ */
.bh-header {
	position: sticky;
	top: 0;
	z-index: 100;
	background: rgba(6, 11, 24, 0.75);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	border-bottom: 1px solid transparent;
	transition: border-color 0.3s ease, background 0.3s ease;
}
.bh-header.is-scrolled { border-bottom-color: var(--bh-border); background: rgba(6, 11, 24, 0.92); }

.bh-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: 72px;
}

.bh-logo { display: inline-flex; align-items: center; gap: 11px; }
.bh-logo__mark, .bh-logo__img {
	width: 46px; height: 46px;
	flex: 0 0 auto;
	filter: drop-shadow(0 0 12px rgba(56, 225, 245, 0.5));
	transition: transform 0.3s ease, filter 0.3s ease;
}
.bh-logo:hover .bh-logo__mark { transform: rotate(6deg) scale(1.06); filter: drop-shadow(0 0 20px rgba(56, 225, 245, 0.85)); }
.bh-footer .bh-logo__mark { width: 42px; height: 42px; }
.bh-tagline {
	font-family: var(--bh-font-display);
	font-size: 0.72rem;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--bh-muted);
	margin: 10px 0 0;
}
.bh-logo__text {
	font-family: var(--bh-font-display);
	font-size: 1.22rem;
	font-weight: 700;
	color: #fff;
	letter-spacing: 0.14em;
}
.bh-logo__text span {
	background: linear-gradient(120deg, #38e1f5, #2e7cf6);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.custom-logo { max-height: 48px; width: auto; }

.bh-nav { display: flex; align-items: center; gap: 26px; }
.bh-nav__list {
	display: flex; align-items: center; gap: 4px;
	list-style: none; margin: 0; padding: 0;
}
.bh-nav__list a {
	display: block;
	padding: 8px 13px;
	color: var(--bh-muted);
	font-size: 0.93rem;
	font-weight: 500;
	border-radius: 8px;
	transition: color 0.2s ease, background 0.2s ease;
}
.bh-nav__list a:hover,
.bh-nav__list .current-menu-item > a { color: #fff; background: rgba(255, 255, 255, 0.05); }

.bh-nav__actions { display: flex; align-items: center; gap: 10px; }
.bh-nav__actions .bh-btn { padding: 9px 20px; font-size: 0.88rem; }

.bh-burger {
	display: none;
	flex-direction: column;
	gap: 5px;
	background: none;
	border: 1px solid var(--bh-border);
	border-radius: 10px;
	padding: 11px 10px;
	cursor: pointer;
}
.bh-burger span { display: block; width: 20px; height: 2px; background: var(--bh-text); transition: transform 0.25s ease, opacity 0.25s ease; }
.bh-burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.bh-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.bh-burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ------------------------------------------------------------------ */
/* Hero                                                                */
/* ------------------------------------------------------------------ */
.bh-hero { position: relative; overflow: hidden; padding: 80px 0 0; }

.bh-hero-grid {
	position: absolute; inset: 0;
	background-image:
		linear-gradient(rgba(34, 211, 238, 0.05) 1px, transparent 1px),
		linear-gradient(90deg, rgba(34, 211, 238, 0.05) 1px, transparent 1px);
	background-size: 48px 48px;
	mask-image: radial-gradient(ellipse 80% 70% at 50% 30%, #000 40%, transparent 100%);
	-webkit-mask-image: radial-gradient(ellipse 80% 70% at 50% 30%, #000 40%, transparent 100%);
	pointer-events: none;
}

.bh-hero__glow { position: absolute; border-radius: 50%; filter: blur(120px); opacity: 0.35; pointer-events: none; }
.bh-hero__glow--cyan { width: 480px; height: 480px; background: #0891b2; top: -160px; left: -120px; }
.bh-hero__glow--purple { width: 520px; height: 520px; background: #1d4ed8; bottom: -180px; right: -140px; }

.bh-hero__inner {
	position: relative;
	display: grid;
	grid-template-columns: 1.05fr 1fr;
	align-items: center;
	gap: 48px;
	padding-bottom: 72px;
}

.bh-hero__title { font-size: clamp(2.2rem, 5vw, 3.6rem); margin-bottom: 20px; }
.bh-hero__sub { font-size: 1.1rem; color: var(--bh-muted); max-width: 34rem; margin-bottom: 30px; }
.bh-hero__cta { display: flex; flex-wrap: wrap; gap: 14px; margin-bottom: 30px; }

.bh-hero__badges {
	display: flex; flex-wrap: wrap; gap: 8px;
	list-style: none; margin: 0; padding: 0;
}
.bh-hero__badges li {
	font-size: 0.78rem;
	color: var(--bh-muted);
	border: 1px solid var(--bh-border);
	background: var(--bh-surface);
	padding: 6px 12px;
	border-radius: 999px;
	display: inline-flex; align-items: center; gap: 6px;
}
.bh-hero__badges li::before { content: "✓"; color: var(--bh-green); font-weight: 700; }

/* Hero visual scene */
.bh-hero-scene { position: relative; min-height: 460px; }
.bh-hex-nodes { position: absolute; inset: -40px; opacity: 0.8; animation: bh-drift 14s ease-in-out infinite alternate; }

.bh-glass-dash {
	position: relative;
	background: var(--bh-surface-strong);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	border: 1px solid var(--bh-border);
	border-radius: var(--bh-radius);
	padding: 20px;
	box-shadow: 0 30px 80px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.06), var(--bh-shadow-glow);
	max-width: 420px;
	margin-inline: auto;
	transform-style: preserve-3d;
	will-change: transform;
}

.bh-glass-dash__bar { display: flex; align-items: center; gap: 6px; margin-bottom: 16px; }
.bh-dot { width: 9px; height: 9px; border-radius: 50%; }
.bh-dot--r { background: #f87171; } .bh-dot--y { background: #fbbf24; } .bh-dot--g { background: #34d399; }
.bh-glass-dash__title { margin-left: 10px; font-family: var(--bh-font-display); font-size: 0.85rem; color: var(--bh-muted); }

.bh-glass-dash__stats { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 14px; }
.bh-stat { background: rgba(255, 255, 255, 0.03); border: 1px solid var(--bh-border); border-radius: var(--bh-radius-sm); padding: 12px 14px; }
.bh-stat__label { display: block; font-size: 0.72rem; color: var(--bh-muted); text-transform: uppercase; letter-spacing: 0.08em; }
.bh-stat__value { display: block; font-family: var(--bh-font-display); font-size: 1.3rem; font-weight: 700; margin: 3px 0; }
.bh-stat__delta { font-size: 0.75rem; color: var(--bh-muted); }

.bh-glass-dash__chart { margin-bottom: 12px; }
.bh-glass-dash__chart svg { width: 100%; height: 110px; display: block; }
.bh-chart-line { stroke-dasharray: 600; stroke-dashoffset: 600; animation: bh-draw 2.2s ease forwards 0.4s; }

.bh-glass-dash__rows { display: grid; gap: 8px; }
.bh-row {
	display: grid; grid-template-columns: 28px 1fr auto;
	align-items: center; gap: 10px;
	font-size: 0.85rem;
	background: rgba(255, 255, 255, 0.025);
	border: 1px solid var(--bh-border);
	border-radius: 10px;
	padding: 8px 12px;
}

.bh-coin-mini {
	width: 28px; height: 28px; border-radius: 50%;
	display: inline-flex; align-items: center; justify-content: center;
	font-weight: 700; font-size: 0.85rem; color: #fff;
}
.bh-coin-mini--btc, .bh-coin-mini--b { background: linear-gradient(135deg, #f7931a, #b45309); }
.bh-coin-mini--eth, .bh-coin-mini--e { background: linear-gradient(135deg, #8b9dfc, #4c1d95); }
.bh-coin-mini--sol, .bh-coin-mini--s { background: linear-gradient(135deg, #14f195, #0e7490); }
.bh-coin-mini--bnb { background: linear-gradient(135deg, #f3ba2f, #92600a); }
.bh-coin-mini--xrp, .bh-coin-mini--x { background: linear-gradient(135deg, #64748b, #1e293b); }
.bh-coin-mini--ada, .bh-coin-mini--a { background: linear-gradient(135deg, #2563eb, #172554); }

/* Floating coins */
.bh-float-coin {
	position: absolute;
	width: 62px; height: 62px;
	border-radius: 50%;
	display: flex; align-items: center; justify-content: center;
	font-size: 1.5rem; font-weight: 700; color: #fff;
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.5), inset 0 2px 6px rgba(255, 255, 255, 0.35), 0 0 26px rgba(34, 211, 238, 0.25);
	animation: bh-float 6s ease-in-out infinite;
}
.bh-float-coin--btc { top: -8px; right: 8%; background: radial-gradient(circle at 30% 30%, #ffc46b, #f7931a 55%, #7c3a00); }
.bh-float-coin--eth { bottom: 16%; left: -6px; background: radial-gradient(circle at 30% 30%, #c7d2fe, #6366f1 55%, #312e81); animation-delay: -2s; }
.bh-float-coin--sol { bottom: -14px; right: 16%; width: 50px; height: 50px; background: radial-gradient(circle at 30% 30%, #99f6e4, #14b8a6 55%, #134e4a); animation-delay: -4s; }

.bh-float-card {
	position: absolute;
	background: var(--bh-surface-strong);
	backdrop-filter: blur(12px);
	border: 1px solid var(--bh-border);
	border-radius: var(--bh-radius-sm);
	padding: 10px 14px;
	font-size: 0.8rem;
	display: grid; gap: 2px;
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45);
	animation: bh-float 7s ease-in-out infinite;
}
.bh-float-card--price { top: 14%; left: -22px; animation-delay: -1.5s; }
.bh-float-card--verify { bottom: 8%; right: -10px; grid-auto-flow: column; align-items: center; gap: 8px; animation-delay: -3.5s; }
.bh-float-card__label { color: var(--bh-muted); font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.08em; }
.bh-float-card__value { font-family: var(--bh-font-display); font-weight: 700; font-size: 1rem; }
.bh-verify-check {
	width: 22px; height: 22px; border-radius: 50%;
	background: var(--bh-green); color: #04120c;
	display: inline-flex; align-items: center; justify-content: center;
	font-weight: 700; font-size: 0.8rem;
}

/* ------------------------------------------------------------------ */
/* Ticker                                                              */
/* ------------------------------------------------------------------ */
.bh-ticker {
	position: relative;
	border-top: 1px solid var(--bh-border);
	border-bottom: 1px solid var(--bh-border);
	background: linear-gradient(90deg, rgba(46,124,246,0.06), rgba(56,225,245,0.03), rgba(46,124,246,0.06));
	overflow: hidden;
}
.bh-ticker::before, .bh-ticker::after {
	content: "";
	position: absolute; top: 0; bottom: 0; width: 90px; z-index: 2; pointer-events: none;
}
.bh-ticker::before { left: 0; background: linear-gradient(90deg, var(--bh-bg), transparent); }
.bh-ticker::after { right: 0; background: linear-gradient(270deg, var(--bh-bg), transparent); }
.bh-ticker--page::before, .bh-ticker--page::after { background: linear-gradient(90deg, var(--bh-bg-alt), transparent); }
.bh-ticker--page::after { background: linear-gradient(270deg, var(--bh-bg-alt), transparent); }
.bh-ticker--page { border-top: none; }

.bh-ticker__track { display: flex; width: max-content; animation: bh-ticker 32s linear infinite; }
.bh-ticker:hover .bh-ticker__track { animation-play-state: paused; }
.bh-ticker__group { display: flex; }
.bh-ticker__item {
	display: inline-flex; align-items: center; gap: 9px;
	padding: 14px 26px;
	font-size: 0.9rem;
	border-right: 1px solid var(--bh-border);
	white-space: nowrap;
	position: relative;
}
.bh-ticker__item strong {
	font-family: var(--bh-font-display);
	font-weight: 700;
	letter-spacing: 0.02em;
	position: relative;
	padding-left: 16px;
}
.bh-ticker__item strong::before {
	content: "";
	position: absolute; left: 0; top: 50%; transform: translateY(-50%);
	width: 8px; height: 8px; border-radius: 50%;
	background: var(--bh-gradient);
	box-shadow: 0 0 8px rgba(56, 225, 245, 0.6);
}
.bh-ticker__price { color: var(--bh-text); font-weight: 600; }
.bh-ticker__change { font-size: 0.82rem; font-weight: 600; padding: 2px 8px; border-radius: 999px; }
.bh-ticker__change.bh-up { background: rgba(16, 185, 129, 0.12); }
.bh-ticker__change.bh-down { background: rgba(239, 68, 68, 0.12); }

/* ------------------------------------------------------------------ */
/* Sections & cards                                                    */
/* ------------------------------------------------------------------ */
.bh-section { padding: 88px 0; position: relative; }
.bh-section--alt { background: var(--bh-bg-alt); border-block: 1px solid rgba(140, 170, 220, 0.07); }

.bh-section__head { max-width: 660px; margin: 0 auto 52px; text-align: center; }
.bh-section__head h2 { position: relative; display: inline-block; }
.bh-section__head h2::after {
	content: "";
	display: block;
	width: 56px; height: 3px; margin: 18px auto 0;
	border-radius: 3px;
	background: var(--bh-gradient);
	box-shadow: 0 0 16px rgba(56, 225, 245, 0.5);
}
.bh-section__lead { color: var(--bh-muted); }

.bh-grid { display: grid; gap: 22px; }
.bh-grid--2 { grid-template-columns: repeat(2, 1fr); }
.bh-grid--3 { grid-template-columns: repeat(3, 1fr); }
.bh-grid--4 { grid-template-columns: repeat(4, 1fr); }

.bh-card {
	background: var(--bh-surface);
	border: 1px solid var(--bh-border);
	border-radius: var(--bh-radius);
	padding: 26px;
	position: relative;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.bh-card::before {
	content: "";
	position: absolute; inset: 0;
	border-radius: inherit;
	padding: 1px;
	background: linear-gradient(135deg, rgba(56,225,245,0.4), transparent 40%);
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor; mask-composite: exclude;
	opacity: 0; transition: opacity 0.3s ease;
	pointer-events: none;
}
.bh-card:hover::before { opacity: 1; }
.bh-card:hover {
	transform: translateY(-6px);
	border-color: var(--bh-border-glow);
	box-shadow: 0 20px 50px rgba(0,0,0,0.4), var(--bh-shadow-glow);
}
.bh-card p { color: var(--bh-muted); font-size: 0.93rem; margin-bottom: 0; }

.bh-card__icon {
	width: 46px; height: 46px;
	border-radius: 12px;
	display: flex; align-items: center; justify-content: center;
	background: linear-gradient(135deg, rgba(34, 211, 238, 0.15), rgba(46, 124, 246, 0.15));
	border: 1px solid rgba(34, 211, 238, 0.25);
	color: var(--bh-cyan);
	margin-bottom: 16px;
}
.bh-card__icon svg { width: 24px; height: 24px; }

.bh-card--quote p { color: var(--bh-text); font-size: 0.98rem; margin-bottom: 14px; }
.bh-quote__who {
	font-size: 0.8rem; color: var(--bh-cyan);
	font-family: var(--bh-font-display); font-weight: 600;
	text-transform: uppercase; letter-spacing: 0.1em;
}

/* Steps */
.bh-steps {
	display: grid; grid-template-columns: repeat(4, 1fr);
	gap: 22px; list-style: none; margin: 0; padding: 0;
	counter-reset: step;
	position: relative;
}
.bh-step {
	background: var(--bh-surface);
	border: 1px solid var(--bh-border);
	border-radius: var(--bh-radius);
	padding: 26px;
	position: relative;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.bh-step:hover { transform: translateY(-5px); border-color: var(--bh-border-glow); box-shadow: var(--bh-shadow-glow); }
.bh-step:not(:last-child)::after {
	content: "";
	position: absolute; top: 50%; right: -22px;
	width: 22px; height: 1px;
	background: linear-gradient(90deg, var(--bh-cyan), transparent);
}
.bh-step__num {
	font-family: var(--bh-font-display);
	font-size: 0.8rem; font-weight: 700;
	color: var(--bh-cyan);
	letter-spacing: 0.15em;
	display: inline-block; margin-bottom: 12px;
}
.bh-step__icon { color: var(--bh-cyan); margin-bottom: 12px; }
.bh-step__icon svg { width: 28px; height: 28px; }
.bh-step p { color: var(--bh-muted); font-size: 0.9rem; margin: 0; }

/* Plans */
.bh-plan {
	background: var(--bh-surface);
	border: 1px solid var(--bh-border);
	border-radius: var(--bh-radius);
	padding: 28px 24px;
	display: flex; flex-direction: column;
	position: relative;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.bh-plan:hover { transform: translateY(-6px); border-color: var(--bh-border-glow); box-shadow: var(--bh-shadow-glow); }
.bh-plan--featured {
	border-color: rgba(46, 124, 246, 0.55);
	background: linear-gradient(180deg, rgba(46, 124, 246, 0.1), rgba(34, 211, 238, 0.04));
	box-shadow: 0 0 44px rgba(46, 124, 246, 0.25);
}
.bh-plan__badge {
	position: absolute; top: -12px; left: 50%; transform: translateX(-50%);
	background: var(--bh-gradient); color: #06111c;
	font-family: var(--bh-font-display); font-weight: 700; font-size: 0.72rem;
	letter-spacing: 0.12em; text-transform: uppercase;
	padding: 5px 16px; border-radius: 999px;
}
.bh-plan__name { font-size: 1.25rem; margin-bottom: 4px; }
.bh-plan__desc { font-size: 0.85rem; color: var(--bh-muted); }
.bh-plan__return { margin: 14px 0 18px; }
.bh-plan__return span {
	font-family: var(--bh-font-display); font-size: 2.2rem; font-weight: 700;
	background: var(--bh-gradient);
	-webkit-background-clip: text; background-clip: text; color: transparent;
	display: block; line-height: 1;
}
.bh-plan__return small { color: var(--bh-muted); font-size: 0.78rem; }
.bh-plan__meta { list-style: none; margin: 0 0 22px; padding: 0; display: grid; gap: 10px; flex: 1; }
.bh-plan__meta li {
	display: flex; justify-content: space-between;
	font-size: 0.88rem;
	border-bottom: 1px dashed rgba(140, 170, 220, 0.15);
	padding-bottom: 10px;
}
.bh-plan__meta span { color: var(--bh-muted); }

/* Market cards */
.bh-market-card {
	background: var(--bh-surface);
	border: 1px solid var(--bh-border);
	border-radius: var(--bh-radius);
	padding: 22px;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.bh-market-card:hover { transform: translateY(-5px); border-color: var(--bh-border-glow); box-shadow: var(--bh-shadow-glow); }
.bh-market-card__head { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.bh-market-card__head strong { font-family: var(--bh-font-display); display: block; line-height: 1.1; }
.bh-market-card__name { color: var(--bh-muted); font-size: 0.78rem; }
.bh-market-card__dir { margin-left: auto; font-size: 0.85rem; }
.bh-market-card__price { font-family: var(--bh-font-display); font-size: 1.5rem; font-weight: 700; }
.bh-market-card__change { font-size: 0.85rem; margin-bottom: 12px; }
.bh-market-card__change small { color: var(--bh-muted); }
.bh-market-card__spark { width: 100%; height: 34px; }
.bh-spark--up { color: var(--bh-green); }
.bh-spark--down { color: var(--bh-red); }

/* Split sections */
.bh-split { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
.bh-checklist { list-style: none; margin: 0 0 26px; padding: 0; display: grid; gap: 12px; }
.bh-checklist li { display: flex; gap: 12px; align-items: flex-start; color: var(--bh-muted); }
.bh-checklist li::before {
	content: "✓";
	flex: 0 0 auto;
	width: 22px; height: 22px; border-radius: 50%;
	background: rgba(16, 185, 129, 0.15);
	border: 1px solid rgba(16, 185, 129, 0.4);
	color: var(--bh-green);
	display: inline-flex; align-items: center; justify-content: center;
	font-size: 0.75rem; font-weight: 700;
	margin-top: 2px;
}

/* Dashboard mockup */
.bh-dash-mock {
	background: var(--bh-surface-strong);
	backdrop-filter: blur(18px);
	border: 1px solid var(--bh-border);
	border-radius: var(--bh-radius);
	padding: 20px;
	box-shadow: 0 30px 80px rgba(0, 0, 0, 0.5), var(--bh-shadow-glow);
	will-change: transform;
}
.bh-dash-mock__top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }
.bh-dash-mock__brand { font-family: var(--bh-font-display); font-weight: 700; color: var(--bh-cyan); }
.bh-dash-mock__bell { position: relative; color: var(--bh-muted); display: inline-flex; }
.bh-dash-mock__bell-dot {
	position: absolute; top: -2px; right: -2px;
	width: 8px; height: 8px; border-radius: 50%;
	background: var(--bh-red);
	animation: bh-pulse 2s infinite;
}
.bh-dash-mock__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 14px; }
.bh-mini-stat {
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid var(--bh-border);
	border-radius: 10px; padding: 10px 12px;
}
.bh-mini-stat span { display: block; font-size: 0.65rem; color: var(--bh-muted); text-transform: uppercase; letter-spacing: 0.07em; }
.bh-mini-stat strong { font-family: var(--bh-font-display); font-size: 0.98rem; }
.bh-dash-mock__table { display: grid; gap: 6px; margin-bottom: 14px; }
.bh-dash-row {
	display: grid; grid-template-columns: 1fr auto auto;
	gap: 12px; align-items: center;
	font-size: 0.8rem;
	background: rgba(255, 255, 255, 0.02);
	border: 1px solid var(--bh-border);
	border-radius: 8px;
	padding: 8px 12px;
}
.bh-dash-row--head { background: none; border: none; color: var(--bh-muted); font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.08em; padding-block: 2px; }
.bh-pill { font-size: 0.68rem; padding: 3px 10px; border-radius: 999px; font-weight: 600; }
.bh-pill--ok { background: rgba(16, 185, 129, 0.15); color: var(--bh-green); border: 1px solid rgba(16, 185, 129, 0.35); }
.bh-pill--wait { background: rgba(251, 191, 36, 0.12); color: #fbbf24; border: 1px solid rgba(251, 191, 36, 0.35); }
.bh-dash-mock__ref {
	display: flex; justify-content: space-between; align-items: center;
	background: rgba(34, 211, 238, 0.06);
	border: 1px dashed rgba(34, 211, 238, 0.35);
	border-radius: 10px; padding: 10px 14px;
	font-size: 0.8rem; color: var(--bh-muted);
}
.bh-dash-mock__ref code { color: var(--bh-cyan); font-size: 0.82rem; }

/* Timeline */
.bh-timeline { list-style: none; margin: 0 0 40px; padding: 0; position: relative; }
.bh-timeline::before {
	content: "";
	position: absolute; left: 27px; top: 10px; bottom: 10px;
	width: 1px;
	background: linear-gradient(180deg, var(--bh-cyan), var(--bh-blue-deep));
	opacity: 0.4;
}
.bh-timeline__item { display: flex; gap: 24px; padding: 18px 0; position: relative; }
.bh-timeline__num {
	flex: 0 0 auto;
	width: 54px; height: 54px;
	border-radius: 50%;
	background: var(--bh-bg-alt);
	border: 1px solid var(--bh-border-glow);
	color: var(--bh-cyan);
	font-family: var(--bh-font-display); font-weight: 700;
	display: flex; align-items: center; justify-content: center;
	box-shadow: var(--bh-shadow-glow);
	position: relative; z-index: 1;
}
.bh-timeline__body h3 { margin-bottom: 4px; }
.bh-timeline__body p { color: var(--bh-muted); margin: 0; }

.bh-numbered { color: var(--bh-muted); display: grid; gap: 10px; padding-left: 22px; margin-bottom: 34px; }
.bh-numbered li::marker { color: var(--bh-cyan); font-weight: 700; }

/* FAQ */
.bh-faq { display: grid; gap: 12px; margin-bottom: 34px; }
.bh-faq__item {
	background: var(--bh-surface);
	border: 1px solid var(--bh-border);
	border-radius: var(--bh-radius-sm);
	overflow: hidden;
	transition: border-color 0.25s ease;
}
.bh-faq__item[open] { border-color: var(--bh-border-glow); }
.bh-faq__item summary {
	display: flex; justify-content: space-between; align-items: center; gap: 16px;
	cursor: pointer;
	padding: 18px 22px;
	font-family: var(--bh-font-display);
	font-weight: 600;
	list-style: none;
}
.bh-faq__item summary::-webkit-details-marker { display: none; }
.bh-faq__chev {
	flex: 0 0 auto;
	width: 10px; height: 10px;
	border-right: 2px solid var(--bh-cyan);
	border-bottom: 2px solid var(--bh-cyan);
	transform: rotate(45deg);
	transition: transform 0.25s ease;
}
.bh-faq__item[open] .bh-faq__chev { transform: rotate(225deg); }
.bh-faq__item p { padding: 0 22px 18px; color: var(--bh-muted); margin: 0; }

/* Chart panel */
.bh-chart-panel {
	background: var(--bh-surface);
	border: 1px solid var(--bh-border);
	border-radius: var(--bh-radius);
	padding: 24px;
}
.bh-chart-panel svg { width: 100%; height: 240px; display: block; }
.bh-chart-panel__note { color: var(--bh-muted); font-size: 0.8rem; text-align: right; margin: 10px 0 0; }

/* Page hero */
.bh-page-hero { position: relative; overflow: hidden; padding: 84px 0 60px; text-align: center; }
.bh-page-hero__title { font-size: clamp(2rem, 4.4vw, 3rem); }
.bh-page-hero__lead { color: var(--bh-muted); max-width: 620px; margin: 0 auto; font-size: 1.05rem; }

/* Final CTA */
.bh-cta-final {
	position: relative; overflow: hidden;
	padding: 92px 0;
	background:
		radial-gradient(ellipse 60% 80% at 50% 120%, rgba(46, 124, 246, 0.28), transparent),
		var(--bh-bg-alt);
	border-top: 1px solid rgba(140, 170, 220, 0.07);
}
.bh-cta-final__title { font-size: clamp(1.8rem, 3.6vw, 2.6rem); margin-bottom: 28px; }
.bh-cta-final .bh-risk-note { margin-top: 26px; }

/* Risk note */
.bh-risk-note {
	color: var(--bh-muted);
	font-size: 0.82rem;
	text-align: center;
	max-width: 620px;
	margin: 34px auto 0;
	padding: 12px 20px;
	border: 1px dashed rgba(140, 170, 220, 0.25);
	border-radius: var(--bh-radius-sm);
	background: rgba(255, 255, 255, 0.02);
}

/* ------------------------------------------------------------------ */
/* Portal (plugin) pages                                               */
/* ------------------------------------------------------------------ */
.bh-portal { position: relative; overflow: hidden; padding: 70px 0 90px; min-height: 60vh; }
.bh-portal__head { text-align: center; margin-bottom: 34px; position: relative; }
.bh-portal__panel {
	position: relative;
	background: var(--bh-surface-strong);
	backdrop-filter: blur(16px);
	border: 1px solid var(--bh-border);
	border-radius: var(--bh-radius);
	padding: 34px;
	max-width: 520px;
	margin-inline: auto;
	box-shadow: 0 30px 80px rgba(0, 0, 0, 0.45), var(--bh-shadow-glow);
}
.bh-portal__panel--wide { max-width: none; }
/* Register / invest form ships its own card — strip the outer box entirely */
.bh-portal__panel--flush {
	background: transparent;
	border: none;
	box-shadow: none;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	padding: 0;
	max-width: 1080px;
}
/* Style the plugin's inner cards to match BlockHive */
.bh-portal__panel--flush > * { color: var(--bh-text); }

/* Style common plugin form elements inside portal panels */
.bh-portal__panel input[type="text"],
.bh-portal__panel input[type="email"],
.bh-portal__panel input[type="password"],
.bh-portal__panel input[type="number"],
.bh-portal__panel select,
.bh-portal__panel textarea,
.bh-form input, .bh-form textarea, .bh-form select {
	width: 100%;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid var(--bh-border);
	border-radius: 10px;
	color: var(--bh-text);
	padding: 12px 14px;
	font-family: var(--bh-font-body);
	font-size: 0.95rem;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.bh-portal__panel input:focus,
.bh-portal__panel select:focus,
.bh-portal__panel textarea:focus,
.bh-form input:focus, .bh-form textarea:focus {
	border-color: var(--bh-border-glow);
	box-shadow: 0 0 0 3px rgba(34, 211, 238, 0.12);
	outline: none;
}
.bh-portal__panel input[type="submit"],
.bh-portal__panel button[type="submit"] {
	width: auto;
	background: var(--bh-gradient);
	color: #06111c;
	border: none;
	border-radius: 999px;
	font-family: var(--bh-font-display);
	font-weight: 600;
	padding: 12px 30px;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.bh-portal__panel input[type="submit"]:hover,
.bh-portal__panel button[type="submit"]:hover { transform: translateY(-2px); box-shadow: 0 10px 32px rgba(34, 211, 238, 0.4); }
.bh-portal__panel label { font-size: 0.85rem; color: var(--bh-muted); }
.bh-portal__panel table { width: 100%; border-collapse: collapse; }
.bh-portal__panel th, .bh-portal__panel td { border-bottom: 1px solid var(--bh-border); padding: 10px 12px; text-align: left; font-size: 0.9rem; }

/* Plugin-missing placeholder */
.bh-plugin-placeholder { text-align: center; padding: 20px 6px; }
.bh-plugin-placeholder__icon { font-size: 2rem; margin-bottom: 10px; }
.bh-plugin-placeholder p { color: var(--bh-muted); font-size: 0.9rem; }

/* Forms */
.bh-form { display: grid; gap: 16px; }
.bh-form__row { display: grid; gap: 6px; }
.bh-form__row label { font-size: 0.85rem; color: var(--bh-muted); font-weight: 500; }
.bh-form-title { font-size: 1.3rem; }
.bh-hp { position: absolute; left: -9999px; }
.bh-alert { border-radius: 10px; padding: 12px 16px; font-size: 0.9rem; }
.bh-alert--ok { background: rgba(16, 185, 129, 0.12); border: 1px solid rgba(16, 185, 129, 0.4); color: var(--bh-green); }
.bh-alert--err { background: rgba(239, 68, 68, 0.12); border: 1px solid rgba(239, 68, 68, 0.4); color: #fca5a5; }

.bh-contact-cards { display: grid; gap: 16px; grid-template-columns: 1fr 1fr; }
.bh-contact-cards .bh-card h3 { font-size: 1rem; }
.bh-contact-cards .bh-card p { margin: 0; }

/* Prose (legal / default pages) */
.bh-prose h2 { font-size: 1.4rem; margin-top: 1.8em; }
.bh-prose p, .bh-prose li { color: var(--bh-muted); }
.bh-prose strong { color: var(--bh-text); }
.bh-prose ul { padding-left: 22px; }

/* ------------------------------------------------------------------ */
/* Footer                                                              */
/* ------------------------------------------------------------------ */
.bh-footer {
	background: #040814;
	border-top: 1px solid var(--bh-border);
	padding: 64px 0 30px;
}
.bh-footer__grid {
	display: grid;
	grid-template-columns: 1.6fr 1fr 1fr 1fr;
	gap: 40px;
	margin-bottom: 44px;
}
.bh-footer__about { color: var(--bh-muted); font-size: 0.9rem; margin-top: 14px; max-width: 300px; }
.bh-footer__col h4 {
	font-size: 0.82rem;
	text-transform: uppercase;
	letter-spacing: 0.14em;
	color: var(--bh-text);
	margin-bottom: 16px;
}
.bh-footer__col ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.bh-footer__col ul a { color: var(--bh-muted); font-size: 0.9rem; transition: color 0.2s ease; }
.bh-footer__col ul a:hover { color: var(--bh-cyan); }
.bh-footer__social { display: flex; gap: 10px; margin-top: 18px; }
.bh-footer__social a {
	width: 36px; height: 36px;
	border-radius: 10px;
	border: 1px solid var(--bh-border);
	display: inline-flex; align-items: center; justify-content: center;
	color: var(--bh-muted);
	transition: color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.bh-footer__social a:hover { color: var(--bh-cyan); border-color: var(--bh-border-glow); box-shadow: var(--bh-shadow-glow); }
.bh-footer__bottom { border-top: 1px solid rgba(140, 170, 220, 0.08); padding-top: 24px; text-align: center; }
.bh-footer__disclaimer { color: var(--bh-muted); font-size: 0.78rem; max-width: 720px; margin: 0 auto 10px; }
.bh-footer__copy { color: rgba(140, 160, 184, 0.6); font-size: 0.78rem; margin: 0; }

/* ------------------------------------------------------------------ */
/* Reveal animation                                                    */
/* ------------------------------------------------------------------ */
.bh-reveal { opacity: 0; transform: translateY(26px); transition: opacity 0.7s ease, transform 0.7s ease; }
.bh-reveal.is-visible { opacity: 1; transform: none; }
.no-js .bh-reveal { opacity: 1; transform: none; }

/* ------------------------------------------------------------------ */
/* Keyframes                                                           */
/* ------------------------------------------------------------------ */
@keyframes bh-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-16px); } }
@keyframes bh-drift { from { transform: translate(0, 0); } to { transform: translate(12px, -10px); } }
@keyframes bh-ticker { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes bh-draw { to { stroke-dashoffset: 0; } }
@keyframes bh-pulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.5); } 50% { box-shadow: 0 0 0 6px rgba(239, 68, 68, 0); } }

/* ------------------------------------------------------------------ */
/* Responsive                                                          */
/* ------------------------------------------------------------------ */
@media (max-width: 1020px) {
	.bh-grid--4 { grid-template-columns: repeat(2, 1fr); }
	.bh-steps { grid-template-columns: repeat(2, 1fr); }
	.bh-step:not(:last-child)::after { display: none; }
	.bh-hero__inner { grid-template-columns: 1fr; text-align: center; }
	.bh-hero__sub { margin-inline: auto; }
	.bh-hero__cta, .bh-hero__badges { justify-content: center; }
	.bh-hero-scene { min-height: 0; margin-top: 20px; }
	.bh-float-card--price { left: 0; }
	.bh-float-card--verify { right: 0; }
	.bh-split { grid-template-columns: 1fr; gap: 40px; }
	.bh-footer__grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 860px) {
	.bh-nav {
		position: fixed;
		top: 72px; left: 0; right: 0;
		background: rgba(6, 11, 24, 0.98);
		backdrop-filter: blur(16px);
		border-bottom: 1px solid var(--bh-border);
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		padding: 16px 4vw 24px;
		transform: translateY(-12px);
		opacity: 0;
		visibility: hidden;
		transition: transform 0.25s ease, opacity 0.25s ease, visibility 0.25s ease;
		max-height: calc(100vh - 72px);
		overflow-y: auto;
	}
	.bh-nav.is-open { transform: none; opacity: 1; visibility: visible; }
	.bh-nav__list { flex-direction: column; align-items: stretch; gap: 2px; }
	.bh-nav__list a { padding: 13px 12px; font-size: 1rem; }
	.bh-nav__actions { flex-direction: column; align-items: stretch; margin-top: 14px; gap: 10px; }
	.bh-burger { display: flex; }
}

@media (max-width: 640px) {
	.bh-section { padding: 60px 0; }
	.bh-grid--2, .bh-grid--3, .bh-grid--4, .bh-steps { grid-template-columns: 1fr; }
	.bh-contact-cards { grid-template-columns: 1fr; }
	.bh-glass-dash { max-width: 100%; }
	.bh-float-coin--btc { right: 0; }
	.bh-portal__panel { padding: 24px 18px; }
	.bh-timeline::before { left: 21px; }
	.bh-timeline__num { width: 42px; height: 42px; font-size: 0.8rem; }
	.bh-footer__grid { grid-template-columns: 1fr; gap: 28px; }
	.bh-hero { padding-top: 52px; }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
	.bh-reveal { opacity: 1; transform: none; }
	html { scroll-behavior: auto; }
}

/* ------------------------------------------------------------------ */
/* v1.0.3 additions — live badge, WhatsApp float                       */
/* ------------------------------------------------------------------ */
.bh-ticker__live {
	display: inline-flex; align-items: center; gap: 7px;
	padding: 14px 20px;
	font-family: var(--bh-font-display);
	font-size: 0.75rem; font-weight: 700;
	letter-spacing: 0.16em;
	color: var(--bh-cyan);
	border-right: 1px solid var(--bh-border);
	background: rgba(56, 225, 245, 0.06);
	position: relative; z-index: 3;
	flex: 0 0 auto;
}
.bh-live-dot {
	width: 8px; height: 8px; border-radius: 50%;
	background: #64748b;
}
.bh-live-dot.is-live { background: var(--bh-green); animation: bh-livepulse 1.6s ease-in-out infinite; }
@keyframes bh-livepulse {
	0%, 100% { box-shadow: 0 0 0 0 rgba(16,185,129,0.6); }
	50% { box-shadow: 0 0 0 6px rgba(16,185,129,0); }
}
.bh-ticker { display: flex; align-items: stretch; }
.bh-ticker__track { flex: 1; }

.bh-wa-float {
	position: fixed; right: 22px; bottom: 22px; z-index: 120;
	display: inline-flex; align-items: center; gap: 10px;
	background: #22c35e; color: #fff;
	padding: 12px 18px 12px 14px;
	border-radius: 999px;
	font-family: var(--bh-font-display); font-weight: 600; font-size: 0.9rem;
	box-shadow: 0 12px 30px rgba(34, 195, 94, 0.45);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.bh-wa-float:hover { transform: translateY(-3px) scale(1.03); box-shadow: 0 16px 40px rgba(34, 195, 94, 0.6); color: #fff; }
.bh-wa-float svg { flex: 0 0 auto; }
@media (max-width: 640px) {
	.bh-wa-float span { display: none; }
	.bh-wa-float { padding: 14px; right: 16px; bottom: 16px; }
}

/* ------------------------------------------------------------------ */
/* Plugin (CIP) shortcode harmonisation — match plugin UI to brand     */
/* Scoped to portal panels so it never leaks into other plugins.       */
/* ------------------------------------------------------------------ */
.bh-portal__panel--flush .cip-plan-card,
.bh-portal__panel--flush [class*="plan"],
.bh-portal__panel .cip-card,
.bh-portal__panel [class*="cip-"] {
	border-radius: var(--bh-radius-sm);
}
/* Recolor plugin's purple ROI figures / links to brand cyan-blue */
.bh-portal__panel--flush [style*="rgb(139"],
.bh-portal__panel--flush [style*="#8b5cf6"],
.bh-portal__panel--flush [style*="#7c3aed"],
.bh-portal__panel [style*="#8b5cf6"] { color: var(--bh-cyan) !important; }

/* Force plugin primary buttons to brand gradient */
.bh-portal__panel button:not(.bh-btn),
.bh-portal__panel .button,
.bh-portal__panel input[type="submit"],
.bh-portal__panel--flush button,
.bh-portal__panel--flush input[type="submit"],
.bh-portal__panel--flush .btn-primary,
.bh-portal__panel--flush a.button {
	background: var(--bh-gradient) !important;
	color: #06111c !important;
	border: none !important;
	border-radius: 999px !important;
	font-family: var(--bh-font-display) !important;
	font-weight: 600 !important;
	box-shadow: 0 6px 20px rgba(46, 124, 246, 0.35);
}
/* Links inside plugin panels (e.g. "Log in") to brand cyan */
.bh-portal__panel--flush a { color: var(--bh-cyan); }

/* Live timestamp in ticker badge */
.bh-ticker__stamp {
	display: block;
	font-size: 0.6rem;
	font-weight: 500;
	letter-spacing: 0.06em;
	color: var(--bh-muted);
	margin-top: 2px;
	text-transform: none;
	white-space: nowrap;
}
.bh-ticker__live { flex-direction: column; align-items: flex-start; justify-content: center; gap: 2px; }
.bh-ticker__live > span:first-child { display: inline-block; }

/* ------------------------------------------------------------------ */
/* Investment form embed — let the plugin control its own layout       */
/* Theme only provides a subtle frame; no forced input widths/heights  */
/* ------------------------------------------------------------------ */
.bh-invest-embed {
	max-width: 1100px;
	margin: 0 auto;
}
/* Force plugin form fields to be visible and correctly sized.
   The plugin's own stylesheet can load after the theme, so these are
   explicit and use !important on the properties that control visibility. */
.bh-invest-embed input,
.bh-invest-embed select,
.bh-invest-embed textarea {
	box-sizing: border-box;
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
}
.bh-invest-embed input[type="text"],
.bh-invest-embed input[type="email"],
.bh-invest-embed input[type="password"],
.bh-invest-embed input[type="number"],
.bh-invest-embed input[type="tel"],
.bh-invest-embed input:not([type]),
.bh-invest-embed select,
.bh-invest-embed textarea {
	width: 100% !important;
	min-height: 46px !important;
	height: auto !important;
	background: rgba(255,255,255,0.05) !important;
	border: 1px solid var(--bh-border) !important;
	border-radius: 10px !important;
	color: var(--bh-text) !important;
	padding: 12px 14px !important;
	margin: 6px 0 14px !important;
	font-size: 0.95rem;
	line-height: 1.4;
	appearance: none;
	-webkit-appearance: none;
}
.bh-invest-embed textarea { min-height: 100px !important; }
.bh-invest-embed input::placeholder,
.bh-invest-embed textarea::placeholder { color: rgba(140,160,184,0.7); }
.bh-invest-embed input:focus,
.bh-invest-embed select:focus,
.bh-invest-embed textarea:focus {
	border-color: var(--bh-border-glow) !important;
	box-shadow: 0 0 0 3px rgba(56,225,245,0.12);
	outline: none;
}
.bh-invest-embed label {
	display: block;
	color: var(--bh-muted);
	font-size: 0.85rem;
	margin-bottom: 2px;
}
/* Brand the plugin's primary submit button but keep it inline in its column */
.bh-invest-embed button,
.bh-invest-embed input[type="submit"],
.bh-invest-embed .btn,
.bh-invest-embed a.button {
	background: var(--bh-gradient) !important;
	color: #06111c !important;
	border: none !important;
	border-radius: 999px !important;
	font-family: var(--bh-font-display) !important;
	font-weight: 600 !important;
	padding: 12px 26px !important;
	margin-top: 10px;
	box-shadow: 0 6px 20px rgba(46,124,246,0.35);
}
/* Recolor purple ROI accents to brand */
.bh-invest-embed [style*="#8b5cf6"],
.bh-invest-embed [style*="rgb(139"],
.bh-invest-embed .roi,
.bh-invest-embed [class*="percent"] { color: var(--bh-cyan) !important; }

/* ------------------------------------------------------------------ */
/* v1.0.6 — footer contact + Partners page                             */
/* ------------------------------------------------------------------ */
.bh-footer__contact {
	list-style: none; margin: 16px 0 0; padding: 0; display: grid; gap: 10px;
}
.bh-footer__contact li {
	display: flex; align-items: flex-start; gap: 9px;
	color: var(--bh-muted); font-size: 0.86rem; line-height: 1.5;
}
.bh-footer__contact svg { flex: 0 0 auto; margin-top: 3px; color: var(--bh-cyan); }
.bh-footer__contact a { color: var(--bh-muted); }
.bh-footer__contact a:hover { color: var(--bh-cyan); }

.bh-partners-hero { padding-bottom: 40px; }
.bh-partners-hero .bh-hero__cta { margin-top: 26px; }

.bh-section--tight { padding: 40px 0; }
.bh-stat-strip { gap: 18px; }
.bh-stat-block {
	text-align: center;
	background: var(--bh-surface);
	border: 1px solid var(--bh-border);
	border-radius: var(--bh-radius);
	padding: 26px 18px;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.bh-stat-block:hover { transform: translateY(-4px); border-color: var(--bh-border-glow); box-shadow: var(--bh-shadow-glow); }
.bh-stat-block strong {
	display: block;
	font-family: var(--bh-font-display);
	font-size: 1.5rem; font-weight: 700;
	background: var(--bh-gradient);
	-webkit-background-clip: text; background-clip: text; color: transparent;
	margin-bottom: 4px;
}
.bh-stat-block span { color: var(--bh-muted); font-size: 0.85rem; }

/* ------------------------------------------------------------------ */
/* v1.0.7 — Mobile app download row + community                        */
/* ------------------------------------------------------------------ */
.bh-footer__app {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 30px;
	padding: 28px 0;
	margin-bottom: 20px;
	border-top: 1px solid rgba(140, 170, 220, 0.08);
	border-bottom: 1px solid rgba(140, 170, 220, 0.08);
}
.bh-footer__app-col h4 {
	font-size: 0.82rem;
	text-transform: uppercase;
	letter-spacing: 0.14em;
	color: var(--bh-text);
	margin-bottom: 8px;
}
.bh-footer__app-col p { color: var(--bh-muted); font-size: 0.86rem; margin: 0 0 14px; }
.bh-footer__app-col--community { text-align: right; }
.bh-footer__app-col--community .bh-footer__social { margin-top: 12px; justify-content: flex-end; }

.bh-app-badges { display: flex; gap: 12px; flex-wrap: wrap; }
.bh-app-badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 9px 18px 9px 14px;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid var(--bh-border);
	color: var(--bh-text);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
}
.bh-app-badge:hover {
	transform: translateY(-3px);
	border-color: var(--bh-border-glow);
	box-shadow: var(--bh-shadow-glow);
	background: rgba(255, 255, 255, 0.06);
	color: #fff;
}
.bh-app-badge svg { flex: 0 0 auto; }
.bh-app-badge span { display: flex; flex-direction: column; line-height: 1.15; }
.bh-app-badge small {
	font-size: 0.62rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--bh-muted);
}
.bh-app-badge strong { font-family: var(--bh-font-display); font-size: 1rem; font-weight: 600; }

@media (max-width: 720px) {
	.bh-footer__app { flex-direction: column; align-items: flex-start; text-align: left; }
	.bh-footer__app-col--community { text-align: left; }
	.bh-footer__app-col--community .bh-footer__social { justify-content: flex-start; }
}

/* ------------------------------------------------------------------ */
/* v1.0.8 — Withdrawal tiers                                           */
/* ------------------------------------------------------------------ */
.bh-withdrawals { gap: 20px; }
.bh-wtier {
	position: relative;
	background: var(--bh-surface);
	border: 1px solid var(--bh-border);
	border-radius: var(--bh-radius);
	padding: 28px 24px;
	overflow: hidden;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.bh-wtier::after {
	content: "";
	position: absolute; top: 0; left: 0; right: 0; height: 3px;
	background: var(--bh-gradient);
	opacity: 0.5;
	transition: opacity 0.25s ease;
}
.bh-wtier:hover {
	transform: translateY(-6px);
	border-color: var(--bh-border-glow);
	box-shadow: 0 20px 50px rgba(0,0,0,0.4), var(--bh-shadow-glow);
}
.bh-wtier:hover::after { opacity: 1; }
.bh-wtier--featured {
	border-color: rgba(46, 124, 246, 0.55);
	background: linear-gradient(180deg, rgba(46, 124, 246, 0.1), rgba(56, 225, 245, 0.03));
	box-shadow: 0 0 40px rgba(46, 124, 246, 0.2);
}
.bh-wtier__index {
	position: absolute; top: 18px; right: 20px;
	font-family: var(--bh-font-display);
	font-size: 1.6rem; font-weight: 700;
	color: rgba(140, 170, 220, 0.18);
}
.bh-wtier__label {
	display: inline-block;
	font-family: var(--bh-font-display);
	font-size: 0.72rem; font-weight: 600;
	letter-spacing: 0.12em; text-transform: uppercase;
	color: var(--bh-cyan);
	margin-bottom: 10px;
}
.bh-wtier__range {
	font-family: var(--bh-font-display);
	font-size: 1.9rem; font-weight: 700;
	color: #fff;
	line-height: 1;
	margin-bottom: 18px;
}
.bh-wtier--featured .bh-wtier__range {
	background: var(--bh-gradient);
	-webkit-background-clip: text; background-clip: text; color: transparent;
}
.bh-wtier__meta { list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 10px; }
.bh-wtier__meta li { display: flex; align-items: flex-start; gap: 9px; font-size: 0.85rem; color: var(--bh-text); }
.bh-wtier__meta svg { flex: 0 0 auto; margin-top: 2px; color: var(--bh-cyan); }
.bh-wtier__note {
	font-size: 0.82rem;
	color: var(--bh-muted);
	margin: 0;
	padding-top: 14px;
	border-top: 1px dashed rgba(140, 170, 220, 0.15);
}

/* ------------------------------------------------------------------ */
/* v1.1.0 — Withdrawal tiers tight mode + fee notice                   */
/* ------------------------------------------------------------------ */
/* Tight mode: pull the tiers up close under the packages/form */
.bh-section--wtight { padding-top: 24px; }
.bh-section--wtight .bh-section__head { margin-bottom: 32px; }

/* When register page shows tiers, trim the portal's big bottom gap */
.bh-portal--wide { padding-bottom: 30px; }

.bh-wfee-notice {
	display: flex;
	align-items: center;
	gap: 12px;
	max-width: 760px;
	margin: 26px auto 0;
	padding: 14px 22px;
	border-radius: var(--bh-radius-sm);
	background: linear-gradient(90deg, rgba(56,225,245,0.08), rgba(46,124,246,0.05));
	border: 1px solid var(--bh-border-glow);
	color: var(--bh-text);
	font-family: var(--bh-font-display);
	font-weight: 600;
	font-size: 0.92rem;
	box-shadow: 0 0 24px rgba(46,124,246,0.12);
}
.bh-wfee-notice svg { flex: 0 0 auto; color: var(--bh-cyan); }
@media (max-width: 640px) {
	.bh-wfee-notice { flex-direction: row; align-items: flex-start; font-size: 0.85rem; text-align: left; }
}

/* ------------------------------------------------------------------ */
/* v1.1.2 — Compact withdrawal tiers INSIDE the register panel         */
/* ------------------------------------------------------------------ */
.bh-wtiers-compact {
	margin-top: 34px;
	padding-top: 30px;
	border-top: 1px solid rgba(140, 170, 220, 0.12);
	width: 100%;
}
.bh-wtiers-compact__head {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 0 20px;
}
.bh-wtiers-compact__head .bh-eyebrow { margin-bottom: 0; }
.bh-wtiers-compact__head h2 {
	font-size: 1.3rem;
	margin: 0;
}
.bh-wtiers-compact__head h2::after { display: none; }
.bh-wtiers-compact .bh-withdrawals { gap: 14px; }

/* Smaller tier cards for the compact row */
.bh-wtier--sm { padding: 18px 16px; }
.bh-wtier--sm .bh-wtier__index { font-size: 1.2rem; top: 14px; right: 14px; }
.bh-wtier--sm .bh-wtier__label { font-size: 0.64rem; margin-bottom: 7px; }
.bh-wtier--sm .bh-wtier__range { font-size: 1.35rem; margin-bottom: 12px; }
.bh-wtier--sm .bh-wtier__meta { gap: 7px; margin-bottom: 12px; }
.bh-wtier--sm .bh-wtier__meta li { font-size: 0.78rem; gap: 7px; }
.bh-wtier--sm .bh-wtier__note { font-size: 0.75rem; padding-top: 10px; }

.bh-wtiers-compact .bh-wfee-notice { margin-top: 18px; max-width: none; }

@media (max-width: 1020px) {
	.bh-wtiers-compact .bh-withdrawals { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
	.bh-wtiers-compact .bh-withdrawals { grid-template-columns: 1fr; }
	.bh-wtiers-compact__head { flex-direction: column; align-items: flex-start; gap: 6px; }
}

/* ------------------------------------------------------------------ */
/* v1.2.0 — AI Bots page                                               */
/* ------------------------------------------------------------------ */
.bh-bots { gap: 20px; }
.bh-bot {
	position: relative;
	display: flex;
	flex-direction: column;
	background: var(--bh-surface);
	border: 1px solid var(--bh-border);
	border-radius: var(--bh-radius);
	padding: 24px 20px;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.bh-bot:hover {
	transform: translateY(-6px);
	border-color: var(--bh-border-glow);
	box-shadow: 0 20px 50px rgba(0,0,0,0.4), var(--bh-shadow-glow);
}
.bh-bot--featured {
	border-color: rgba(46, 124, 246, 0.55);
	background: linear-gradient(180deg, rgba(46, 124, 246, 0.1), rgba(56, 225, 245, 0.03));
	box-shadow: 0 0 40px rgba(46, 124, 246, 0.22);
}
.bh-bot__head { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
.bh-bot__icon {
	width: 42px; height: 42px;
	flex: 0 0 auto;
	border-radius: 12px;
	display: flex; align-items: center; justify-content: center;
	background: linear-gradient(135deg, rgba(56, 225, 245, 0.15), rgba(46, 124, 246, 0.15));
	border: 1px solid rgba(56, 225, 245, 0.28);
	color: var(--bh-cyan);
}
.bh-bot__icon svg { width: 22px; height: 22px; }
.bh-bot__name { font-size: 1.05rem; margin: 0 0 2px; }
.bh-bot__tier {
	font-size: 0.66rem;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: var(--bh-cyan);
	font-family: var(--bh-font-display);
	font-weight: 600;
}
.bh-bot__rate { margin-bottom: 16px; }
.bh-bot__rate span {
	display: block;
	font-family: var(--bh-font-display);
	font-size: 1.7rem; font-weight: 700;
	background: var(--bh-gradient);
	-webkit-background-clip: text; background-clip: text; color: transparent;
	line-height: 1.05;
}
.bh-bot__rate small { color: var(--bh-muted); font-size: 0.72rem; }
.bh-bot__meta { list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 9px; flex: 1; }
.bh-bot__meta li {
	display: flex; justify-content: space-between; align-items: baseline; gap: 10px;
	font-size: 0.8rem;
	border-bottom: 1px dashed rgba(140, 170, 220, 0.14);
	padding-bottom: 9px;
}
.bh-bot__meta span { color: var(--bh-muted); }
.bh-bot__meta strong { text-align: right; font-size: 0.82rem; }
.bh-bot__days { margin-bottom: 18px; }
.bh-bot__days-label {
	display: block;
	font-size: 0.66rem;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: var(--bh-muted);
	margin-bottom: 8px;
}
.bh-bot__daylist { display: flex; gap: 5px; }
.bh-bot__day {
	width: 24px; height: 24px;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: 7px;
	background: rgba(56, 225, 245, 0.1);
	border: 1px solid rgba(56, 225, 245, 0.25);
	color: var(--bh-cyan);
	font-size: 0.66rem; font-weight: 600;
	font-family: var(--bh-font-display);
}
.bh-bots-hero { padding-bottom: 40px; }

@media (max-width: 1020px) { .bh-bots { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .bh-bots { grid-template-columns: 1fr; } }

/* ------------------------------------------------------------------ */
/* v1.2.1 — AI Bots hero robot visual                                  */
/* ------------------------------------------------------------------ */
.bh-bots-hero { text-align: left; padding-bottom: 30px; }
.bh-bots-hero__inner {
	display: grid;
	grid-template-columns: 1.15fr 0.85fr;
	align-items: center;
	gap: 40px;
}
.bh-bots-hero__copy .bh-page-hero__lead { margin: 0; }
.bh-bots-hero__visual {
	max-width: 340px;
	margin-left: auto;
	filter: drop-shadow(0 0 30px rgba(56, 225, 245, 0.25));
	animation: bh-float 7s ease-in-out infinite;
}
.bh-bots-hero__visual svg { width: 100%; height: auto; display: block; }

@media (max-width: 860px) {
	.bh-bots-hero { text-align: center; }
	.bh-bots-hero__inner { grid-template-columns: 1fr; }
	.bh-bots-hero__copy .bh-page-hero__lead { margin-inline: auto; }
	.bh-bots-hero__visual { max-width: 240px; margin: 10px auto 0; }
}

/* Wider value column for investment ranges in plan cards */
.bh-plan__meta li { align-items: baseline; gap: 10px; }
.bh-plan__meta strong { text-align: right; font-size: 0.85rem; white-space: nowrap; }
.bh-plan__meta span { flex: 0 0 auto; }
@media (max-width: 1200px) {
	.bh-plan__meta strong { font-size: 0.8rem; }
}

/* ------------------------------------------------------------------ */
/* v1.2.3 — Ensure plugin form inputs are always visible               */
/* Applies inside the register/portal flush panel too.                 */
/* ------------------------------------------------------------------ */
.bh-portal__panel--flush input[type="text"],
.bh-portal__panel--flush input[type="email"],
.bh-portal__panel--flush input[type="password"],
.bh-portal__panel--flush input[type="number"],
.bh-portal__panel--flush input[type="tel"],
.bh-portal__panel--flush input:not([type]),
.bh-portal__panel--flush select,
.bh-portal__panel--flush textarea {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	width: 100% !important;
	min-height: 46px !important;
	height: auto !important;
	box-sizing: border-box;
	background: rgba(255,255,255,0.05) !important;
	border: 1px solid var(--bh-border) !important;
	border-radius: 10px !important;
	color: var(--bh-text) !important;
	padding: 12px 14px !important;
	margin: 6px 0 14px !important;
	font-size: 0.95rem;
	line-height: 1.4;
	appearance: none;
	-webkit-appearance: none;
}
.bh-portal__panel--flush textarea { min-height: 100px !important; }
.bh-portal__panel--flush input::placeholder,
.bh-portal__panel--flush textarea::placeholder { color: rgba(140,160,184,0.7); }
.bh-portal__panel--flush input:focus,
.bh-portal__panel--flush select:focus,
.bh-portal__panel--flush textarea:focus {
	border-color: var(--bh-border-glow) !important;
	box-shadow: 0 0 0 3px rgba(56,225,245,0.12);
	outline: none;
}

/* About page robot visual */
.bh-about-robo {
	max-width: 330px;
	margin-inline: auto;
	filter: drop-shadow(0 0 30px rgba(56, 225, 245, 0.25));
	animation: bh-float 7s ease-in-out infinite;
}
.bh-about-robo svg { width: 100%; height: auto; display: block; }
