/*
 * Dark, editorial look modelled on execufinity.com, in the logo's blue.
 * Base is near-black; "sheet" sections are white panels with rounded
 * corners inset from the page edge. Headings: Inter Tight. Body: Outfit.
 *
 * Kadence reads its colours from --global-palette1..9 and prints its own
 * :root block after this file, so these selectors are doubled to win.
 */
:root:root {
	--global-palette1: #3b6cff; /* accent */
	--global-palette2: #2a55e0; /* accent hover */
	--global-palette3: #ffffff; /* headings */
	--global-palette4: #e7e9ee; /* strong text */
	--global-palette5: #a3a9b6; /* body text */
	--global-palette6: #7a8192; /* muted */
	--global-palette7: #22252e; /* borders */
	--global-palette8: #0e1015; /* raised background */
	--global-palette9: #08090c; /* page */
	--mb-bg: #08090c;
	--mb-bg-alt: #0e1015;
	--mb-card: #13151c;
	--mb-line: rgba(255, 255, 255, 0.08);
	--mb-blue: #174eca;
	--mb-accent: #3b6cff;
	--mb-grad: linear-gradient(95deg, #1f4fd6 0%, #3b6cff 45%, #27b4f5 100%);
	--mb-grad-text: linear-gradient(95deg, #5b86ff 0%, #38bdf8 100%);
	--mb-ink: #0b0d12;
	--mb-ink-2: #3a4150;
	--mb-ink-3: #667085;
	--mb-sheet-line: #e7e9ef;
	--mb-radius: 20px;
	--mb-font-body: "Outfit", system-ui, -apple-system, "Segoe UI", sans-serif;
	--mb-font-display: "Inter Tight", "Inter", system-ui, sans-serif;
}

html body {
	font-family: var(--mb-font-body);
	font-weight: 400;
	font-size: 17px;
	line-height: 1.65;
	color: var(--global-palette5);
	background: var(--mb-bg);
	-webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4 {
	font-family: var(--mb-font-display);
	color: #ffffff;
	font-weight: 700;
	letter-spacing: -0.035em;
	line-height: 1.08;
}

h1 em, h2 em {
	font-style: italic;
	font-weight: 800;
	background: var(--mb-grad-text);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	padding-right: 0.06em;
}

.entry-content h2 {
	font-size: clamp(2rem, 4vw, 3.25rem);
}

.entry-content h3 {
	font-size: 1.25rem;
	letter-spacing: -0.02em;
}

a {
	color: var(--mb-accent);
}

strong {
	color: var(--global-palette4);
	font-weight: 600;
}

/* Header ----------------------------------------------------------------- */

.site-header,
.site-header .site-header-row-container-inner,
.site-main-header-wrap .site-header-row-container-inner {
	background: rgba(8, 9, 12, 0.92) !important;
	border-bottom: 1px solid var(--mb-line);
}

.site-branding .custom-logo {
	max-height: 52px;
	width: auto;
}

.main-navigation .primary-menu-container > ul > li.menu-item > a {
	font-family: var(--mb-font-body);
	font-weight: 500;
	font-size: 15.5px;
	color: #d7dbe3;
}

.main-navigation .primary-menu-container > ul > li.menu-item > a:hover,
.main-navigation .primary-menu-container > ul > li.current-menu-item > a {
	color: #ffffff;
}

.main-navigation .menu-item.mb-menu-cta > a {
	background: var(--mb-grad);
	color: #ffffff !important;
	border-radius: 12px;
	padding: 11px 20px !important;
	margin-left: 10px;
	font-weight: 600 !important;
}

.main-navigation .menu-item.mb-menu-ghost > a {
	color: #8fb0ff !important;
}

.mobile-toggle-open-container .menu-toggle-open,
.menu-toggle-open {
	color: #ffffff !important;
}

/* Mobile drawer: Kadence colours its links with palette8, our dark background. */
#mobile-drawer .drawer-inner {
	background: var(--mb-bg-alt);
	color: #ffffff;
}

#mobile-drawer .drawer-header .drawer-toggle,
#mobile-drawer .menu-toggle-close {
	color: #ffffff !important;
}

#mobile-drawer .mobile-navigation ul li > a,
#mobile-drawer .mobile-navigation ul li.menu-item-has-children > .drawer-nav-drop-wrap {
	color: #e7e9ee !important;
	font-family: var(--mb-font-display);
	font-weight: 600;
	font-size: 1.15rem;
	letter-spacing: -0.01em;
	padding-top: 16px;
	padding-bottom: 16px;
}

#mobile-drawer .mobile-navigation ul li:not(.menu-item-has-children) a,
#mobile-drawer .mobile-navigation ul li.menu-item-has-children > .drawer-nav-drop-wrap {
	border-bottom: 1px solid var(--mb-line) !important;
}

#mobile-drawer .mobile-navigation ul li > a:hover,
#mobile-drawer .mobile-navigation ul li.current-menu-item > a {
	color: #ffffff !important;
}

#mobile-drawer .mobile-navigation .mb-menu-ghost > a {
	color: #8fb0ff !important;
}

#mobile-drawer .mobile-navigation .mb-menu-cta > a {
	display: flex;
	justify-content: center;
	margin-top: 24px;
	background: var(--mb-grad);
	color: #ffffff !important;
	border-radius: 12px;
	border-bottom: 0 !important;
}

/* Sections ------------------------------------------------------------- */

.entry-content .mb-section.alignfull {
	padding: clamp(72px, 9vw, 128px) 0;
	margin-top: 0;
	margin-bottom: 0;
}

.mb-section > .wp-block-group__inner-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 24px;
	box-sizing: border-box;
}

.mb-alt {
	background: var(--mb-bg-alt);
	border-top: 1px solid var(--mb-line);
	border-bottom: 1px solid var(--mb-line);
}

.mb-hero {
	background:
		radial-gradient(800px 420px at 50% -10%, rgba(59, 108, 255, 0.28), transparent 70%),
		radial-gradient(500px 300px at 90% 40%, rgba(39, 180, 245, 0.10), transparent 70%),
		var(--mb-bg);
	text-align: center;
}

.entry-content .mb-hero.alignfull {
	padding-top: clamp(80px, 10vw, 140px);
}

.entry-content .mb-logos.alignfull {
	padding: 8px 0 72px;
}

/* White panel inset from the page edge, like the reference site. */
.entry-content .mb-sheet.alignfull {
	background: #ffffff;
	color: var(--mb-ink-2);
	border-radius: 36px;
	width: auto;
	max-width: none;
	margin: 0 16px !important;
}

.mb-sheet h1, .mb-sheet h2, .mb-sheet h3 {
	color: var(--mb-ink);
}

.mb-sheet strong {
	color: var(--mb-ink);
}

.mb-sheet .mb-lead {
	color: var(--mb-ink-3);
}

.mb-sheet h2 em,
.mb-sheet h1 em {
	background: linear-gradient(95deg, #174eca 0%, #3b6cff 60%, #1496d8 100%);
	-webkit-background-clip: text;
	background-clip: text;
}

/* Type helpers --------------------------------------------------------- */

.mb-pill {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--mb-font-body);
	font-size: 0.82rem;
	font-weight: 500;
	letter-spacing: 0.04em;
	color: #c9d6ff;
	background: rgba(59, 108, 255, 0.10);
	border: 1px solid rgba(59, 108, 255, 0.30);
	border-radius: 999px;
	padding: 6px 14px;
	margin: 0 0 22px;
}

.mb-sheet .mb-pill {
	color: var(--mb-blue);
	background: #eef2fd;
	border-color: #d6e0fb;
}

.mb-pill-dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #38bdf8;
	box-shadow: 0 0 0 4px rgba(56, 189, 248, 0.2);
}

.mb-lead {
	font-size: clamp(1.1rem, 1.6vw, 1.25rem);
	line-height: 1.6;
	font-weight: 300;
	color: #b6bcc8;
	max-width: 680px;
}

.mb-note,
.mb-chart-source {
	color: var(--global-palette6);
	font-size: 0.875rem;
}

.mb-head {
	text-align: center;
	max-width: 780px;
	margin: 0 auto 56px;
}

.mb-head h2 {
	margin: 0 0 16px;
}

.mb-head .mb-lead {
	margin: 0 auto;
}

.mb-center {
	text-align: center;
	margin-top: 40px;
}

.mb-center .mb-btn {
	display: inline-flex;
}

/* Buttons -------------------------------------------------------------- */

.mb-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 32px;
}

.mb-hero-c .mb-actions {
	justify-content: center;
}

.mb-btn,
.mb-form button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: var(--mb-grad);
	background-size: 140% 100%;
	color: #ffffff !important;
	border: 0;
	border-radius: 12px;
	padding: 15px 26px;
	font-family: var(--mb-font-body);
	font-weight: 600;
	font-size: 16px;
	line-height: 1.2;
	text-decoration: none;
	box-shadow: 0 10px 30px -10px rgba(59, 108, 255, 0.7), inset 0 1px 0 rgba(255, 255, 255, 0.18);
	transition: background-position 0.3s, transform 0.15s, box-shadow 0.15s;
}

.mb-btn:hover,
.mb-form button:hover {
	background-position: 100% 0;
	transform: translateY(-2px);
	box-shadow: 0 16px 36px -12px rgba(59, 108, 255, 0.85);
}

.mb-btn-ghost {
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.16);
	box-shadow: none;
}

.mb-btn-ghost:hover {
	background: rgba(255, 255, 255, 0.09);
	box-shadow: none;
}

.mb-sheet .mb-btn-ghost {
	background: #ffffff;
	color: var(--mb-ink) !important;
	border: 1px solid #d0d5dd;
}

.mb-sheet .mb-btn-ghost:hover {
	border-color: var(--mb-blue);
	color: var(--mb-blue) !important;
}

.mb-btn-white {
	background: #ffffff;
	color: var(--mb-ink) !important;
	box-shadow: none;
}

.mb-btn-white:hover {
	background: #e9eeff;
}

.mb-card-link {
	display: inline-flex;
	gap: 6px;
	font-weight: 600;
	text-decoration: none;
	color: #8fb0ff;
	margin-top: 8px;
}

.mb-sheet .mb-card-link {
	color: var(--mb-blue);
}

.mb-card-link span {
	transition: transform 0.15s;
}

.mb-card-link:hover span {
	transform: translateX(3px);
}

/* Hero --------------------------------------------------------------- */

.mb-hero-c {
	max-width: 980px;
	margin: 0 auto;
}

.mb-hero-c h1 {
	font-size: clamp(2.6rem, 6.4vw, 5rem);
	font-weight: 700;
	line-height: 1.02;
	margin: 0 0 26px;
}

.mb-hero-c .mb-lead {
	margin: 0 auto;
}

.mb-hero-stats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
	margin-top: 72px;
	text-align: left;
}

.mb-stats-2 {
	grid-template-columns: 1fr 1fr;
	margin-top: 0;
}

.mb-stat {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.015));
	border: 1px solid var(--mb-line);
	border-radius: var(--mb-radius);
	padding: 26px 24px;
	display: grid;
	gap: 6px;
	backdrop-filter: blur(8px);
}

.mb-stat strong {
	font-family: var(--mb-font-display);
	font-size: clamp(1.8rem, 3vw, 2.6rem);
	font-weight: 700;
	letter-spacing: -0.04em;
	line-height: 1;
	color: #ffffff;
}

.mb-stat span {
	font-size: 0.92rem;
	color: var(--global-palette6);
	line-height: 1.4;
}

.mb-sheet .mb-stat {
	background: #f6f8fc;
	border-color: var(--mb-sheet-line);
}

.mb-sheet .mb-stat strong {
	color: var(--mb-ink);
}

.mb-sheet .mb-stat span {
	color: var(--mb-ink-3);
}

/* Logos strip ---------------------------------------------------------- */

.mb-logos-title {
	text-align: center;
	font-size: 0.82rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--global-palette6);
	margin: 0 0 22px;
}

.mb-logos {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 16px 64px;
}

.mb-logos span {
	font-family: var(--mb-font-display);
	font-weight: 800;
	font-size: 1.7rem;
	letter-spacing: -0.04em;
	color: #4a5060;
}

/* Cards ---------------------------------------------------------------- */

.mb-grid {
	display: grid;
	gap: 18px;
}

.mb-grid-2 { grid-template-columns: repeat(2, 1fr); }
.mb-grid-3 { grid-template-columns: repeat(3, 1fr); }
.mb-grid-4 { grid-template-columns: repeat(4, 1fr); }

.mb-card {
	position: relative;
	background: var(--mb-card);
	border: 1px solid var(--mb-line);
	border-radius: var(--mb-radius);
	padding: 30px 28px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	transition: border-color 0.2s, transform 0.2s, box-shadow 0.2s;
}

.mb-card:hover {
	border-color: rgba(59, 108, 255, 0.5);
	transform: translateY(-4px);
	box-shadow: 0 24px 48px -24px rgba(59, 108, 255, 0.45);
}

.mb-card h3 {
	margin: 22px 0 10px;
}

.mb-card p {
	margin: 0 0 6px;
	font-size: 0.99rem;
	flex: 1;
}

.mb-sheet .mb-card {
	background: #ffffff;
	border-color: var(--mb-sheet-line);
	box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
}

.mb-sheet .mb-card:hover {
	border-color: #b9c9f6;
	box-shadow: 0 24px 48px -28px rgba(23, 78, 202, 0.45);
}

.mb-card-icon {
	display: inline-flex;
	width: 52px;
	height: 52px;
	border-radius: 14px;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	background: var(--mb-grad);
	box-shadow: 0 10px 24px -10px rgba(59, 108, 255, 0.8);
}

.mb-icon {
	width: 24px;
	height: 24px;
	flex: none;
}

/* Feature rows and charts ------------------------------------------------- */

.mb-feature {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(32px, 6vw, 88px);
	align-items: center;
}

.mb-feature-top {
	align-items: start;
}

.mb-feature h2 {
	margin: 0 0 18px;
}

.mb-ticks,
.mb-crosses {
	list-style: none;
	padding: 0;
	margin: 20px 0;
	display: grid;
	gap: 12px;
}

.mb-ticks li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

.mb-ticks .mb-icon {
	color: #ffffff;
	background: var(--mb-grad);
	border-radius: 50%;
	padding: 4px;
	width: 22px;
	height: 22px;
	box-sizing: border-box;
	margin-top: 3px;
}

.mb-crosses li {
	padding-left: 34px;
	position: relative;
}

.mb-crosses li::before {
	content: "×";
	position: absolute;
	left: 5px;
	top: -3px;
	font-size: 1.35rem;
	color: #98a2b3;
}

.mb-chart-card {
	background: var(--mb-card);
	border: 1px solid var(--mb-line);
	border-radius: 24px;
	padding: 28px 28px 18px;
	box-shadow: 0 40px 80px -40px rgba(59, 108, 255, 0.45);
}

.mb-sheet .mb-chart-card {
	background: #ffffff;
	border-color: var(--mb-sheet-line);
	box-shadow: 0 30px 60px -36px rgba(16, 24, 40, 0.3);
}

.mb-chart-title {
	font-family: var(--mb-font-display);
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 10px;
}

.mb-sheet .mb-chart-title {
	color: var(--mb-ink);
}

.mb-chart {
	width: 100%;
	height: auto;
	display: block;
}

.mb-chart-bar { fill: rgba(91, 134, 255, 0.35); }
.mb-chart-bar-hi { fill: #3b6cff; }
.mb-chart-axis { stroke: rgba(255, 255, 255, 0.1); }
.mb-chart-value { font: 700 15px var(--mb-font-display); fill: #ffffff; text-anchor: middle; }
.mb-chart-label { font: 500 13px var(--mb-font-body); fill: #7a8192; text-anchor: middle; }

.mb-sheet .mb-chart-bar { fill: #cdd9fa; }
.mb-sheet .mb-chart-bar-hi { fill: #174eca; }
.mb-sheet .mb-chart-axis { stroke: #e4e7ec; }
.mb-sheet .mb-chart-value { fill: var(--mb-ink); }

.mb-two-charts {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
	margin-top: 18px;
}

.mb-case-head {
	text-align: center;
	max-width: 820px;
	margin: 0 auto 48px;
}

.mb-case-head .mb-lead {
	margin: 0 auto;
}

.mb-case-head h2 {
	margin: 0 0 18px;
}

.mb-sheet .mb-hero-stats {
	margin-top: 0;
}

/* Steps ---------------------------------------------------------------- */

.mb-steps {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 18px;
}

.mb-steps li {
	background: var(--mb-card);
	border: 1px solid var(--mb-line);
	border-radius: var(--mb-radius);
	padding: 28px;
}

.mb-steps span {
	font-family: var(--mb-font-display);
	font-weight: 800;
	font-size: 2.4rem;
	letter-spacing: -0.04em;
	background: var(--mb-grad-text);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.mb-steps h3 {
	margin: 10px 0 8px;
}

.mb-steps p {
	margin: 0;
	font-size: 0.98rem;
}

/* Testimonials ------------------------------------------------------------ */

.mb-quotes {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
	margin-top: 56px;
}

.mb-quote {
	background: #f6f8fc;
	border: 1px solid var(--mb-sheet-line);
	border-radius: 24px;
	padding: 32px;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 22px;
}

.mb-stars {
	color: #f5b301;
	letter-spacing: 3px;
	font-size: 1rem;
}

.mb-quote blockquote {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 1.08rem;
	line-height: 1.6;
	color: var(--mb-ink);
	flex: 1;
}

.mb-quote figcaption {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 0.92rem;
	color: var(--mb-ink-3);
}

.mb-avatar {
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background: var(--mb-grad);
	color: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: var(--mb-font-display);
	font-weight: 700;
	flex: none;
}

/* Plans ---------------------------------------------------------------- */

.mb-plans {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
	max-width: 920px;
	margin: 0 auto;
}

.mb-plan {
	position: relative;
	background: var(--mb-card);
	border: 1px solid var(--mb-line);
	border-radius: 28px;
	padding: 36px;
	display: flex;
	flex-direction: column;
}

.mb-plan .mb-btn {
	margin-top: auto;
}

.mb-plan-hi {
	background:
		radial-gradient(400px 200px at 100% 0%, rgba(59, 108, 255, 0.35), transparent 70%),
		#101a3a;
	border: 1px solid rgba(59, 108, 255, 0.6);
}

.mb-sheet .mb-plan {
	background: #ffffff;
	border-color: var(--mb-sheet-line);
	color: var(--mb-ink-2);
}

.mb-sheet .mb-plan-hi {
	background: var(--mb-ink);
	border-color: var(--mb-ink);
	color: #b6bcc8;
}

.mb-sheet .mb-plan-hi .mb-plan-name,
.mb-sheet .mb-plan-hi .mb-plan-price,
.mb-sheet .mb-plan-hi strong {
	color: #ffffff;
}

.mb-plan-badge {
	position: absolute;
	top: 22px;
	right: 22px;
	background: var(--mb-grad);
	color: #ffffff;
	font-size: 0.78rem;
	font-weight: 600;
	border-radius: 999px;
	padding: 5px 12px;
}

.mb-plan-name {
	font-family: var(--mb-font-display);
	font-weight: 700;
	font-size: 1.15rem;
	color: #ffffff;
	margin: 0;
}

.mb-sheet .mb-plan-name {
	color: var(--mb-ink);
}

.mb-plan-price {
	font-family: var(--mb-font-display);
	font-size: 3.4rem;
	font-weight: 700;
	letter-spacing: -0.05em;
	color: #ffffff;
	margin: 10px 0 0;
	line-height: 1.1;
}

.mb-sheet .mb-plan-price {
	color: var(--mb-ink);
}

.mb-plan-price span {
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: 0;
	color: var(--global-palette6);
}

.mb-plan-alt {
	color: var(--global-palette6);
	font-size: 0.95rem;
	margin: 4px 0 8px;
}

.mb-fit {
	background: #f6f8fc;
	border: 1px solid var(--mb-sheet-line);
	border-radius: 24px;
	padding: 34px;
}

.mb-fit-yes {
	background: #eef2fd;
	border-color: #d6e0fb;
}

.mb-fit h3 {
	margin-top: 0;
}

/* Service pages -------------------------------------------------------- */

.mb-problem {
	font-family: var(--mb-font-display);
	font-size: clamp(1.5rem, 2.8vw, 2.1rem);
	line-height: 1.25;
	font-weight: 700;
	letter-spacing: -0.03em;
	color: var(--mb-ink);
	margin: 0;
}

.mb-proof-text {
	font-family: var(--mb-font-display);
	font-size: clamp(1.3rem, 2.2vw, 1.7rem);
	line-height: 1.35;
	font-weight: 600;
	letter-spacing: -0.02em;
	color: #ffffff;
}

.mb-price-box {
	background: var(--mb-card);
	border: 1px solid var(--mb-line);
	border-radius: 24px;
	padding: 32px;
}

.mb-price-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	padding: 16px 0;
	border-bottom: 1px solid var(--mb-line);
}

.mb-price-row div {
	display: grid;
}

.mb-price-row span {
	font-size: 0.92rem;
	color: var(--global-palette6);
}

.mb-price-row em {
	font-style: normal;
	font-family: var(--mb-font-display);
	font-weight: 700;
	font-size: 1.3rem;
	color: #ffffff;
	white-space: nowrap;
}

.mb-faq {
	max-width: 820px;
	margin: 0 auto;
	display: grid;
	gap: 12px;
}

.mb-faq details {
	background: var(--mb-card);
	border: 1px solid var(--mb-line);
	border-radius: 16px;
	padding: 20px 24px;
}

.mb-faq summary {
	font-family: var(--mb-font-display);
	font-weight: 600;
	font-size: 1.1rem;
	color: #ffffff;
	cursor: pointer;
	list-style: none;
	display: flex;
	justify-content: space-between;
	gap: 16px;
}

.mb-faq summary::after {
	content: "+";
	color: var(--mb-accent);
	font-size: 1.4rem;
	line-height: 1;
}

.mb-faq details[open] summary::after {
	content: "−";
}

.mb-faq details p {
	margin: 12px 0 0;
}

/* Lab ---------------------------------------------------------------- */

.mb-lab-preview {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
}

.mb-lab-tile {
	display: block;
	text-decoration: none;
	background: var(--mb-card);
	border: 1px solid var(--mb-line);
	border-radius: 24px;
	padding: 18px 18px 26px;
	color: var(--global-palette5);
	transition: border-color 0.2s, transform 0.2s;
}

.mb-lab-tile:hover {
	border-color: rgba(59, 108, 255, 0.5);
	transform: translateY(-4px);
	color: var(--global-palette5);
}

.mb-lab-tile h3 {
	margin: 22px 8px 6px;
}

.mb-lab-tile p {
	margin: 0 8px;
}

.mb-lab-entry {
	display: grid;
	grid-template-columns: 0.95fr 1.05fr;
	gap: clamp(32px, 5vw, 72px);
	align-items: center;
}

.mb-lab-entry h2 {
	margin: 0 0 18px;
}

.mb-lab-problem {
	font-size: 1.05rem;
}

.mb-lab-sub {
	font-family: var(--mb-font-display);
	font-weight: 700;
	color: #ffffff;
	margin: 24px 0 0;
}

.mb-sheet .mb-lab-sub {
	color: var(--mb-ink);
}

.mb-results {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
	gap: 12px;
	margin: 24px 0;
}

.mb-results div {
	border-left: 2px solid var(--mb-accent);
	padding-left: 14px;
	display: grid;
}

.mb-results strong {
	font-family: var(--mb-font-display);
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: -0.04em;
	color: #ffffff;
	line-height: 1.1;
}

.mb-sheet .mb-results strong {
	color: var(--mb-ink);
}

.mb-results span {
	font-size: 0.88rem;
	color: var(--global-palette6);
}

/* App window views (Lab) */

.mb-ui {
	background: #0f1219;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 40px 80px -40px rgba(0, 0, 0, 0.8), 0 0 0 1px rgba(0, 0, 0, 0.2);
	font-family: var(--mb-font-body);
	text-align: left;
	color: #c4c9d4;
}

.mb-ui-bar {
	display: flex;
	align-items: center;
	gap: 7px;
	padding: 12px 16px;
	background: #151925;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	font-size: 0.8rem;
	color: #8a91a2;
}

.mb-ui-bar i {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #2b3040;
}

.mb-ui-bar i:first-child { background: #ff5f57; }
.mb-ui-bar i:nth-child(2) { background: #febc2e; }
.mb-ui-bar i:nth-child(3) { background: #28c840; }

.mb-ui-bar span {
	margin-left: 8px;
}

.mb-ui-body {
	padding: 18px;
}

.mb-ui-kanban {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
}

.mb-ui-col {
	background: #141824;
	border-radius: 12px;
	padding: 10px;
	display: grid;
	gap: 8px;
	align-content: start;
}

.mb-ui-col-head {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 0.72rem;
	font-weight: 600;
	color: #d7dbe3;
	white-space: nowrap;
}

.mb-ui-col-head em {
	margin-left: auto;
	font-style: normal;
	font-family: var(--mb-font-display);
	color: #ffffff;
	font-weight: 700;
}

.mb-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	flex: none;
}

.mb-dot-amber { background: #f5b301; }
.mb-dot-blue { background: #3b6cff; }
.mb-dot-green { background: #22c55e; }
.mb-dot-grey { background: #6b7280; }

.mb-ui-card {
	background: #1b2030;
	border-radius: 8px;
	padding: 10px;
	display: grid;
	gap: 6px;
}

.mb-ui-card b,
.mb-ui-row b {
	display: block;
	height: 7px;
	border-radius: 4px;
	background: #2c3347;
}

.mb-ui-card b + b {
	background: #232a3b;
}

.mb-ui-kpis {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 8px;
	margin-bottom: 16px;
}

.mb-ui-kpis-3 {
	grid-template-columns: repeat(3, 1fr);
}

.mb-ui-kpis div {
	background: #141824;
	border-radius: 10px;
	padding: 10px 12px;
	font-size: 0.72rem;
	color: #8a91a2;
	display: grid;
}

.mb-ui-kpis em {
	font-style: normal;
	font-family: var(--mb-font-display);
	font-weight: 700;
	font-size: 1.15rem;
	color: #ffffff;
}

.mb-ui-label {
	font-size: 0.75rem;
	color: #8a91a2;
	margin: 0 0 10px;
}

.mb-ui-bars {
	display: flex;
	align-items: flex-end;
	gap: 6px;
	height: 140px;
}

.mb-ui-bar-col {
	flex: 1;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
	gap: 6px;
}

.mb-ui-bar-col span {
	width: 100%;
	border-radius: 5px 5px 2px 2px;
	background: linear-gradient(180deg, #3b6cff, #2342a8);
}

.mb-ui-bar-col small {
	font-size: 0.66rem;
	color: #8a91a2;
}

.mb-ui-funnel {
	display: grid;
	gap: 10px;
	margin-bottom: 14px;
}

.mb-ui-funnel-row {
	display: grid;
	gap: 4px;
}

.mb-ui-funnel-row span {
	display: flex;
	align-items: center;
	height: 34px;
	border-radius: 8px;
	background: linear-gradient(90deg, #3b6cff, #27b4f5);
	padding: 0 12px;
	box-sizing: border-box;
	min-width: 48px;
}

.mb-ui-funnel-row em {
	font-style: normal;
	font-family: var(--mb-font-display);
	font-weight: 700;
	color: #ffffff;
}

.mb-ui-funnel-row small {
	font-size: 0.75rem;
	color: #8a91a2;
}

.mb-ui-list,
.mb-ui-table {
	display: grid;
	gap: 8px;
}

.mb-ui-row {
	display: flex;
	align-items: center;
	gap: 10px;
	background: #141824;
	border-radius: 10px;
	padding: 10px 12px;
}

.mb-ui-avatar {
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: linear-gradient(135deg, #3b6cff, #27b4f5);
	flex: none;
	margin-left: auto;
}

.mb-ui-table .mb-ui-avatar {
	margin-left: 0;
}

.mb-ui-table .mb-ui-tag {
	margin-left: auto;
}

.mb-ui-tag {
	font-size: 0.68rem;
	font-weight: 600;
	padding: 3px 8px;
	border-radius: 999px;
	white-space: nowrap;
}

.mb-ui-tag-blue { background: rgba(59, 108, 255, 0.18); color: #9db6ff; }
.mb-ui-tag-green { background: rgba(34, 197, 94, 0.15); color: #6ee7a0; }
.mb-ui-tag-amber { background: rgba(245, 179, 1, 0.15); color: #fcd34d; }

.mb-ui-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 14px;
}

.mb-ui-chips span {
	font-size: 0.72rem;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 999px;
	padding: 3px 10px;
}

.mb-ui-chat {
	display: grid;
	gap: 10px;
	margin-bottom: 14px;
}

.mb-ui-msg {
	margin: 0;
	padding: 12px 14px;
	border-radius: 14px 14px 14px 4px;
	background: #1b2030;
	font-size: 0.88rem;
	max-width: 85%;
}

.mb-ui-msg-user {
	justify-self: end;
	border-radius: 14px 14px 4px 14px;
	background: linear-gradient(135deg, #3b6cff, #2a55e0);
	color: #ffffff;
}

.mb-ui-timeline {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0;
}

.mb-ui-timeline li {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 0;
	font-size: 0.92rem;
	border-left: 2px solid #2c3347;
	margin-left: 13px;
	padding-left: 22px;
	position: relative;
}

.mb-ui-timeline span {
	position: absolute;
	left: -14px;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: var(--mb-grad);
	color: #ffffff;
	font-size: 0.75rem;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

/* CTA box ------------------------------------------------------------- */

.mb-cta-box {
	position: relative;
	overflow: hidden;
	text-align: center;
	border-radius: 36px;
	padding: clamp(48px, 7vw, 96px) clamp(24px, 5vw, 80px);
	background:
		radial-gradient(600px 300px at 50% 0%, rgba(255, 255, 255, 0.22), transparent 70%),
		var(--mb-grad);
	color: #e6ecff;
}

.mb-cta-box h2 {
	color: #ffffff;
	margin: 0 auto 16px;
	max-width: 760px;
}

.mb-cta-box p {
	max-width: 640px;
	margin: 0 auto;
	font-size: 1.1rem;
}

.mb-cta-box .mb-actions {
	justify-content: center;
}

.mb-cta-box .mb-btn-ghost {
	border-color: rgba(255, 255, 255, 0.5);
	background: transparent;
}

/* Forms ------------------------------------------------------------------ */

.mb-form {
	max-width: 820px;
	margin: 0 auto;
	display: grid;
	gap: 18px;
	background: var(--mb-card);
	border: 1px solid var(--mb-line);
	border-radius: 28px;
	padding: clamp(24px, 4vw, 44px);
}

.mb-form-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
	gap: 18px;
}

.mb-form label {
	display: grid;
	gap: 8px;
	font-weight: 500;
	font-size: 0.93rem;
	color: var(--global-palette4);
}

.mb-form input,
.mb-form select,
.mb-form textarea {
	width: 100%;
	background: #0b0d12;
	color: #ffffff;
	border: 1px solid #2a2e39;
	border-radius: 12px;
	padding: 13px 15px;
	font: inherit;
	font-weight: 400;
}

.mb-form input::placeholder,
.mb-form textarea::placeholder {
	color: #5d6474;
}

.mb-form input:focus,
.mb-form select:focus,
.mb-form textarea:focus {
	outline: 3px solid rgba(59, 108, 255, 0.25);
	border-color: var(--mb-accent);
}

.mb-form button {
	justify-self: start;
	cursor: pointer;
}

.mb-hp {
	position: absolute;
	left: -9999px;
}

.mb-form-done {
	max-width: 820px;
	margin: 0 auto;
	background: rgba(59, 108, 255, 0.12);
	border: 1px solid rgba(59, 108, 255, 0.4);
	color: #dbe4ff;
	border-radius: 20px;
	padding: 28px 32px;
}

/* Footer --------------------------------------------------------------- */

.mb-footer {
	background: var(--mb-bg);
	color: var(--global-palette6);
	padding: 88px 24px 56px;
	border-top: 1px solid var(--mb-line);
}

.mb-footer-inner {
	max-width: 1200px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1.6fr 1fr 1fr 1fr;
	gap: 40px;
}

.mb-footer-brand img {
	width: 230px;
	height: auto;
	margin-bottom: 20px;
}

.mb-footer-brand p {
	max-width: 330px;
	margin: 0 0 24px;
}

.mb-footer-head {
	font-family: var(--mb-font-display);
	color: #ffffff;
	font-weight: 700;
	margin: 0 0 16px;
}

.mb-footer ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 11px;
}

.mb-footer a:not(.mb-btn) {
	color: #b6bcc8;
	text-decoration: none;
}

.mb-footer a:not(.mb-btn):hover {
	color: #ffffff;
}

.site-footer,
.site-footer .site-footer-row-container-inner {
	background: var(--mb-bg) !important;
	color: var(--global-palette6);
	border-color: var(--mb-line) !important;
}

.site-footer a {
	color: #b6bcc8;
}

/* WhatsApp button ---------------------------------------------------------- */

.mb-whatsapp {
	position: fixed;
	right: 18px;
	bottom: 18px;
	z-index: 999;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #25d366;
	color: #ffffff;
	font-weight: 600;
	padding: 13px 20px;
	border-radius: 999px;
	box-shadow: 0 10px 30px -8px rgba(37, 211, 102, 0.6);
	text-decoration: none;
}

.mb-whatsapp::before {
	content: "";
	width: 20px;
	height: 20px;
	background: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M12 2a10 10 0 0 0-8.6 15.1L2 22l5-1.3A10 10 0 1 0 12 2zm0 18.2a8.2 8.2 0 0 1-4.2-1.2l-.3-.2-3 .8.8-2.9-.2-.3A8.2 8.2 0 1 1 12 20.2zm4.5-6.1c-.2-.1-1.5-.7-1.7-.8s-.4-.1-.6.1-.7.8-.8 1-.3.2-.5.1a6.7 6.7 0 0 1-3.3-2.9c-.3-.4.3-.4.8-1.4.1-.2 0-.3 0-.4l-.8-1.8c-.2-.5-.4-.4-.6-.4h-.5a1 1 0 0 0-.7.3 3 3 0 0 0-.9 2.2 5.2 5.2 0 0 0 1.1 2.8 11.9 11.9 0 0 0 4.6 4c1.7.7 2.4.8 3.2.7a2.8 2.8 0 0 0 1.8-1.3 2.3 2.3 0 0 0 .2-1.3c-.1-.1-.3-.2-.5-.3z'/%3E%3C/svg%3E");
}

.mb-whatsapp:hover {
	color: #ffffff;
	background: #1ebe5a;
}

/* Responsive ------------------------------------------------------------ */

@media (max-width: 1024px) {
	.mb-hero-stats,
	.mb-steps,
	.mb-grid-4 {
		grid-template-columns: repeat(2, 1fr);
	}
	.mb-footer-inner {
		grid-template-columns: 1fr 1fr;
	}
	.mb-lab-entry {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 781px) {
	html body {
		font-size: 16px;
	}
	.mb-feature,
	.mb-quotes,
	.mb-plans,
	.mb-lab-preview,
	.mb-two-charts,
	.mb-grid-2,
	.mb-grid-3 {
		grid-template-columns: 1fr;
	}
	.entry-content .mb-sheet.alignfull {
		margin: 0 8px !important;
		border-radius: 26px;
	}
	.mb-ui-kanban {
		grid-template-columns: repeat(2, 1fr);
	}
	.mb-ui-kpis {
		grid-template-columns: repeat(2, 1fr);
	}
	.mb-plan,
	.mb-fit {
		padding: 26px;
	}
	.mb-whatsapp {
		padding: 13px;
		font-size: 0;
		gap: 0;
	}
	.mb-whatsapp::before {
		width: 26px;
		height: 26px;
	}
}

@media (max-width: 520px) {
	.mb-hero-stats,
	.mb-steps,
	.mb-grid-4,
	.mb-footer-inner {
		grid-template-columns: 1fr;
	}
	.mb-stats-2 {
		grid-template-columns: 1fr 1fr;
	}
	.mb-actions .mb-btn {
		width: 100%;
	}
	.mb-logos {
		gap: 10px 28px;
	}
	.mb-logos span {
		font-size: 1.3rem;
	}
}
