/*
Theme Name: Mass Analytics
Theme URI: 
Author: Aspectus Group
Author URI: 
Description: A custom theme for Mass Analytics
Requires at least: 6.8
Tested up to: 6.8
Requires PHP: 7.2
Version: 1.1.2
License: GNU General Public License v3
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Text Domain: mass-analytics
Tags: block-patterns, block-styles, custom-colors, custom-logo, custom-menu, editor-style, full-site-editing, one-column, template-editing, threaded-comments, translation-ready, wide-blocks

/* Defaults
---------------------------------------- */

/* Defaults
---------------------------------------- */

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

html {
	scroll-behavior: smooth;
	-webkit-font-smoothing: antialiased;
}

body * {
    text-wrap: pretty;
}
body.single {
	font-weight: 400;
}
h1, h2, h3, h4, h5, h6 {
    text-wrap: pretty;
    text-wrap: balance;
}

.single h1,
.single h2,
.single h3,
.single h4 {
	font-weight: 600;
}

a,
button,
input:focus,
input[type="button"],
input[type="submit"],
textarea:focus,
.wp-element-button {
	transition: all 0.2s ease-in-out;
}

a,
a:focus,
a:hover,
a:not(.wp-element-button) {
	text-decoration-thickness: 1px;
}

b,
strong,
th {
	font-weight: var(--wp--custom--font-weight--medium);
}
:is(h1, h2, h3, h4, h5, h6) strong {
	font-weight: var(--wp--custom--font-weight--semi-bold);
}

mark {
	background: transparent;
}

/* -- Forms -- */

input,
select,
textarea {
	background-color: var(--wp--preset--color--base);
	border: 1px solid var(--wp--preset--color--contrast);
	border-radius: 0;
	color: var(--wp--preset--color--contrast);
	font-family: var(--wp--preset--font-family--primary);
	font-size: var(--wp--preset--font-size--medium);
	font-weight: var(--wp--custom--font-weight--light);
	line-height: var(--wp--custom--line-height--body);
	padding: 10px 20px;
	width: 100%;
}

input:focus,
textarea:focus {
	background-color: var(--wp--preset--color--neutral);
	outline: none;
}

input[type="checkbox"],
input[type="image"],
input[type="radio"] {
	width: auto;
}

input[type="button"],
input[type="email"],
input[type="search"],
input[type="submit"],
input[type="text"],
textarea {
	-webkit-appearance: none;
}

::placeholder {
	color: var(--wp--preset--color--contrast);
	font-size: var(--wp--preset--font-size--small);
	opacity: 0.5;
}

/* Header */
header.site-header {
	top: 0;
    position: sticky;
    width: 100%;
    z-index: 999;
}
header + div {
	/* padding-top: 150px!important; */
}

/* Blocks
---------------------------------------- */

/* -- Code -- */

*:not(.wp-block-code) > code {
	background-color: var(--wp--preset--color--neutral);
	font-size: var(--wp--preset--font-size--small);
	padding: 5px 8px;
}

/* -- Navigation -- */

.wp-block-navigation__responsive-container.is-menu-open {
	padding: var(--wp--custom--spacing--gap);
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	padding-top: var(--wp--custom--spacing--gap);
}

.wp-block-navigation__responsive-container-close,
.wp-block-navigation__responsive-container-open {
	border: 1px solid currentColor;
	padding: 2px;
}

.has-background .wp-block-navigation__responsive-container-open:focus,
.has-background .wp-block-navigation__responsive-container-open:hover {
	color: var(--wp--preset--color--base);
}

header > .wp-block-group { container-type: inline-size; }

.wp-block-ollie-mega-menu__menu-container.menu-width-full {
	width: 100cqw;
	max-width: 100cqw;
	overflow-x: clip;

	.wp-block-group {
		border-radius: 20px;
	}
}

/* -- Navigation Submenu -- */

.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container {
	background-color: var(--wp--preset--color--contrast);
	border: var(--wp--preset--color--contrast);
	color: var(--wp--preset--color--base);
	padding: 10px;
}

.wp-block-navigation :where(.wp-block-navigation__submenu-container) a {
	padding: 2px 10px;
}

.wp-block-ollie-mega-menu__menu-container a:hover {
	color: var(--wp--preset--color--neutral);
	border-bottom: 1px solid var(--wp--preset--color--neutral);
}
.wp-block-ollie-mega-menu__menu-container .menu-container__close-button {
	display: none;
}

/* -- Book a Demo CTA button -- */

a.wp-block-navigation-item__content[href*="/demo-request"] {
	background-color: var(--wp--preset--color--neutral);
	padding: 10px 24px;
	border-radius: 0 0 10px 0;
	transition: background-color 0.2s ease;
	font-weight: 700;
}
a.wp-block-navigation-item__content[href*="/demo-request"] .wp-block-navigation-item__label,
a.wp-block-navigation-item__content[href*="/demo-request"] mark {
	color: var(--wp--preset--color--contrast) !important;
}
a.wp-block-navigation-item__content[href*="/demo-request"]:hover {
	background-color: #cc8000;
}
.wp-block-navigation__responsive-container.is-menu-open a.wp-block-navigation-item__content[href*="/demo-request"] {
	background-color: transparent !important;
	padding: 0 !important;
	border-radius: 0 !important;
}
.wp-block-navigation__responsive-container.is-menu-open a.wp-block-navigation-item__content[href*="/demo-request"] mark {
	color: var(--wp--preset--color--neutral) !important;
	font-weight: 700 !important;
}


/* -- Share Block -- */

.share-block {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.share-icons {
    display: flex;
    gap: 10px;
}

.share-icons a {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    text-decoration: none;
    transition: all 0.2s ease-in-out;
}

.share-icons a:hover {
    background-color: var(--wp--preset--color--neutral);
}

.wp-block-social-links .wp-social-link svg {
	width: 1.5em;
	height: 1.5em;
}

/** Steps **/
.orange-steps {
	.wp-block-column:not(:last-child) {
		p:first-child {
			position: relative;
			&::before {
				content: "";
				position: absolute;
				height: 3px;
				width: 50%;
				right: -35%;
				top: 50%;
				background-image: linear-gradient(to right, #ffa000 33%, rgba(255, 255, 255, 0) 0%);
				background-position: bottom;
				background-size: 13px 1px;
				background-repeat: repeat-x;
			}
		}
	}
}

/** Footer **/
.footer-copyright {
	font-size: 14px;
}

/* Utility
---------------------------------------- */

/* -- Box Shadow -- */

.is-style-shadow-light {
	box-shadow: var(--wp--preset--shadow--light);
}

.is-style-shadow-solid {
	box-shadow: var(--wp--preset--shadow--solid);
}

/* -- Glass effect -- */

.is-style-glass-light {
	border-radius: 20px;
	background: rgba(8, 5, 28, 0.10);
	box-shadow: 0 0 40px 0 rgba(255, 255, 255, 0.25) inset;
	backdrop-filter: blur(10px);
}

/** scroll effect **/
.entry-content > .wp-block-group > *,
.home .wp-site-blocks > .wp-block-group > * {
	opacity: 0;
	transform: translateY(20px) scale(0.98);
	transition: opacity 0.6s ease-out, transform 0.6s ease-out;
	will-change: opacity, transform;
}
.entry-content > .wp-block-group.is-in > *,
.home .wp-site-blocks > .wp-block-group.is-in > *,
.entry-content > header + div > *,
.home .wp-site-blocks > header + div > * {
	opacity: 1!important;
	transform: none!important;
	will-change: auto!important;
}
.home .wp-site-blocks > .wp-block-group.is-in .has-background-dim-0 {
	opacity: 0;
}

/** sidebar **/
.post-toc-news.is-position-sticky {
	top: 110px;
}

/** disable background on loaded images **/
img[data-dominant-color]:not([src^="data:"]) { background: transparent !important; }

/* Media Queries
---------------------------------------- */

@media only screen and (max-width: 600px) {

	/* -- Utility -- */

	.is-style-hidden-mobile {
		display: none !important;
	}

}

/* === Pricing Tiers Ribbon + Partner Band
---------------------------------------- */

.mass-pricing-section {
	background-color: var(--wp--preset--color--contrast);
	background-size: 100% auto;
	background-position: bottom center;
	background-repeat: no-repeat;
	padding-top: var(--wp--preset--spacing--x-large);
	padding-bottom: var(--wp--preset--spacing--x-large);
	overflow-x: clip;
}

/* --- Ribbon header --- */
.pricing-ribbon {
	max-width: 1220px;
	margin: 0 auto;
	padding: var(--wp--preset--spacing--x-large) var(--wp--preset--spacing--small) var(--wp--preset--spacing--medium);
	text-align: center;
	border-radius: 20px;
	background: rgba(8,5,28,0.10);
	box-shadow: 0 0 40px 0 rgba(255,255,255,0.25) inset;
	backdrop-filter: blur(10px);
	overflow-x: clip;
}
.ribbon-eyebrow {
	display: inline-flex; align-items: center; gap: 8px;
	font-weight: 700; font-size: .75rem; letter-spacing: .12em; text-transform: uppercase;
	color: var(--wp--preset--color--neutral);
	background: rgba(255,160,0,.12);
	padding: 6px 14px; border-radius: 9999px;
}
.ribbon-eyebrow::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: var(--wp--preset--color--neutral); }
.ribbon-title {
	font-weight: 700; font-size: clamp(1.875rem,3.4vw,3rem);
	line-height: 1.2; letter-spacing: -.02em;
	color: var(--wp--preset--color--base); margin-top: 18px;
}
.ribbon-title .accent { color: var(--wp--preset--color--neutral); }
.ribbon-sub {
	font-size: 1.125rem; line-height: 1.7;
	color: rgba(255,255,255,.9);
	max-width: 660px; margin: 16px auto 0;
}
.ribbon-rule { width: 48px; height: 3px; border-radius: 9999px; background: var(--wp--preset--color--neutral); margin: 20px auto 0; }

/* --- Tier cards --- */
.tier-track {
	display: grid; grid-template-columns: repeat(3,1fr); gap: 24px;
	margin-top: 52px; text-align: left; align-items: stretch;
}
.tier {
	position: relative; display: flex; flex-direction: column;
	background: var(--wp--preset--color--secondary);
	border: 1px solid rgba(255,255,255,.1);
	border-bottom: 3px solid var(--wp--preset--color--neutral);
	border-radius: 30px; padding: 32px 28px 28px;
	transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
	height: 100%;
	box-sizing: border-box;
}
.tier:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(0,0,0,.35); }
.tier.is-featured {
	border: 2px solid var(--wp--preset--color--neutral);
	border-bottom-width: 4px;
}
.tier-name { font-weight: 700; font-size: 1.375rem; letter-spacing: -.01em; color: var(--wp--preset--color--base); }
.tier-tagline { font-size: 1rem; line-height: 1.5; color: rgba(255,255,255,.9); margin-top: 6px; min-height: 42px; }
.tier-for { font-size: .9375rem; line-height: 1.5; color: rgba(255,255,255,.85); margin-top: 12px; min-height: 54px; }
.tier-icon {
	width: 54px; height: 54px; border-radius: 50%;
	display: flex; align-items: center; justify-content: center;
	background: rgba(255,160,0,.15); margin-bottom: 18px;
}
.tier-icon svg { width: 28px; height: 28px; stroke: var(--wp--preset--color--neutral); fill: none; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.tier-divider { height: 1px; background: rgba(255,255,255,.12); margin: 22px 0 16px; }
.tier-label { font-weight: 700; font-size: .75rem; letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--neutral); margin-bottom: 12px; display: block; }
.feat-list { list-style: none; display: flex; flex-direction: column; gap: 11px; padding: 0; flex-grow: 1; }
.tier-lower { }
.feat { display: flex; align-items: flex-start; gap: 10px; }
.feat .tick {
	flex: 0 0 auto; width: 18px; height: 18px; border-radius: 50%;
	background: var(--wp--preset--color--neutral);
	display: flex; align-items: center; justify-content: center; margin-top: 2px;
}
.feat .tick svg { width: 10px; height: 10px; stroke: #fff; fill: none; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.feat .ftxt { flex: 1; display: flex; justify-content: space-between; gap: 10px; align-items: baseline; }
.feat .fname { font-weight: 500; font-size: .9375rem; color: var(--wp--preset--color--base); }
.feat .fval { font-size: .875rem; color: rgba(255,255,255,.8); text-align: right; white-space: nowrap; }
.tier-best {
	margin-top: auto;
	background: rgba(255,160,0,.12);
	border-radius: 12px; padding: 14px 16px;
	font-size: .9375rem; line-height: 1.5;
	color: rgba(255,255,255,.95);
}
.tier-best strong { font-weight: 700; color: var(--wp--preset--color--neutral); }
.ribbon-note { font-size: 1rem; color: var(--wp--preset--color--base); margin-top: 28px; text-align: center; }

/* --- Tier badge (Recommended) --- */
.tier-badge {
	position: absolute; top: -14px; left: 50%; transform: translateX(-50%);
	background: var(--wp--preset--color--neutral);
	color: var(--wp--preset--color--contrast);
	font-size: .6875rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
	padding: 5px 16px; border-radius: 9999px; white-space: nowrap;
}

/* --- Tier meta rows (What you own / Who runs it / Platform / Best for) --- */
.tier-meta { margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.tier-meta-row { display: flex; flex-direction: column; gap: 2px; min-height: 3.6rem; }
.tier-meta-row.tier-meta-best { min-height: 0; }
.tier-meta-row dt {
	font-size: .6875rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
	color: rgba(255,255,255,.45);
}
.tier-meta-row dd {
	margin: 0; font-size: .9rem; color: rgba(255,255,255,.85); line-height: 1.4;
}
.tier-meta-best dt { color: var(--wp--preset--color--neutral); }
.tier-meta-best dd { font-weight: 500; color: var(--wp--preset--color--base); }

/* --- Partner card --- */
.partner-card {
	margin-top: 28px;
	background: var(--wp--preset--color--secondary);
	border: 1px solid rgba(255,160,0,.3);
	border-bottom: 3px solid var(--wp--preset--color--neutral);
	border-radius: 20px; padding: 32px 36px;
}
.partner-card-header {
	display: flex; justify-content: space-between; align-items: center;
	flex-wrap: wrap; gap: 16px;
}
.partner-card-eyebrow {
	display: block; text-align: left;
	font-size: .6875rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
	color: var(--wp--preset--color--neutral); margin-bottom: 6px;
}
.partner-card-title {
	font-size: 1.125rem; font-weight: 600;
	color: var(--wp--preset--color--base); margin: 0;
}
.partner-card-feats {
	list-style: none; padding: 0; margin: 0;
	display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px 24px;
}
.partner-card-feats li {
	display: flex; align-items: center; gap: 10px;
	font-size: .9375rem; font-weight: 500; color: var(--wp--preset--color--base);
}
.partner-card-feats li .tick {
	flex: 0 0 auto; width: 18px; height: 18px; border-radius: 50%;
	background: var(--wp--preset--color--neutral);
	display: flex; align-items: center; justify-content: center;
}
.partner-card-feats li .tick svg { width: 10px; height: 10px; stroke: #fff; fill: none; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }

/* --- Tier eyebrow & pricing note --- */
.tier-eyebrow {
	display: block; font-weight: 700; font-size: .6875rem; letter-spacing: .14em;
	text-transform: uppercase; color: var(--wp--preset--color--primary); margin-bottom: 6px;
}
.tier-pricing {
	margin-top: auto; padding-top: 20px;
	font-size: .875rem; color: rgba(255,255,255,.65); font-style: italic; line-height: 1.4;
}
.fval--ai {
	display: inline-block;
	background: rgba(26,196,250,.15); color: var(--wp--preset--color--primary);
	font-size: .6875rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
	padding: 2px 8px; border-radius: 9999px; border: 1px solid rgba(26,196,250,.3);
}

/* --- Trust bar --- */
.trust-bar {
	margin-top: 48px;
	background: rgba(8,5,28,.30);
	border: 1px solid rgba(255,255,255,.12);
	border-radius: 20px; padding: 36px 40px; text-align: center;
}
.trust-platform {
	font-size: 1.0625rem; font-weight: 600;
	color: var(--wp--preset--color--base); letter-spacing: .04em;
}
.trust-support {
	display: inline-flex; align-items: center; gap: 8px; margin-top: 14px;
	font-weight: 700; font-size: .8125rem; letter-spacing: .1em; text-transform: uppercase;
	color: var(--wp--preset--color--primary);
	background: rgba(26,196,250,.12); padding: 6px 16px; border-radius: 9999px;
}
.trust-divider { width: 48px; height: 1px; background: rgba(255,255,255,.2); margin: 22px auto; }
.trust-built { display: flex; flex-direction: column; align-items: center; gap: 8px; }
.trust-built strong {
	font-size: 1rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
	color: var(--wp--preset--color--neutral);
}
.trust-items { font-size: .9375rem; color: rgba(255,255,255,.7); line-height: 1.6; }

/* --- Become a Partner CTA — L-corner animation in orange --- */
.partner-cta {
	display: inline-flex; align-items: center; gap: 8px; margin-top: 4px;
	font-weight: 700; font-size: 1rem;
	background: transparent; color: var(--wp--preset--color--base);
	border: none;
	border-radius: 0; border-bottom-right-radius: 10px;
	padding: 0 30px 23px 0;
	text-decoration: none; position: relative; transition: all 0.3s ease;
}
.partner-cta::before {
	content: "";
	position: absolute; right: 0; bottom: 0;
	border-radius: 0 0 8px 0;
	height: 50%; width: 100%;
	border-right: 4px solid var(--wp--preset--color--neutral);
	border-bottom: 4px solid var(--wp--preset--color--neutral);
	background: none; pointer-events: none; transition: all 0.3s ease;
}
.partner-cta:hover::before { height: 100%; width: 50%; }
.partner-cta svg { width: 16px; height: 16px; stroke: currentColor; fill: none; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }

/* Calculator section button — L-corner animation only, no surrounding border */
.wp-block-button.is-style-outline.is-style-outline--mass-calc .wp-block-button__link {
	background: transparent none;
	border: none !important;
	border-radius: 0;
	border-bottom-right-radius: 10px;
	color: var(--wp--preset--color--base);
	padding: 0 30px 23px 30px;
	position: relative;
	transition: all 0.3s ease;
}
.wp-block-button.is-style-outline.is-style-outline--mass-calc .wp-block-button__link::before {
	content: "";
	position: absolute;
	right: 0; bottom: 0;
	border-radius: 0 0 8px 0;
	height: 50%; width: 100%;
	border-right: 4px solid var(--wp--preset--color--primary);
	border-bottom: 4px solid var(--wp--preset--color--primary);
	background: none;
	pointer-events: none;
	transition: all 0.3s ease;
}
.wp-block-button.is-style-outline.is-style-outline--mass-calc .wp-block-button__link:hover::before {
	height: 100%; width: 50%;
}

@media only screen and (max-width: 960px) {
	.tier-track { grid-template-columns: 1fr; max-width: 480px; margin-left: auto; margin-right: auto; }
	.trust-bar { padding: 28px 24px; }
	.trust-items { font-size: .875rem; }
	.partner-card { padding: 24px 20px; }
	.partner-card-feats { grid-template-columns: repeat(2, 1fr); }
}
@media only screen and (max-width: 560px) {
	.pricing-ribbon { padding: var(--wp--preset--spacing--large) 20px 0; }
	.trust-platform { font-size: .9375rem; }
	.partner-card-feats { grid-template-columns: 1fr; }
	.partner-card-header { flex-direction: column; align-items: flex-start; }
}

/* --- Why MASS section --- */
.why-mass-outer { background: #fff; width: 100%; margin: 0 !important; padding: 0 !important; display: block; }
.wp-block-shortcode:has(.why-mass-outer) { background: #fff; margin: 0 !important; margin-block: 0 !important; padding: 0 !important; }
.is-layout-flow > .wp-block-shortcode:has(.why-mass-outer),
[class*="wp-container"] > .wp-block-shortcode:has(.why-mass-outer),
.wp-block-shortcode:has(.home-journey-outer) + .wp-block-shortcode:has(.why-mass-outer),
.wp-block-shortcode:has(.why-mass-outer) + * { margin-block-start: 0 !important; }
.why-mass-section { background: #fff; padding: clamp(40px,5vw,60px) clamp(20px,4vw,48px); margin: 0; }
.why-mass-inner { max-width: 1100px; margin: 0 auto; }
.why-mass-inner .wrf-eyebrow { margin-bottom: 10px; }
.why-mass-heading { font-size: clamp(1.8rem,3.2vw,2.5rem); font-weight: 800; letter-spacing: -0.03em; color: var(--wp--preset--color--contrast); margin: 6px 0 10px; line-height: 1.12; }
.why-mass-sub { font-size: 0.95rem; line-height: 1.7; color: rgba(1,0,35,0.75); margin: 0 0 22px; font-weight: 500; max-width: 58ch; }
.why-mass-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: clamp(28px,4vw,40px); }
.why-mass-tag { display: inline-flex; align-items: center; gap: 7px; font-size: 0.75rem; font-weight: 700; color: var(--wp--preset--color--secondary); background: transparent; border: 1.5px solid rgba(255,160,0,0.45); border-radius: 9999px; padding: 6px 14px 6px 10px; letter-spacing: 0.02em; white-space: nowrap; transition: border-color 0.2s, background 0.2s; }
.why-mass-tag::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--wp--preset--color--neutral); flex-shrink: 0; }
.why-mass-tag:hover { background: rgba(255,160,0,0.06); border-color: rgba(255,160,0,0.7); }
.why-mass-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.why-mass-card { background: #fff; border: 1px solid rgba(1,0,35,0.09); border-top-width: 3px; border-top-style: solid; border-radius: 16px; padding: 26px 22px; display: flex; flex-direction: column; gap: 8px; box-shadow: 0 2px 16px rgba(1,0,35,0.06); transition: transform 0.2s, box-shadow 0.2s; }
.why-mass-card:hover { transform: translateY(-2px); box-shadow: 0 6px 28px rgba(1,0,35,0.1); }
.why-mass-card--orange { border-top-color: var(--wp--preset--color--neutral); }
.why-mass-card--cyan { border-top-color: var(--wp--preset--color--primary); }
.why-mass-card-num { font-size: clamp(2.6rem,4vw,3.4rem); font-weight: 900; letter-spacing: -0.04em; line-height: 1; }
.why-mass-card--orange .why-mass-card-num { color: var(--wp--preset--color--neutral); }
.why-mass-card--cyan .why-mass-card-num { color: var(--wp--preset--color--primary); }
.why-mass-card-num--word { font-size: clamp(1.5rem,2.3vw,2.1rem); letter-spacing: -0.02em; }
.why-mass-card-lbl { font-size: 0.9rem; color: rgba(1,0,35,0.72); line-height: 1.55; font-weight: 500; }
@media (max-width: 860px) { .why-mass-grid { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .why-mass-tag { font-size: 0.72rem; padding: 5px 11px 5px 9px; } }


/* === Home — Problem / Blindness Tax section
---------------------------------------- */
.wp-block-group:has(> .home-problem-section) { background: #020e28 !important; padding-bottom: 0 !important; margin-bottom: 0 !important; }
.home-problem-section { padding: clamp(52px,7vw,80px) clamp(20px,4vw,40px); background: #020e28; overflow-x: hidden; margin: 0; }
.home-problem-inner { max-width: 1100px; margin: 0 auto; }
.home-problem-heading { font-size: clamp(1.8rem,3.5vw,2.8rem); font-weight: 800; letter-spacing: -0.03em; color: #fff; margin: 0 0 clamp(32px,4vw,48px); max-width: 22ch; line-height: 1.12; }
.home-problem-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-bottom: clamp(28px,4vw,40px); }
.home-problem-card { background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.09); border-radius: 16px; padding: 28px 24px; transition: transform 0.2s, border-color 0.2s, box-shadow 0.2s; cursor: default; }
.home-problem-card:hover { transform: translateY(-4px); border-color: rgba(255,255,255,0.22); box-shadow: 0 10px 32px rgba(0,0,0,0.35); }
.home-problem-num { width: 36px; height: 36px; border-radius: 50%; background: rgba(255,160,0,0.15); border: 1px solid rgba(255,160,0,0.35); display: flex; align-items: center; justify-content: center; font-size: 0.75rem; font-weight: 800; color: var(--wp--preset--color--neutral); margin-bottom: 16px; }
.home-problem-title { font-size: 1.05rem; font-weight: 700; color: #fff; margin: 0 0 10px; line-height: 1.3; }
.home-problem-body { font-size: 0.88rem; line-height: 1.65; color: rgba(255,255,255,0.62); margin: 0; }
.home-blindness-callout { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.09); border-radius: 20px; padding: clamp(28px,4vw,40px); display: grid; grid-template-columns: 120px 1fr auto; gap: 40px; align-items: center; }
.home-blindness-stat { font-size: clamp(3rem,5vw,4.5rem); font-weight: 900; color: var(--wp--preset--color--neutral); letter-spacing: -0.04em; line-height: 1; }
.home-blindness-title { font-size: 1.2rem; font-weight: 800; color: #fff; margin: 0 0 10px; line-height: 1.25; }
.home-blindness-body { font-size: 0.9rem; line-height: 1.65; color: rgba(255,255,255,0.62); margin: 0; }
.home-blindness-btn { display: inline-flex; align-items: center; font-weight: 700; font-size: 1rem; background: transparent; color: #fff; border: none; border-radius: 0; border-bottom-right-radius: 10px; padding: 0 30px 23px 0; text-decoration: none; white-space: nowrap; position: relative; transition: all 0.3s ease; flex-shrink: 0; }
.home-blindness-btn::before { content: ""; position: absolute; right: 0; bottom: 0; border-radius: 0 0 8px 0; height: 50%; width: 100%; background: none; pointer-events: none; transition: all 0.3s ease; border-right: 4px solid var(--wp--preset--color--neutral); border-bottom: 4px solid var(--wp--preset--color--neutral); }
.home-blindness-btn:hover::before { height: 100%; width: 50%; }
@media (max-width: 860px) {
	.home-problem-grid { grid-template-columns: 1fr; }
	.home-blindness-callout { grid-template-columns: 1fr; gap: 20px; }
	.home-blindness-btn { padding: 0 24px 20px 0; }
}

/* === Home Maia Section (AI agent showcase on home page)
---------------------------------------- */
.home-maia-outer { background: var(--wp--preset--color--secondary); width: 100%; margin: 0 !important; padding: 0 !important; display: block; }
.wp-block-shortcode:has(.home-maia-outer) { background: var(--wp--preset--color--secondary); margin: 0 !important; padding: 0 !important; }
.home-maia-inner { max-width: 1220px; margin: 0 auto; padding: clamp(56px,7vw,96px) var(--wp--preset--spacing--small); display: grid; grid-template-columns: 1fr 1fr; gap: clamp(40px,6vw,72px); align-items: center; }
.home-maia-outer .wrf-legend-item { color: rgba(255,255,255,.75); }
.home-maia-h2 { font-family: var(--wp--preset--font-family--red-hat-display), sans-serif; font-size: clamp(1.65rem,3vw,2.4rem); font-weight: 800; line-height: 1.12; letter-spacing: -.025em; color: #fff; margin: 0 0 14px; }
.home-maia-h2 em { color: var(--wp--preset--color--primary); font-style: normal; }
.home-maia-price { font-family: var(--wp--preset--font-family--red-hat-display), sans-serif; font-size: .95rem; font-weight: 700; color: #ffa000; margin: 0 0 14px; letter-spacing: .01em; }
.home-maia-sub { font-size: 1.125rem; line-height: 1.7; color: rgba(255,255,255,.75); margin: 0 0 30px; max-width: 48ch; }
.home-maia-outer .wrf-hero-cta--orange { color: var(--wp--preset--color--neutral); }
.home-maia-outer .wrf-hero-cta--cyan { color: var(--wp--preset--color--primary); }
.home-maia-actions { display: flex; flex-wrap: wrap; gap: 48px; align-items: flex-end; }
.home-maia-demo-wrap { width: 100%; min-width: 0; display: flex; align-items: flex-start; justify-content: center; }
.home-maia-demo-wrap .maia-shell { height: 500px !important; max-height: 500px !important; }
@media (max-width: 860px) {
	.home-maia-inner { grid-template-columns: 1fr; }
	.home-maia-demo-wrap .maia-shell { height: 420px !important; max-height: 420px !important; }
}

/* === Home Proof + Stack Section (two-column trust pillars)
---------------------------------------- */
.home-trust-outer { background: var(--wp--preset--color--contrast); width: 100%; margin: 0 !important; padding: 0 !important; display: block; }
.wp-block-shortcode:has(.home-trust-outer) { background: var(--wp--preset--color--contrast); margin: 0 !important; padding: 0 !important; }
.home-trust-inner { max-width: 1220px; margin: 0 auto; padding: clamp(56px,7vw,96px) var(--wp--preset--spacing--small); }
.home-trust-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(24px,4vw,48px); align-items: stretch; }
.home-trust-col { padding: clamp(24px,3vw,36px) clamp(20px,2.5vw,28px); background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); border-radius: 18px; display: flex; flex-direction: column; }
.home-trust-col--proof { border-top: 3px solid #ffa000; }
.home-trust-col--stack { border-top: 3px solid #1ac4fa; }
.home-trust-legend-item { color: rgba(255,255,255,.75); }
.home-trust-h2 { font-family: var(--wp--preset--font-family--red-hat-display), sans-serif; font-size: clamp(1.45rem,2.4vw,1.9rem); font-weight: 800; line-height: 1.12; letter-spacing: -.025em; color: #fff; margin: 0 0 16px; }
.home-trust-p { font-size: 1.05rem; line-height: 1.72; color: rgba(255,255,255,.75); margin: 0 0 32px; flex: 1; }
.home-trust-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 14px; }
.home-trust-list li { font-size: 1rem; line-height: 1.6; color: rgba(255,255,255,.75); padding-left: 0; display: flex; gap: 12px; align-items: center; transition: transform .22s ease; }
.home-trust-list li:hover { transform: translateX(5px); }
.home-trust-icon { flex-shrink: 0; display: flex; transition: transform .22s ease, filter .22s ease; }
.home-trust-list li:hover .home-trust-icon { transform: scale(1.18); filter: drop-shadow(0 0 5px currentColor); }
.home-trust-list--orange .home-trust-icon { color: #ffa000; }
.home-trust-list--cyan .home-trust-icon { color: #1ac4fa; }
.home-trust-list li strong { color: #fff; font-weight: 700; }
@media (max-width: 860px) {
	.home-trust-grid { grid-template-columns: 1fr; }
}

/* === Home Journey (Walk Run Fly fused section)
---------------------------------------- */
.home-journey-outer { background: var(--wp--preset--color--secondary); width: 100%; margin: 0 !important; padding: 0 !important; display: block; }
.wp-block-shortcode:has(.home-journey-outer) { background: var(--wp--preset--color--secondary); margin: 0 !important; padding: 0 !important; }
.home-journey-inner > p:empty,
.home-journey-outer + p:empty,
.wp-block-shortcode:has(.home-journey-outer) > p:empty,
.wp-block-shortcode:has(.home-journey-outer) + p:empty,
.wp-block-shortcode:has(.home-journey-outer) + p:empty + .wp-block-shortcode { margin-block-start: 0 !important; }
.home-journey-inner > p:empty,
.home-journey-outer + p:empty,
.wp-block-shortcode:has(.home-journey-outer) > p:empty,
.wp-block-shortcode:has(.home-journey-outer) + p:empty { display: none !important; margin: 0 !important; }
.home-journey-section { background: var(--wp--preset--color--secondary); padding: clamp(36px,5vw,52px) clamp(20px,4vw,40px) clamp(24px,3vw,36px); margin: 0; }
.home-journey-inner { max-width: 1100px; margin: 0 auto; }
.home-journey-heading { font-size: clamp(1.8rem,3.5vw,2.6rem); font-weight: 800; letter-spacing: -0.03em; color: #fff; margin: 6px 0 12px; line-height: 1.12; }
.home-journey-sub { font-size: clamp(0.9rem,1.4vw,1rem); line-height: 1.65; color: rgba(255,255,255,0.85); margin: 0 0 20px; font-weight: 500; max-width: 60ch; }
.home-journey-inner .wrf-eyebrow { margin-bottom: 10px; }
.home-journey-btns { display: flex; gap: 40px; align-items: center; flex-wrap: wrap; }
.home-journey-btns--center { justify-content: center; margin-top: 8px; }

.home-journey-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-bottom: clamp(20px,3vw,28px); align-items: start !important; }
.home-journey-card { background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); border-radius: 16px; overflow: hidden; display: flex; flex-direction: column; height: auto !important; min-height: 0 !important; transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s; }
.home-journey-card:hover { transform: translateY(-4px); box-shadow: 0 12px 36px rgba(0,0,0,0.3); border-color: rgba(255,160,0,0.5); }
.home-journey-card-top { border-top: 4px solid var(--wp--preset--color--neutral); padding: 16px 18px 14px; background: rgba(255,255,255,0.05); display: flex; flex-direction: column; gap: 10px; height: auto !important; }
.home-journey-label { display: flex; align-items: center; gap: 6px; }
.home-journey-num { font-size: 0.68rem; font-weight: 800; color: var(--wp--preset--color--neutral); letter-spacing: 0.12em; line-height: 1; margin: 0; padding: 0; }
.home-journey-phase { font-size: 0.68rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: var(--wp--preset--color--neutral); line-height: 1; margin: 0; padding: 0; }
.home-journey-name { font-size: 1.05rem; font-weight: 800; color: #fff; line-height: 1.2; margin: 0; padding: 0; }
.home-journey-runner { align-self: flex-start; font-size: 0.7rem; font-weight: 700; color: var(--wp--preset--color--neutral); background: rgba(255,160,0,0.15); border: 1px solid rgba(255,160,0,0.4); border-radius: 20px; padding: 3px 10px; line-height: 1.4; margin: 0; }

.home-journey-feats { list-style: none; margin: 0 !important; padding: 14px 18px 18px !important; display: flex; flex-direction: column; gap: 8px; background: transparent; }
.home-journey-feats li { font-size: 0.9rem; line-height: 1.45; color: rgba(255,255,255,0.88); padding-left: 16px; padding-top: 0; padding-bottom: 0; position: relative; font-weight: 500; margin: 0 !important; }
.home-journey-feats li::before { content: ""; position: absolute; left: 0; top: 7px; width: 6px; height: 6px; border-radius: 50%; background: var(--wp--preset--color--neutral); }

/* L-corner button — primary (cyan) blue variant */
.wrf-hero-cta--blue::before { border-right: 4px solid var(--wp--preset--color--primary); border-bottom: 4px solid var(--wp--preset--color--primary); }

/* CTA box */
.home-journey-cta-box { display: flex; align-items: center; justify-content: space-between; gap: 40px; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12); border-radius: 16px; padding: 28px 36px; margin-bottom: 16px; flex-wrap: wrap; }
.home-journey-cta-box-text { flex: 1; min-width: 0; }
.home-journey-cta-box-heading { font-size: 1.1rem; font-weight: 800; color: #fff; margin: 0 0 6px; line-height: 1.3; }
.home-journey-cta-box-sub { font-size: 0.88rem; color: rgba(255,255,255,0.78); font-weight: 500; margin: 0; line-height: 1.5; }
.home-journey-cta-box .home-journey-btns { flex-shrink: 0; }

/* Buttons are on dark bg — base wrf-hero-cta already has color:#fff, remove light-bg overrides */
.home-journey-trust { font-size: 0.82rem; font-weight: 600; color: rgba(255,255,255,0.6); text-align: center; margin: 0; letter-spacing: 0.01em; }

/* WRF top strip (above the 3 cards) */
.home-wrf-top-strip { display: flex; align-items: flex-start; justify-content: space-between; gap: 32px; background: rgba(1,0,35,.85); border: 1px solid rgba(255,255,255,.1); border-top: 3px solid var(--wp--preset--color--neutral); border-radius: 10px; padding: 24px 28px; margin-bottom: 20px; }
.home-wrf-top-text { min-width: 0; }
.home-wrf-top-strip .wrf-eyebrow { color: var(--wp--preset--color--neutral) !important; }
.home-wrf-top-sub { font-family: var(--wp--preset--font-family--roboto), sans-serif; font-size: 1.125rem; line-height: 1.7; color: rgba(255,255,255,.62); margin: 6px 0 0; }
.home-wrf-top-strip .wrf-hero-cta { flex-shrink: 0; }
@media (max-width: 640px) { .home-wrf-top-strip { flex-direction: column; gap: 16px; } }

/* Academy bottom bar (quiet, same tone as cards) */
.home-academy-bar { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1); border-radius: 16px; padding: 16px 20px; margin-top: 12px; }
.home-academy-bar-title { font-family: var(--wp--preset--font-family--red-hat-display), sans-serif; font-size: .88rem; font-weight: 700; color: rgba(255,255,255,.55); margin-bottom: 4px; }
.home-academy-bar-desc { font-size: .88rem; color: rgba(255,255,255,.85); line-height: 1.5; margin: 0; }
@media (max-width: 700px) {
	.home-journey-cta-box { flex-direction: column; align-items: flex-start; padding: 24px; }
}
@media (max-width: 900px) {
	.home-journey-grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 540px) {
	.home-journey-grid { grid-template-columns: 1fr; }
}

/* === Walk Run Fly Page
---------------------------------------- */
/* Zero out WP block-gap between sections */
main.wp-block-group > .wp-block-group { margin-block-start: 0 !important; }
.wp-site-blocks > header + main,
.wp-site-blocks > main,
.wp-site-blocks > footer { margin-block-start: 0 !important; }
.wrf-hero-inner {
	max-width: 1320px; margin: 0 auto;
	display: grid; grid-template-columns: 1.2fr 0.8fr;
	gap: clamp(24px,4vw,52px); align-items: start;
	padding: clamp(32px,4vw,52px) clamp(16px,3vw,40px) clamp(60px,8vw,96px);
}
.wrf-hero-panel {
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(255,255,255,0.09);
	border-radius: 24px; padding: clamp(20px,3vw,32px);
}
.wrf-legend { display: flex; flex-wrap: wrap; gap: 16px; margin-bottom: 20px; }
.wrf-legend-item {
	display: inline-flex; align-items: center; gap: 7px;
	font-size: 0.7rem; font-weight: 700; letter-spacing: 0.1em;
	text-transform: uppercase; color: rgba(255,255,255,0.75);
}
.wrf-legend-dot { width: 9px; height: 9px; border-radius: 50%; flex-shrink: 0; }
.wrf-legend-dot--build   { background: #ffa000; box-shadow: 0 0 6px rgba(255,160,0,0.6); }
.wrf-legend-dot--managed { background: #ffa000; box-shadow: 0 0 6px rgba(255,160,0,0.6); }
.wrf-legend-dot--inhouse { background: #ffa000; box-shadow: 0 0 6px rgba(255,160,0,0.6); }
.wrf-legend-dot--partner { background: #ffa000; box-shadow: 0 0 6px rgba(255,160,0,0.6); }
.wrf-hero-title {
	font-size: clamp(2.1rem,4vw,3.1rem); font-weight: 700;
	line-height: 1.06; letter-spacing: -0.025em; color: #fff; margin: 0 0 14px;
}
.wrf-hero-sub {
	font-size: clamp(0.95rem,1.5vw,1.08rem); line-height: 1.68;
	color: rgba(255,255,255,0.75); margin: 0 0 22px; max-width: 60ch;
}
.wrf-hero-actions { display: flex; flex-wrap: wrap; gap: 48px; align-items: flex-end; margin-top: 8px; }
.wrf-hero-cta {
	display: inline-flex; align-items: center;
	font-weight: 700; font-size: 1rem;
	background: transparent; color: #fff; border: none;
	border-radius: 0; border-bottom-right-radius: 10px;
	padding: 0 30px 23px 0; text-decoration: none;
	position: relative; transition: all 0.3s ease;
}
.wrf-hero-cta::before {
	content: ""; position: absolute; right: 0; bottom: 0;
	border-radius: 0 0 8px 0; height: 50%; width: 100%;
	background: none; pointer-events: none; transition: all 0.3s ease;
}
.wrf-hero-cta:hover::before { height: 100%; width: 50%; }
.wrf-hero-cta--orange::before {
	border-right: 4px solid var(--wp--preset--color--neutral);
	border-bottom: 4px solid var(--wp--preset--color--neutral);
}
.wrf-hero-cta--cyan::before {
	border-right: 4px solid var(--wp--preset--color--primary);
	border-bottom: 4px solid var(--wp--preset--color--primary);
}

/* Hero timeline */
.wrf-timeline { display: flex; flex-direction: column; gap: 6px; position: relative; }
.wrf-timeline::before {
	content: ""; position: absolute; left: 19px; top: 40px; bottom: 40px;
	width: 2px; z-index: 0;
	background: #ffa000;
}
.wrf-tl-item { display: grid; grid-template-columns: 40px 1fr; gap: 10px; align-items: start; }
.wrf-tl-node {
	width: 40px; height: 40px; border-radius: 11px;
	background: var(--wp--preset--color--contrast);
	display: flex; align-items: center; justify-content: center;
	font-size: 0.68rem; font-weight: 800; letter-spacing: 0.04em;
	position: relative; z-index: 1; flex-shrink: 0;
}
.wrf-tl-item--build   .wrf-tl-node { border: 1px solid rgba(255,160,0,0.4);   color: #ffa000; }
.wrf-tl-item--managed .wrf-tl-node { border: 1px solid rgba(255,160,0,0.4);   color: #ffa000; }
.wrf-tl-item--inhouse .wrf-tl-node { border: 1px solid rgba(255,160,0,0.4);    color: #ffa000; }
.wrf-tl-item--partner .wrf-tl-node { border: 1px solid rgba(255,160,0,0.4);    color: #ffa000; }
.wrf-tl-card {
	background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.09);
	border-radius: 12px; padding: 9px 14px; text-decoration: none;
	backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
	transition: background 0.2s; display: block;
}
.wrf-tl-card:hover { background: rgba(255,255,255,0.08); }
.wrf-tl-head {
	display: flex; align-items: center; justify-content: space-between;
	gap: 10px; margin-bottom: 4px;
}
.wrf-tl-name { font-size: 0.94rem; font-weight: 700; color: #fff; margin: 0; }
.wrf-tl-phase {
	font-size: 0.67rem; font-weight: 700; letter-spacing: 0.08em;
	text-transform: uppercase; padding: 2px 8px; border-radius: 20px; flex-shrink: 0;
}
.wrf-tl-item--build   .wrf-tl-phase { background: rgba(255,160,0,0.12);  color: #ffa000; }
.wrf-tl-item--managed .wrf-tl-phase { background: rgba(255,160,0,0.12);  color: #ffa000; }
.wrf-tl-item--inhouse .wrf-tl-phase { background: rgba(255,160,0,0.12);   color: #ffa000; }
.wrf-tl-item--partner .wrf-tl-phase { background: rgba(255,160,0,0.12);   color: #ffa000; }
.wrf-tl-desc { font-size: 0.8rem; line-height: 1.55; color: rgba(255,255,255,0.55); margin: 0; }

/* Phase sections */
.wrf-section { padding: clamp(52px,7vw,88px) var(--wp--preset--spacing--small); background: #fff; margin: 0; }
.wrf-section--tint  { background: #f5f7fb; }
.wrf-section--dark  { background: var(--wp--preset--color--contrast); }
.wrf-section-inner  { max-width: 1140px; margin: 0 auto; }
.wrf-eyebrow {
	font-size: 0.72rem; font-weight: 700; letter-spacing: 0.14em;
	text-transform: uppercase; color: var(--wp--preset--color--primary); margin: 0 0 16px;
}
.wrf-section-title {
	font-size: clamp(1.65rem,3vw,2.4rem); font-weight: 700; line-height: 1.12;
	letter-spacing: -0.025em; color: var(--wp--preset--color--contrast); margin: 0 0 16px;
}
.wrf-rule { width: 48px; height: 3px; background: var(--wp--preset--color--neutral); border-radius: 9999px; margin: 0 0 24px; }
.wrf-lead { font-size: clamp(1rem,1.5vw,1.1rem); line-height: 1.72; color: rgba(43,35,103,0.7); max-width: 66ch; }

/* Phase detail grid */
.wrf-phase-grid {
	display: grid; grid-template-columns: 1fr 1fr;
	gap: clamp(32px,5vw,72px); align-items: start;
	margin-top: clamp(40px,5vw,64px);
}
.wrf-stagemark {
	display: inline-flex; align-items: center; gap: 10px; margin-bottom: 16px;
	font-size: 0.72rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase;
}
.wrf-stagemark-num {
	width: 34px; height: 34px; border-radius: 9px;
	display: flex; align-items: center; justify-content: center;
	font-size: 0.88rem; font-weight: 900; color: #fff; flex-shrink: 0;
}
.wrf-phase-title {
	font-size: clamp(1.3rem,2.5vw,1.85rem); font-weight: 700; line-height: 1.2;
	letter-spacing: -0.02em; color: var(--wp--preset--color--contrast); margin: 0 0 12px;
}
.wrf-phase-obj { font-size: 1.05rem; line-height: 1.5; color: rgba(43,35,103,0.65); margin: 0 0 12px; font-weight: 500; }
.wrf-phase-body { font-size: 0.97rem; line-height: 1.72; color: rgba(43,35,103,0.62); margin: 0 0 20px; }
.wrf-own-callout {
	border-left: 4px solid; border-radius: 0 12px 12px 0;
	padding: 16px 20px; margin-top: 20px; background: #f5f7fb;
}
.wrf-section--dark .wrf-own-callout { background: rgba(255,255,255,0.05); }
.wrf-own-label {
	font-size: 0.68rem; font-weight: 700; letter-spacing: 0.12em;
	text-transform: uppercase; display: block; margin-bottom: 5px;
}
.wrf-own-text { font-size: 1rem; font-weight: 700; color: var(--wp--preset--color--contrast); line-height: 1.45; display: block; }
.wrf-section--dark .wrf-own-text { color: #fff; }

/* Checklist */
.wrf-checklist { list-style: none; margin: 0; padding: 0; }
.wrf-checklist-item {
	display: flex; align-items: flex-start; gap: 14px;
	font-size: 1rem; line-height: 1.55; color: rgba(43,35,103,0.75);
	padding: 14px 0; border-bottom: 1px solid rgba(43,35,103,0.07);
}
.wrf-checklist-item:last-child { border-bottom: none; }
.wrf-checklist-check {
	flex-shrink: 0; width: 22px; height: 22px; border-radius: 50%;
	display: flex; align-items: center; justify-content: center;
	font-size: 0.62rem; font-weight: 900; color: #fff; margin-top: 2px;
}
.wrf-stage-sep { height: 1px; background: rgba(43,35,103,0.07); max-width: 1140px; margin: 0 auto; }

/* Path 2×2 card grid */
.wrf-path-section { background: #fff; padding: clamp(48px,6vw,72px) var(--wp--preset--spacing--small) clamp(28px,3vw,40px); margin: 0; }
.wrf-path-inner { max-width: 1280px; margin: 0 auto; }
.wrf-path-header { margin-bottom: clamp(36px,5vw,52px); }
.wrf-path-heading { font-size: clamp(1.9rem,3.5vw,2.8rem); font-weight: 700; letter-spacing: -0.025em; line-height: 1.1; color: var(--wp--preset--color--contrast); margin: 0 0 12px; }
.wrf-path-desc { font-size: clamp(0.97rem,1.5vw,1.05rem); line-height: 1.68; color: rgba(1,0,35,0.72); max-width: 62ch; margin: 0; }
.wrf-cards-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.wrf-card { border: 1px solid rgba(1,0,35,0.1); border-radius: 16px; padding: 28px 26px 24px; display: flex; flex-direction: column; border-top-width: 3px; border-top-style: solid; background: #fff; box-shadow: 0 2px 20px rgba(1,0,35,0.05); }
.wrf-card--build   { border-top-color: #ffa000; }
.wrf-card--managed { border-top-color: #ffa000; }
.wrf-card--inhouse { border-top-color: #ffa000; }
.wrf-card--partner { border-top-color: #ffa000; }
.wrf-card-badge { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.wrf-card-num { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 7px; color: #fff; font-size: 0.68rem; font-weight: 900; flex-shrink: 0; }
.wrf-card-phase { font-size: 0.68rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; }
.wrf-card-title { font-size: 1.15rem; font-weight: 700; color: var(--wp--preset--color--contrast); margin: 0 0 7px; line-height: 1.25; }
.wrf-card-sub { font-size: 0.87rem; font-weight: 600; color: rgba(1,0,35,0.52); margin: 0 0 10px; line-height: 1.4; }
.wrf-card-body { font-size: 0.87rem; line-height: 1.65; color: rgba(1,0,35,0.62); margin: 0 0 14px; }
.wrf-card-own { border-left: 3px solid; border-radius: 0 8px 8px 0; padding: 8px 12px; background: rgba(1,0,35,0.025); margin-bottom: 16px; }
.wrf-card-own-label { font-size: 0.65rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; display: block; margin-bottom: 3px; }
.wrf-card-own-text { font-size: 0.82rem; line-height: 1.45; color: rgba(1,0,35,0.62); display: block; }
.wrf-card-list { list-style: none; padding: 0; margin: 0; }
.wrf-card-list li { display: flex; align-items: flex-start; gap: 10px; font-size: 0.83rem; color: rgba(1,0,35,0.7); line-height: 1.45; padding: 9px 0; border-bottom: 1px solid rgba(1,0,35,0.06); }
.wrf-card-list li:last-child { border-bottom: none; }
.wrf-card-check { display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; border-radius: 50%; color: #fff; font-size: 0.6rem; font-weight: 900; flex-shrink: 0; margin-top: 1px; }

/* Phase switcher — sidebar layout */
.wrf-swx { background: var(--wp--preset--color--contrast); padding: clamp(52px,7vw,80px) var(--wp--preset--spacing--small); margin: 0; }
.wrf-swx-inner { max-width: 1280px; margin: 0 auto; }
.wrf-swx-layout { display: grid; grid-template-columns: 280px 1fr; gap: clamp(40px,6vw,80px); align-items: start; }
/* Left nav */
.wrf-swx-nav { display: flex; flex-direction: column; position: sticky; top: 96px; }
.wrf-swx-step {
	display: flex; align-items: flex-start; gap: 16px; padding: 16px 18px;
	border-radius: 14px; cursor: pointer; transition: all 0.25s ease;
	border: 1px solid transparent; position: relative;
}
.wrf-swx-step:not(:last-child)::after {
	content: ''; position: absolute; left: 33px; top: calc(100% - 2px);
	width: 2px; height: 20px;
	background: linear-gradient(180deg, rgba(255,255,255,0.1) 0%, transparent 100%);
}
.wrf-swx-step:hover { background: rgba(255,255,255,0.04); }
.wrf-swx-step--active { background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.1); }
.wrf-swx-node {
	width: 34px; height: 34px; border-radius: 10px; flex-shrink: 0;
	display: flex; align-items: center; justify-content: center;
	font-size: 0.72rem; font-weight: 900; border: 1px solid; transition: all 0.25s;
}
.wrf-swx-step--build   .wrf-swx-node { background: rgba(255,160,0,0.12);  border-color: rgba(255,160,0,0.35); color: #ffa000; }
.wrf-swx-step--managed .wrf-swx-node { background: rgba(255,160,0,0.12);  border-color: rgba(255,160,0,0.35); color: #ffa000; }
.wrf-swx-step--inhouse .wrf-swx-node { background: rgba(255,160,0,0.12);   border-color: rgba(255,160,0,0.35);  color: #ffa000; }
.wrf-swx-step--partner .wrf-swx-node { background: rgba(255,160,0,0.12);   border-color: rgba(255,160,0,0.35);  color: #ffa000; }
.wrf-swx-step--build.wrf-swx-step--active   .wrf-swx-node { background: rgba(255,160,0,0.22);  box-shadow: 0 0 14px rgba(255,160,0,0.25); }
.wrf-swx-step--managed.wrf-swx-step--active .wrf-swx-node { background: rgba(255,160,0,0.22);  box-shadow: 0 0 14px rgba(255,160,0,0.25); }
.wrf-swx-step--inhouse.wrf-swx-step--active .wrf-swx-node { background: rgba(255,160,0,0.22);   box-shadow: 0 0 14px rgba(255,160,0,0.25); }
.wrf-swx-step--partner.wrf-swx-step--active .wrf-swx-node { background: rgba(255,160,0,0.22);   box-shadow: 0 0 14px rgba(255,160,0,0.25); }
.wrf-swx-info { display: flex; flex-direction: column; gap: 3px; padding-top: 1px; }
.wrf-swx-phase { font-size: 0.57rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: rgba(255,255,255,0.45); transition: color 0.2s; }
.wrf-swx-name  { font-size: 1rem; font-weight: 700; color: rgba(255,255,255,0.65); line-height: 1.2; transition: color 0.2s; }
.wrf-swx-hint  { font-size: 0.75rem; color: rgba(255,255,255,0.38); line-height: 1.35; transition: color 0.2s; }
.wrf-swx-step--active .wrf-swx-name  { color: #fff; }
.wrf-swx-step--active .wrf-swx-hint  { color: rgba(255,255,255,0.48); }
.wrf-swx-step--build.wrf-swx-step--active   .wrf-swx-phase { color: #ffa000; }
.wrf-swx-step--managed.wrf-swx-step--active .wrf-swx-phase { color: #ffa000; }
.wrf-swx-step--inhouse.wrf-swx-step--active .wrf-swx-phase { color: #ffa000; }
.wrf-swx-step--partner.wrf-swx-step--active .wrf-swx-phase { color: #ffa000; }
/* Right content */
.wrf-swx-panel { display: none; }
.wrf-swx-panel--active { display: block; animation: swx-in 0.32s ease; }
@keyframes swx-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
.wrf-swx-tag { display: inline-flex; align-items: center; gap: 8px; font-size: 0.62rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; margin-bottom: 18px; }
.wrf-swx-tag-dot { width: 7px; height: 7px; border-radius: 50%; flex-shrink: 0; }
.wrf-swx-title { font-size: clamp(1.9rem,3.8vw,2.8rem); font-weight: 800; line-height: 1.08; letter-spacing: -0.035em; color: #fff; margin: 0 0 16px; }
.wrf-swx-sub   { font-size: clamp(0.97rem,1.4vw,1.06rem); font-weight: 400; color: rgba(255,255,255,0.52); margin: 0 0 32px; line-height: 1.72; max-width: 58ch; }
.wrf-swx-own {
	background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.09);
	border-radius: 10px; padding: 10px 16px; margin-bottom: 20px;
	backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
	display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap;
}
.wrf-swx-own-label { font-size: 0.58rem; font-weight: 800; letter-spacing: 0.18em; text-transform: uppercase; flex-shrink: 0; }
.wrf-swx-own-text  { font-size: 0.88rem; font-weight: 500; color: rgba(255,255,255,0.72); line-height: 1.4; }
.wrf-swx-list { list-style: none; padding: 0; margin: 0; }
.wrf-swx-list li { display: flex; align-items: flex-start; gap: 14px; font-size: 0.97rem; color: rgba(255,255,255,0.72); padding: 13px 0; border-bottom: 1px solid rgba(255,255,255,0.07); line-height: 1.5; }
.wrf-swx-list li:last-child { border-bottom: none; }
.wrf-swx-check { flex-shrink: 0; width: 20px; height: 20px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 0.58rem; font-weight: 900; color: #fff; margin-top: 2px; }

/* Why it works */
.wrf-section--why { background: #fff; }
.wrf-eyebrow--orange { color: var(--wp--preset--color--neutral) !important; }
.wrf-why-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; margin-top: clamp(36px,5vw,52px); }
.wrf-why-card {
	background: #fff;
	border: 1px solid rgba(1,0,35,0.09);
	border-top-width: 3px; border-top-style: solid;
	border-radius: 16px; padding: 26px 22px;
	box-shadow: 0 2px 16px rgba(1,0,35,0.06);
	display: flex; flex-direction: column; gap: 0;
	transition: box-shadow 0.2s, transform 0.2s;
}
.wrf-why-card:hover { box-shadow: 0 6px 28px rgba(1,0,35,0.1); transform: translateY(-2px); }
.wrf-why-card:nth-child(1) { border-top-color: #ffa000; }
.wrf-why-card:nth-child(2) { border-top-color: #ffa000; }
.wrf-why-card:nth-child(3) { border-top-color: #ffa000; }
.wrf-why-card:nth-child(4) { border-top-color: #ffa000; }
.wrf-why-title { font-size: 1rem; font-weight: 700; color: var(--wp--preset--color--contrast); margin: 0 0 10px; line-height: 1.3; }
.wrf-why-body { font-size: 0.88rem; line-height: 1.65; color: rgba(1,0,35,0.72); margin: 0; }

/* Problems grid */
.wrf-problem-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: clamp(36px,5vw,52px); }
.wrf-problem-row {
	display: flex; gap: 18px; align-items: flex-start;
	background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.1);
	border-radius: 14px; padding: 20px;
}
.wrf-problem-num {
	flex-shrink: 0; width: 38px; height: 38px; border-radius: 10px;
	background: rgba(255,255,255,0.08); color: var(--wp--preset--color--primary);
	display: flex; align-items: center; justify-content: center;
	font-weight: 900; font-size: 0.95rem;
}
.wrf-problem-title { font-size: 1rem; font-weight: 700; color: #fff; margin: 0 0 6px; line-height: 1.35; }
.wrf-problem-body { font-size: 0.88rem; line-height: 1.6; color: rgba(255,255,255,0.62); margin: 0 0 8px; }
.wrf-problem-ans {
	display: inline-block; font-size: 0.68rem; font-weight: 700;
	letter-spacing: 0.06em; text-transform: uppercase; color: var(--wp--preset--color--neutral);
}

/* CTA panel */
.wrf-cta-panel {
	background: linear-gradient(135deg,rgba(26,196,250,0.05) 0%,rgba(43,35,103,0.04) 100%);
	border: 1px solid rgba(43,35,103,0.1); border-radius: 24px;
	padding: clamp(40px,6vw,72px) clamp(32px,5vw,72px);
	text-align: center; max-width: 880px; margin: 0 auto;
}
.wrf-cta-panel--blue {
	background: none; border: none; border-radius: 0; padding: 0;
}
.wrf-cta-panel--blue .wrf-cta-title { color: #fff; }
.wrf-cta-panel--blue .wrf-cta-body  { color: rgba(255,255,255,0.78); }
.wrf-cta-title {
	font-size: clamp(1.8rem,3.5vw,2.8rem); font-weight: 800; line-height: 1.12; letter-spacing: -0.03em;
	color: var(--wp--preset--color--contrast); margin: 0 auto 16px; max-width: 24ch;
}
.wrf-cta-body { font-size: 1.05rem; line-height: 1.7; color: rgba(43,35,103,0.65); max-width: 54ch; margin: 0 auto 36px; }
.wrf-cta-actions { display: flex; gap: 48px; justify-content: center; flex-wrap: wrap; }
.wrf-cta-btn {
	display: inline-flex; align-items: center; font-weight: 700; font-size: 0.97rem;
	padding: 14px 32px; border-radius: 9999px;
	background: var(--wp--preset--color--neutral); color: var(--wp--preset--color--contrast);
	text-decoration: none; transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.wrf-cta-btn:hover { background: #e08c00; color: #fff; }
.wrf-cta-btn--ghost {
	background: transparent; color: #fff;
	border: 2px solid rgba(255,255,255,0.45);
}
.wrf-cta-btn--ghost:hover { background: rgba(255,255,255,0.1); border-color: rgba(255,255,255,0.7); color: #fff; }

@media (max-width: 900px) {
	.wrf-hero-inner    { grid-template-columns: 1fr; }
	.wrf-phase-grid    { grid-template-columns: 1fr; }
	.wrf-cards-grid    { grid-template-columns: 1fr; }
	.wrf-swx-layout    { grid-template-columns: 1fr; }
	.wrf-swx-nav       { position: static; flex-direction: row; flex-wrap: wrap; gap: 8px; margin-bottom: 32px; }
	.wrf-swx-step      { flex: 1 1 100%; }
	.wrf-swx-step:not(:last-child)::after { display: none; }
	.wrf-path-heading  { font-size: clamp(1.5rem,6vw,2.2rem); }
	.wrf-path-desc     { max-width: 100%; font-size: 0.95rem; }
	.wrf-swx-sub       { max-width: 100%; font-size: 0.95rem; }
	.wrf-why-grid      { grid-template-columns: 1fr 1fr; }
	.wrf-problem-grid  { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
	.wrf-why-grid  { grid-template-columns: 1fr; }
	.wrf-legend    { gap: 12px; }
}

/* === Platforms Page
---------------------------------------- */

.platforms-hero { position: relative; overflow: hidden; }
.platforms-hero::after {
	content: "";
	position: absolute;
	right: -120px;
	top: -120px;
	width: 500px;
	height: 500px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(26,196,250,0.18), transparent 65%);
	pointer-events: none;
}

/* Hero left-column accent line */
.platforms-hero-accent-line {
	width: 56px;
	height: 4px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--wp--preset--color--primary), var(--wp--preset--color--neutral));
}

/* Hero right-column product stack */
.platforms-hero-stack {
	display: flex;
	flex-direction: column;
	gap: 0;
	max-width: 340px;
	margin-left: auto;
}
.platforms-hero-stack-item {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 14px 20px;
	border-radius: 12px;
	background: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.12);
	transition: background 0.15s;
}
.platforms-hero-stack-item--active {
	background: rgba(26,196,250,0.12);
	border-color: rgba(26,196,250,0.35);
}
.platforms-hero-stack-item--orange {
	background: rgba(255,132,0,0.1);
	border-color: rgba(255,132,0,0.3);
}
.platforms-hero-stack-item--dim {
	opacity: 0.45;
}
.platforms-hero-stack-step {
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: rgba(255,255,255,0.45);
	min-width: 22px;
}
.platforms-hero-stack-name {
	font-size: 0.95rem;
	font-weight: 700;
	color: #fff;
	line-height: 1.2;
}
.platforms-hero-stack-role {
	font-size: 0.72rem;
	color: rgba(255,255,255,0.55);
	margin-top: 2px;
}
.platforms-hero-stack-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: rgba(255,255,255,0.2);
	margin-left: auto;
	flex-shrink: 0;
}
.platforms-hero-stack-dot--cyan { background: var(--wp--preset--color--primary); }
.platforms-hero-stack-dot--orange { background: var(--wp--preset--color--neutral); }
.platforms-hero-stack-connector {
	width: 1px;
	height: 12px;
	background: rgba(255,255,255,0.15);
	margin-left: 37px;
}

/* Responsive: stack on mobile */
@media (max-width: 768px) {
	.platforms-hero-stack { display: none; }
}

/* ── Composable Stack: eyebrow ── */
.cs-eyebrow {
	display: inline-block;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: var(--wp--preset--color--neutral);
	margin: 0;
	padding: 0;
}

/* ── Composable Stack: horizontal flow timeline ── */
.cs-flow {
	display: flex;
	align-items: flex-start;
	margin-top: 56px;
}

.cs-item {
	flex: 1;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	text-decoration: none;
	color: var(--wp--preset--color--contrast);
	gap: 7px;
	padding-bottom: 4px;
}
a.cs-item:hover { text-decoration: none; }
a.cs-item:hover .cs-item__dot { transform: scale(1.25); }

/* Connecting line: from dot center to next dot center */
.cs-item::after {
	content: '';
	position: absolute;
	top: 6px;
	left: 50%;
	width: 100%;
	height: 1px;
	background: rgba(0,0,0,0.08);
	z-index: 0;
}
.cs-item:last-child::after { display: none; }

/* Colored dot — distinct per product */
.cs-item__dot {
	width: 13px;
	height: 13px;
	border-radius: 50%;
	flex-shrink: 0;
	z-index: 1;
	transition: transform 0.18s;
}
.cs-item--studio .cs-item__dot { background: var(--wp--preset--color--primary); box-shadow: 0 0 0 3px #fff, 0 0 0 4px var(--wp--preset--color--primary); }
.cs-item--pace   .cs-item__dot { background: #4f8ef7; box-shadow: 0 0 0 3px #fff, 0 0 0 4px #4f8ef7; }
.cs-item--mind   .cs-item__dot { background: var(--wp--preset--color--neutral); box-shadow: 0 0 0 3px #fff, 0 0 0 4px var(--wp--preset--color--neutral); }
.cs-item--maia   .cs-item__dot { background: #c4b5fd; box-shadow: 0 0 0 3px #fff, 0 0 0 4px #c4b5fd; opacity: 0.6; }

/* Step number */
.cs-item__num {
	display: block;
	font-size: 0.56rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	color: rgba(0,0,0,0.38);
}

/* Product name */
.cs-item__name {
	display: block;
	font-size: 0.72rem;
	font-weight: 700;
	color: rgba(0,0,0,0.72);
	line-height: 1.2;
}
.cs-item--maia .cs-item__name { opacity: 0.4; }

/* Hidden on mobile — decorative only */
@media (max-width: 700px) {
	.cs-flow { display: none; }
}

.platforms-eyebrow {
	display: inline-block;
	font-weight: 700;
	font-size: 0.78rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--wp--preset--color--primary);
	margin-bottom: 0;
}
.platforms-section-eyebrow {
	display: block;
	width: fit-content;
	font-weight: 700;
	font-size: 0.78rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--wp--preset--color--primary);
	margin: 0 auto 12px;
	text-align: center;
}
.platforms-section-eyebrow--dark { color: var(--wp--preset--color--primary); }

.platforms-rule {
	width: 48px;
	height: 3px;
	background: var(--wp--preset--color--neutral);
	border-radius: 999px;
	margin: 16px 0 0;
}

.platforms-stack-strip {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	justify-content: center;
}
.platforms-stack-pill {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 10px 20px;
	border-radius: 10px;
	font-weight: 700;
	font-size: 0.95rem;
	background: rgba(255,255,255,0.08);
	border: 1px solid rgba(255,255,255,0.18);
	color: #fff;
	text-decoration: none;
	transition: background 0.15s ease;
}
.platforms-stack-pill:hover { background: rgba(255,255,255,0.15); }
.platforms-stack-pill--active {
	background: var(--wp--preset--color--primary);
	border-color: var(--wp--preset--color--primary);
	color: #010023;
}
.platforms-stack-role {
	font-weight: 400;
	font-size: 0.68rem;
	opacity: 0.65;
	margin-top: 3px;
	letter-spacing: 0;
	text-transform: none;
}
.platforms-stack-pill--active .platforms-stack-role { opacity: 0.7; }
.platforms-stack-arrow {
	font-size: 1.2rem;
	color: rgba(255,255,255,0.35);
	font-weight: 700;
}

.platforms-card-role {
	display: block;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--primary);
	margin-bottom: 0;
}
.platforms-card-more {
	display: inline-block;
	margin-top: 14px;
	font-weight: 700;
	font-size: 0.85rem;
	color: var(--wp--preset--color--primary);
	text-decoration: none;
	letter-spacing: 0.02em;
	opacity: 0.85;
	transition: opacity 0.15s;
}
.platforms-card-more:hover { opacity: 1; text-decoration: none; }

.platforms-step-num {
	display: block;
	font-size: 2.8rem;
	font-weight: 900;
	line-height: 1;
	margin-bottom: 8px;
}
.platforms-step-product {
	display: block;
	margin-top: 12px;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--primary);
}

.platforms-own-tick {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: var(--wp--preset--color--neutral);
	color: #010023;
	font-weight: 900;
	font-size: 0.9rem;
	margin-bottom: 2px;
}

.platforms-quote {
	max-width: 580px;
	margin: 48px auto 0;
	text-align: center;
	border: none;
	padding: 0;
}
.platforms-quote p {
	font-size: 1.3rem;
	font-weight: 500;
	line-height: 1.45;
	color: rgba(255,255,255,0.9);
	font-style: italic;
}
.platforms-quote cite {
	display: block;
	margin-top: 16px;
	font-style: normal;
	font-size: 0.88rem;
	color: var(--wp--preset--color--primary);
	font-weight: 700;
}

/* ── Platform screenshot browser mockup ── */
.platforms-screen-window {
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 8px 40px rgba(43,35,103,0.14);
	border: 1px solid rgba(43,35,103,0.10);
	background: #fff;
	max-width: 900px;
	margin: 44px auto 0;
}
.platforms-screen-bar {
	height: 38px;
	background: #f0f2f7;
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 0 14px;
	border-bottom: 1px solid rgba(43,35,103,0.07);
}
.platforms-screen-bar i {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #dce0ec;
	display: inline-block;
}
.platforms-screen-url {
	margin-left: 10px;
	height: 16px;
	flex: 1;
	max-width: 320px;
	background: #e5e8f0;
	border-radius: 999px;
}
.platforms-screen-body {
	aspect-ratio: 16 / 9;
	background: #070b1c;
	position: relative;
	overflow: hidden;
	display: block;
}
.plat-dash-svg {
	width: 100%;
	height: auto;
	display: block;
}
.platforms-screen-skel {
	position: absolute;
	inset: 22px;
	display: grid;
	grid-template-columns: 160px 1fr;
	gap: 16px;
	opacity: 0.5;
}
.platforms-screen-skel-side {
	background: #fff;
	border-radius: 10px;
}
.platforms-screen-skel-main {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.platforms-screen-skel-row {
	height: 26px;
	background: #fff;
	border-radius: 6px;
}
.platforms-screen-skel-chart {
	flex: 1;
	background: #fff;
	border-radius: 10px;
}
.platforms-screen-tag {
	position: relative;
	z-index: 1;
	background: rgba(255,255,255,0.92);
	border: 1px solid rgba(29,101,241,0.22);
	color: #010023;
	font-weight: 700;
	padding: 8px 20px;
	border-radius: 999px;
	font-size: 0.88rem;
	box-shadow: 0 2px 12px rgba(0,0,0,0.07);
}
.platforms-media-caption {
	font-size: 0.8rem;
	color: rgba(0,0,0,0.38);
	margin-top: 12px;
	text-align: center;
	font-style: italic;
}

/* ── Platform dashboard UI (inside browser mockup) ── */
.plat-dash {
	display: flex;
	width: 100%;
	height: 100%;
	background: #070b1c;
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
}
.plat-sidebar {
	width: 100px;
	flex-shrink: 0;
	background: rgba(255,255,255,0.02);
	border-right: 1px solid rgba(255,255,255,0.05);
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 8px 0 0;
}
.plat-sidebar-logo {
	display: flex;
	align-items: center;
	gap: 5px;
	padding: 0 8px 8px;
	border-bottom: 1px solid rgba(255,255,255,0.05);
	margin-bottom: 6px;
}
.plat-sidebar-logo-mark {
	width: 16px;
	height: 16px;
	border-radius: 4px;
	background: linear-gradient(135deg, #5AC7DF, #377AB5, #2D2B6E);
	flex-shrink: 0;
}
.plat-sidebar-logo-text {
	font-size: 7px;
	font-weight: 700;
	color: rgba(255,255,255,0.6);
	line-height: 1.3;
}
.plat-nav-item {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 5px 8px;
	border-radius: 5px;
	margin: 0 5px;
}
.plat-nav-item--active {
	background: rgba(26,196,250,0.1);
	border: 1px solid rgba(26,196,250,0.18);
}
.plat-nav-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	flex-shrink: 0;
}
.plat-nav-label {
	font-size: 8px;
	font-weight: 700;
	color: rgba(255,255,255,0.4);
	line-height: 1.2;
}
.plat-nav-item--active .plat-nav-label { color: rgba(255,255,255,0.9); }
.plat-nav-sublabel {
	display: block;
	font-size: 6px;
	color: rgba(255,255,255,0.22);
	margin-top: 1px;
}
.plat-nav-item--active .plat-nav-sublabel { color: rgba(26,196,250,0.55); }
.plat-sidebar-divider {
	height: 1px;
	background: rgba(255,255,255,0.05);
	margin: 6px 8px;
}
.plat-sidebar-status {
	margin-top: auto;
	padding: 7px 8px;
	border-top: 1px solid rgba(255,255,255,0.05);
}
.plat-status-row {
	display: flex;
	align-items: center;
	gap: 5px;
	margin-bottom: 4px;
}
.plat-status-dot {
	width: 5px;
	height: 5px;
	border-radius: 50%;
	flex-shrink: 0;
}
.plat-status-text {
	font-size: 7px;
	color: rgba(255,255,255,0.28);
}
.plat-status-text--ok { color: rgba(80,220,130,0.75); }
.plat-main {
	flex: 1;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	min-width: 0;
}
.plat-topbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 6px 10px;
	border-bottom: 1px solid rgba(255,255,255,0.04);
	background: rgba(255,255,255,0.015);
	flex-shrink: 0;
}
.plat-breadcrumb {
	font-size: 7.5px;
	color: rgba(255,255,255,0.28);
}
.plat-breadcrumb span { color: rgba(255,255,255,0.7); font-weight: 600; }
.plat-live-badge {
	display: flex;
	align-items: center;
	gap: 4px;
	background: rgba(80,220,130,0.07);
	border: 1px solid rgba(80,220,130,0.22);
	border-radius: 999px;
	padding: 2px 7px;
	font-size: 6.5px;
	font-weight: 700;
	color: rgba(80,220,130,0.85);
	letter-spacing: 0.07em;
}
.plat-live-dot {
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: rgba(80,220,130,0.85);
	animation: plat-pulse 2s ease-in-out infinite;
}
@keyframes plat-pulse {
	0%, 100% { opacity: 1; }
	50%       { opacity: 0.35; }
}
.plat-kpi-strip {
	display: flex;
	gap: 6px;
	padding: 6px 10px;
	border-bottom: 1px solid rgba(255,255,255,0.04);
	flex-shrink: 0;
}
.plat-kpi {
	display: flex;
	align-items: center;
	gap: 5px;
	background: rgba(255,255,255,0.03);
	border: 1px solid rgba(255,255,255,0.06);
	border-radius: 5px;
	padding: 3px 8px;
}
.plat-kpi-label {
	font-size: 6.5px;
	color: rgba(255,255,255,0.3);
	text-transform: uppercase;
	letter-spacing: 0.07em;
}
.plat-kpi-value {
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
}
.plat-panels {
	display: flex;
	flex: 1;
	overflow: hidden;
	min-height: 0;
}
.plat-chart-panel {
	flex: 1.6;
	padding: 8px 10px;
	border-right: 1px solid rgba(255,255,255,0.04);
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.plat-contrib-panel {
	flex: 1;
	padding: 8px 10px;
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.plat-panel-title {
	font-size: 7.5px;
	font-weight: 700;
	color: rgba(255,255,255,0.38);
	text-transform: uppercase;
	letter-spacing: 0.07em;
	margin-bottom: 5px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-shrink: 0;
}
.plat-panel-badge {
	background: rgba(26,196,250,0.1);
	color: #1ac4fa;
	border-radius: 3px;
	padding: 1px 5px;
	font-size: 6px;
	font-weight: 600;
	text-transform: none;
	letter-spacing: 0;
}
.plat-chart-wrap {
	flex: 1;
	min-height: 0;
	position: relative;
}
.plat-chart-svg { width: 100%; height: 100%; display: block; }
.plat-chart-legend {
	display: flex;
	gap: 10px;
	margin-top: 3px;
	flex-shrink: 0;
}
.plat-chart-legend span {
	display: flex;
	align-items: center;
	gap: 3px;
	font-size: 6.5px;
	color: rgba(255,255,255,0.25);
}
.plat-contrib-row {
	display: flex;
	align-items: center;
	gap: 5px;
	margin-bottom: 5px;
}
.plat-contrib-label {
	font-size: 7px;
	color: rgba(255,255,255,0.38);
	width: 36px;
	flex-shrink: 0;
}
.plat-contrib-track {
	flex: 1;
	height: 11px;
	background: rgba(255,255,255,0.05);
	border-radius: 3px;
	overflow: hidden;
}
.plat-contrib-fill { height: 100%; border-radius: 3px; }
.plat-contrib-val {
	font-size: 6.5px;
	color: rgba(255,255,255,0.3);
	width: 24px;
	text-align: right;
	flex-shrink: 0;
}
.plat-cloud-badge {
	margin-top: auto;
	padding-top: 6px;
	border-top: 1px solid rgba(255,255,255,0.04);
}
.plat-cloud-badge-inner {
	display: flex;
	align-items: center;
	gap: 5px;
	background: rgba(26,196,250,0.05);
	border: 1px solid rgba(26,196,250,0.14);
	border-radius: 5px;
	padding: 4px 7px;
	font-size: 7px;
	color: rgba(26,196,250,0.75);
	font-weight: 600;
}
.plat-data-flow {
	display: flex;
	align-items: center;
	gap: 4px;
	padding: 5px 10px;
	border-top: 1px solid rgba(255,255,255,0.04);
	background: rgba(0,0,0,0.2);
	flex-shrink: 0;
}
.plat-flow-node {
	display: flex;
	align-items: center;
	gap: 4px;
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(255,255,255,0.07);
	border-radius: 4px;
	padding: 3px 7px;
}
.plat-flow-dot {
	width: 4px;
	height: 4px;
	border-radius: 50%;
	flex-shrink: 0;
}
.plat-flow-text {
	font-size: 7px;
	color: rgba(255,255,255,0.45);
	font-weight: 600;
}
.plat-flow-arrow { font-size: 8px; color: rgba(255,255,255,0.15); }
.plat-flow-label {
	margin-left: auto;
	font-size: 6.5px;
	color: rgba(255,255,255,0.2);
	font-style: italic;
}

/* ── See it in action: video placeholder ── */
.platforms-video-wrap {
	max-width: 900px;
	margin: 44px auto 0;
}
.platforms-video {
	aspect-ratio: 16 / 9;
	border-radius: 16px;
	background: linear-gradient(135deg, #1a1040 0%, #2b2367 60%, #1D65F1 130%);
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 20px 60px rgba(0,0,0,0.45);
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(255,255,255,0.1);
}
.platforms-video::after {
	content: "";
	position: absolute;
	right: -80px;
	bottom: -80px;
	width: 280px;
	height: 280px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(26,196,250,0.2), transparent 70%);
}
.platforms-video-play {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	background: rgba(255,255,255,0.92);
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 1;
	box-shadow: 0 8px 30px rgba(0,0,0,0.35);
	cursor: pointer;
	transition: transform 0.2s, box-shadow 0.2s;
}
.platforms-video-play:hover {
	transform: scale(1.08);
	box-shadow: 0 12px 40px rgba(0,0,0,0.45);
}
.platforms-video-play::after {
	content: "";
	width: 0;
	height: 0;
	border-left: 26px solid #1D65F1;
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;
	margin-left: 6px;
}
.platforms-video-label {
	position: absolute;
	bottom: 20px;
	left: 0;
	right: 0;
	text-align: center;
	color: rgba(255,255,255,0.72);
	font-size: 0.82rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	z-index: 1;
}

/* ── Platform walkthrough steps ── */
/* ── Dot background for dark sections ── */
.plat-dot-bg {
	position: relative;
	overflow: hidden;
}
.plat-dot-bg::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(ellipse at 18% 55%, rgba(26,196,250,0.1) 0%, transparent 52%),
		radial-gradient(ellipse at 82% 22%, rgba(255,160,0,0.07) 0%, transparent 44%);
	pointer-events: none;
	z-index: 0;
}

/* Glass section title header */
.plat-section-glass-header {
	max-width: 680px;
	margin: 0 auto var(--wp--preset--spacing--large);
	padding: clamp(24px,4vw,40px) clamp(24px,4vw,48px);
	background: rgba(255,255,255,0.05);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border: 1px solid rgba(255,255,255,0.1);
	border-radius: 18px;
	box-shadow: 0 0 40px rgba(255,255,255,0.04) inset;
	text-align: center;
}

/* Glass treatment for all cards/elements inside dot-bg sections */
.plat-dot-bg .wp-block-column.has-secondary-background-color {
	background: rgba(255,255,255,0.06) !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border: 1px solid rgba(255,255,255,0.1) !important;
	box-shadow: 0 0 30px rgba(255,255,255,0.04) inset;
}
.plat-dot-bg .platforms-quote {
	background: rgba(255,255,255,0.05);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border: 1px solid rgba(255,255,255,0.09);
	border-radius: 16px;
	box-shadow: 0 0 30px rgba(255,255,255,0.04) inset;
}
.plat-dot-bg .plat-step-card {
	background: rgba(255,255,255,0.07);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border: 1px solid rgba(255,255,255,0.12);
	box-shadow: 0 0 20px rgba(255,255,255,0.04) inset;
}

.plat-steps-wrap {
	display: flex;
	align-items: stretch;
	max-width: 1100px;
	margin: 44px auto 0;
	background: rgba(8,5,28,0.18);
	border: 1px solid rgba(255,255,255,0.09);
	border-radius: 20px;
	padding: 20px;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	box-shadow: 0 0 50px rgba(255,255,255,0.05) inset;
}
.plat-step-card {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: 28px 16px 24px;
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(255,255,255,0.08);
	border-radius: 14px;
}
.plat-step-connector {
	flex: 0 0 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 40px;
}
.plat-step-num {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 1.5px;
	color: rgba(255,255,255,0.38);
	margin-bottom: 14px;
	font-family: monospace;
}
.plat-step-icon-wrap {
	width: 54px;
	height: 54px;
	border-radius: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 16px;
	flex-shrink: 0;
}
.plat-step-title {
	font-size: 14px;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 9px;
	line-height: 1.35;
}
.plat-step-desc {
	font-size: 12.5px;
	color: rgba(255,255,255,0.68);
	line-height: 1.65;
	margin: 0 0 14px;
	flex: 1;
}
.plat-step-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	justify-content: center;
}
.plat-step-tag {
	font-size: 9.5px;
	font-weight: 600;
	padding: 3px 8px;
	border-radius: 20px;
	background: rgba(255,255,255,0.08);
	color: rgba(255,255,255,0.55);
}
@media (max-width: 680px) {
	.plat-steps-wrap { flex-direction: column; gap: 12px; }
	.plat-step-connector { display: none; }
}

/* ── How the parts work together: fw-list ── */
.fw-header {
	margin-bottom: 0;
	text-align: left;
}

.fw-eyebrow {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: var(--wp--preset--color--neutral);
	margin: 0 0 16px;
	text-align: left;
}
.fw-heading {
	font-size: clamp(1.65rem, 3vw, 2.3rem);
	font-weight: 700;
	line-height: 1.12;
	color: var(--wp--preset--color--contrast);
	margin: 0;
	max-width: 26ch;
	text-align: left;
}
.fw-rule {
	width: 48px;
	height: 3px;
	background: var(--wp--preset--color--neutral);
	border-radius: 999px;
	margin: 22px 0 0;
}

.fw-list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 52px 80px;
	margin-top: 60px;
}
.fw-item {
	display: flex;
	gap: 22px;
	align-items: flex-start;
}
.fw-item--dim { opacity: 1; }

/* Number dot — orange bg, dark number */
.fw-dot {
	flex: none;
	width: 44px;
	height: 44px;
	border-radius: 11px;
	background: var(--wp--preset--color--neutral);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #010023;
	font-weight: 900;
	font-size: 1.1rem;
	margin-top: 3px;
	flex-shrink: 0;
	box-shadow: 0 4px 12px rgba(255,132,0,0.25);
}
.fw-dot--dim {
	background: rgba(0,0,0,0.08);
	color: rgba(0,0,0,0.35);
	box-shadow: none;
}

.fw-body { flex: 1; }

.fw-title {
	display: block;
	font-weight: 700;
	font-size: 1.18rem;
	color: var(--wp--preset--color--contrast);
	margin-bottom: 10px;
	line-height: 1.2;
}
.fw-text {
	font-size: 1rem;
	color: rgba(1,0,35,0.72);
	line-height: 1.75;
	margin: 0;
}
.fw-product-tag {
	display: inline-block;
	margin-top: 14px;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--primary);
}
.fw-product-tag--dim { color: rgba(0,0,0,0.28); }

@media (max-width: 780px) {
	.fw-list { grid-template-columns: 1fr; gap: 40px; }
	.fw-item--dim { opacity: 0.55; }
}

/* Product card sublabel */
.prd-sublabel {
	display: block;
	font-size: 0.72rem;
	font-weight: 600;
	color: rgba(255,255,255,0.55);
	margin-bottom: 12px;
	letter-spacing: 0.04em;
}

/* Products: equal-height cards, Explore pinned to bottom */
.platforms-product-cols {
	align-items: stretch !important;
}
.platforms-product-cols .wp-block-column {
	display: flex !important;
	flex-direction: column;
}
.platforms-product-cols .wp-block-column .has-small-font-size {
	flex: 1;
	margin-bottom: 16px !important;
}
.platforms-product-cols .wp-block-column .platforms-card-more {
	display: inline-block;
	margin-top: 0;
}

/* === masstermindnd Product Page
---------------------------------------- */

/* Step number display (decorative, not a heading) */
.masstermind-step-num {
	display: block;
	font-size: 3.5rem;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 16px;
}

/* Shared eyebrow pill */
.masstermind-eyebrow {
	display: block;
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
	font-weight: 700;
	font-size: 0.68rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--wp--preset--color--neutral);
	background: rgba(255,160,0,0.12);
	padding: 5px 14px;
	border-radius: 9999px;
}
/* Light-bg eyebrow variant (on white CTA section) */
.masstermind-eyebrow--light {
	background: rgba(255,160,0,0.1);
	margin-bottom: 18px;
}

/* ---- Hero ---- */
/* Background image + color set via WP block attrs; ::before adds glow overlay */
.masstermind-hero {
	position: relative;
	overflow: hidden;
}
.masstermind-hero-glass {
	border-radius: 20px;
	background: rgba(8,5,28,0.10);
	box-shadow: 0 0 40px 0 rgba(255,255,255,0.25) inset;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	padding-top: var(--wp--preset--spacing--large) !important;
	padding-bottom: var(--wp--preset--spacing--large) !important;
	margin-top: 0 !important;
}
.masstermind-hero::before,
.maia-hero::before {
	content: "";
	position: absolute;
	right: -120px;
	top: -120px;
	width: 500px;
	height: 500px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(26,196,250,0.18), transparent 65%);
	pointer-events: none;
	z-index: 0;
}
.masstermind-hero > .wp-block-heading,
.masstermind-hero > .wp-block-html,
.masstermind-hero > .wp-block-paragraph,
.masstermind-hero > .wp-block-buttons {
	position: relative;
	z-index: 1;
}

/* Stats strip separator */
.masstermind-hero + .wp-block-group {
	border-top: 2px solid rgba(26,196,250,0.18);
}

/* ---- Stats row (white bg, separate cards) ---- */
.masstermind-stats-row {
	display: flex;
	gap: 20px;
	max-width: 960px;
	margin: 0 auto;
}
.masstermind-stat-card {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: 36px 24px 32px;
	background: rgba(1,0,35,0.45);
	border-radius: 18px;
	border: 1px solid rgba(255,255,255,0.08);
	box-shadow: 0 2px 10px rgba(0,0,0,0.12);
	position: relative;
	overflow: hidden;
}
.masstermind-stat-card::before {
	content: "";
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 3px;
}
.masstermind-stat-card--orange::before { background: linear-gradient(90deg,#ffa000,#ffcc50); }
.masstermind-stat-card--cyan::before   { background: linear-gradient(90deg,#1ac4fa,#6de0ff); }
.masstermind-stat-pill {
	display: inline-block;
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	padding: 4px 12px;
	border-radius: 9999px;
	margin-bottom: 20px;
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
}
.masstermind-stat-pill--orange { background: rgba(255,160,0,0.10); color: #ffa000; }
.masstermind-stat-pill--cyan   { background: rgba(26,196,250,0.10); color: #1ac4fa; }
.masstermind-stat-number {
	font-family: var(--wp--preset--font-family--red-hat-display), sans-serif;
	font-size: clamp(2.8rem, 4.5vw, 4rem);
	font-weight: 800;
	line-height: 1;
	margin-bottom: 12px;
	letter-spacing: -0.03em;
}
.masstermind-stat-unit {
	font-size: 0.55em;
	font-weight: 700;
	letter-spacing: 0;
	vertical-align: super;
}
.masstermind-stat-card--orange .masstermind-stat-number { color: var(--wp--preset--color--neutral); }
.masstermind-stat-card--cyan   .masstermind-stat-number { color: var(--wp--preset--color--primary); }
.masstermind-stat-desc {
	font-size: 0.84rem;
	color: rgba(255,255,255,0.55);
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
	line-height: 1.55;
	max-width: 170px;
}
@media (max-width: 782px) {
	.masstermind-stats-row { flex-direction: column; gap: 14px; }
}

/* Hero mini-vis (replaces broken external image) */
.masstermind-hero-visual {
	position: relative;
	max-width: 560px;
	margin: 40px auto 0;
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(26,196,250,0.15);
	border-radius: 16px;
	padding: 20px 24px 16px;
	backdrop-filter: blur(4px);
}
.masstermind-vis-bar-group {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 10px;
}
.masstermind-vis-label {
	width: 48px;
	font-size: 11px;
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
	color: rgba(255,255,255,0.55);
	flex-shrink: 0;
}
.masstermind-vis-track {
	flex: 1;
	height: 18px;
	background: rgba(255,255,255,0.06);
	border-radius: 4px;
	overflow: hidden;
}
.masstermind-vis-fill {
	height: 100%;
	border-radius: 4px;
}
.masstermind-vis-val {
	width: 40px;
	text-align: right;
	font-size: 11px;
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
	color: rgba(255,255,255,0.5);
	flex-shrink: 0;
}
.masstermind-vis-footer {
	margin-top: 14px;
	padding-top: 12px;
	border-top: 1px solid rgba(255,255,255,0.08);
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 8px;
}
.masstermind-vis-kpi {
	font-size: 11px;
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
	font-weight: 600;
}

/* ---- Problem icons ---- */
.masstermind-prob-icon {
	display: flex;
	justify-content: center;
	margin-bottom: 14px;
}

/* ---- 2×2 mini panels grid ---- */
/* ---- Spread layout: Optimized Plan + 2 staggered panels ---- */
.masstermind-spread {
	display: flex;
	flex-direction: column;
	gap: 14px;
}
.masstermind-spread-bottom {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}
.masstermind-spread-panel {
	background: rgba(1,0,35,0.70);
	border: 1px solid rgba(26,196,250,0.18);
	border-radius: 12px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	flex: 1;
	box-shadow: 0 14px 36px rgba(0,0,0,0.50), 0 0 0 1px rgba(26,196,250,0.05);
}
.masstermind-spread-left {
	transform: rotate(-1.5deg) translateY(-5px);
	transform-origin: bottom right;
}
.masstermind-spread-right {
	transform: rotate(1.5deg) translateY(8px);
	transform-origin: bottom left;
}
.masstermind-mini-panel {
	background: rgba(1,0,35,0.65);
	border: 1px solid rgba(26,196,250,0.15);
	border-radius: 12px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.masstermind-mini-header {
	background: rgba(255,255,255,0.04);
	border-bottom: 1px solid rgba(255,255,255,0.07);
	padding: 7px 10px;
	display: flex;
	align-items: center;
	gap: 4px;
}
.masstermind-mini-dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	display: inline-block;
	flex-shrink: 0;
}
.masstermind-mini-title {
	font-size: 9px;
	font-family: var(--wp--preset--font-family--red-hat-display), sans-serif;
	font-weight: 600;
	color: rgba(255,255,255,0.5);
	letter-spacing: 0.04em;
	margin-left: auto;
}
.masstermind-mini-body {
	padding: 12px;
	flex: 1;
}
.masstermind-mini-svg { width: 100%; height: auto; display: block; }

/* Constraint sliders */
.masstermind-cstr-row {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 9px;
}
.masstermind-cstr-row:last-of-type { margin-bottom: 0; }
.masstermind-cstr-ch {
	width: 40px;
	font-size: 10px;
	color: rgba(255,255,255,0.5);
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
	flex-shrink: 0;
}
.masstermind-cstr-track {
	flex: 1;
	height: 13px;
	background: rgba(255,255,255,0.06);
	border-radius: 99px;
	position: relative;
}
.masstermind-cstr-fill {
	position: absolute;
	top: 0;
	height: 100%;
	border-radius: 99px;
}
.masstermind-cstr-val {
	width: 38px;
	text-align: right;
	font-size: 9px;
	color: rgba(255,255,255,0.35);
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
	flex-shrink: 0;
}

/* Scenario cards */
.masstermind-scen-card {
	flex: 1;
	border-radius: 8px;
	padding: 10px 8px;
	display: flex;
	flex-direction: column;
}

/* Pie chart legend */
.masstermind-pie-legend {
	display: flex;
	align-items: center;
	gap: 5px;
	font-size: 9px;
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
	color: rgba(255,255,255,0.55);
}
.masstermind-pie-legend span:first-child {
	width: 8px;
	height: 8px;
	border-radius: 2px;
	flex-shrink: 0;
	display: inline-block;
}
.masstermind-pie-legend span:last-child {
	margin-left: auto;
	color: rgba(255,255,255,0.35);
}

/* ---- Feature check icons ---- */
.masstermind-feat-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	flex-shrink: 0;
	background: rgba(26,196,250,0.1);
	border-radius: 8px;
	margin-top: 2px;
}

/* ---- UI mockup panel (features section) ---- */
.masstermind-ui-panel {
	background: #060f28;
	border: 1px solid rgba(26,196,250,0.18);
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 24px 60px rgba(0,0,0,0.55), 0 0 0 1px rgba(26,196,250,0.05);
}
.masstermind-ui-topbar {
	background: rgba(255,255,255,0.04);
	border-bottom: 1px solid rgba(255,255,255,0.07);
	padding: 10px 16px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.masstermind-ui-dot {
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
}
.masstermind-ui-title {
	font-size: 11px;
	font-family: var(--wp--preset--font-family--red-hat-display), sans-serif;
	font-weight: 600;
	color: rgba(255,255,255,0.65);
	letter-spacing: 0.02em;
}
.masstermind-ui-body { padding: 20px; }
.masstermind-ui-badge {
	background: rgba(26,196,250,0.08);
	border: 1px solid rgba(26,196,250,0.22);
	color: var(--wp--preset--color--primary);
	font-size: 11px;
	font-weight: 600;
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
	padding: 6px 12px;
	border-radius: 6px;
	margin-bottom: 18px;
	display: inline-block;
}
.masstermind-ui-channels { display: flex; flex-direction: column; gap: 10px; }
.masstermind-ui-row { display: flex; align-items: center; gap: 10px; }
.masstermind-ui-ch {
	width: 52px;
	flex-shrink: 0;
	font-size: 12px;
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
	color: rgba(255,255,255,0.55);
}
.masstermind-ui-bar-wrap {
	flex: 1;
	background: rgba(255,255,255,0.06);
	border-radius: 4px;
	height: 20px;
	overflow: hidden;
}
.masstermind-ui-bar { height: 100%; border-radius: 4px; }
.masstermind-ui-amt {
	width: 44px;
	text-align: right;
	font-size: 11px;
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
	color: rgba(255,255,255,0.5);
	flex-shrink: 0;
}
.masstermind-ui-footer {
	margin-top: 16px;
	padding-top: 14px;
	border-top: 1px solid rgba(255,255,255,0.07);
	display: flex;
	justify-content: space-between;
}
.masstermind-ui-kpi { display: flex; flex-direction: column; align-items: center; gap: 2px; }
.masstermind-ui-kpi-val {
	font-size: 1.05rem;
	font-weight: 700;
	font-family: var(--wp--preset--font-family--red-hat-display), sans-serif;
	line-height: 1;
}
.masstermind-ui-kpi-lbl {
	font-size: 9px;
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
	color: rgba(255,255,255,0.35);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

/* ---- Platform step badges ---- */
.masstermind-platform-step {
	display: inline-block;
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--wp--preset--color--primary);
	background: rgba(26,196,250,0.08);
	border: 1px solid rgba(26,196,250,0.2);
	padding: 3px 10px;
	border-radius: 9999px;
	margin-bottom: 8px;
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
}
.masstermind-platform-step--active {
	color: var(--wp--preset--color--neutral);
	background: rgba(255,160,0,0.1);
	border-color: rgba(255,160,0,0.3);
}
.masstermind-platform-sublabel {
	display: block;
	font-size: 0.68rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgba(255,255,255,0.35);
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
	margin-bottom: 8px;
}

/* ---- CTA visual (white section, right column) ---- */
.masstermind-cta-visual {
	background: #f5f7fb;
	border: 1px solid rgba(1,0,35,0.07);
	border-radius: 16px;
	padding: 28px 32px;
}
.masstermind-cta-stat {
	display: flex;
	align-items: baseline;
	gap: 12px;
	padding: 14px 0;
}
.masstermind-cta-num {
	font-family: var(--wp--preset--font-family--red-hat-display), sans-serif;
	font-size: clamp(2rem,4vw,2.8rem);
	font-weight: 700;
	line-height: 1;
	color: var(--wp--preset--color--secondary);
}
.masstermind-cta-lbl {
	font-family: var(--wp--preset--font-family--roboto), sans-serif;
	font-size: 0.875rem;
	color: rgba(1,0,35,0.55);
}
.masstermind-cta-divider {
	height: 1px;
	background: rgba(1,0,35,0.07);
}

/* Explicitly strip any theme-injected borders from CTA columns */
.masstermind-cta-section .wp-block-columns,
.masstermind-cta-section .wp-block-column {
	border: none !important;
	box-shadow: none !important;
}

/* ---- Mobile overrides ---- */
@media (max-width: 782px) {
	.masstermind-hero { padding-top: 48px !important; padding-bottom: 48px !important; }
	.masstermind-hero-visual { display: none; }
	.masstermind-ui-panel { margin-top: 32px; }
	.masstermind-spread-bottom { flex-direction: column; }
	.masstermind-spread-left,
	.masstermind-spread-right { transform: none; }
	/* CTA: stack columns, buttons full-width */
	.masstermind-cta-section .wp-block-columns { flex-direction: column; }
	.masstermind-cta-section .wp-block-column { flex-basis: 100% !important; width: 100%; }
	.masstermind-cta-section .wp-block-buttons { justify-content: flex-start; }
	.masstermind-cta-section .wp-block-button,
	.masstermind-cta-section .wp-block-button__link { width: 100%; text-align: center; }
}

/* ---------------------------------------- */

@media only screen and (max-width: 782px) {

	/* -- Columns -- */

	.is-style-columns-reverse {
		flex-direction: column-reverse;
	}
	.orange-steps {
		.wp-block-column:not(:last-child) {
			p:first-child {
				position: relative;
				&::before {
					display: none;
				}
			}
		}
	}
	.footer-copyright {
		font-size: 12px;
	}
	footer a {
		font-size: 14px;
	}

	/* Mega menu mobile specific */
	.wp-block-navigation__responsive-container {
		position: fixed; inset: 0;
		background: var(--wp--preset--color--base, #fff);
		overflow: auto;
		-webkit-overflow-scrolling: touch;
		padding: var(--wp--preset--spacing--medium, 16px);
	}

	.wp-block-ollie-mega-menu__toggle.wp-block-navigation-item__content {
		width: 100%;
		display: flex; align-items: center; justify-content: space-between;
		padding: 16px 12px;
		line-height: 1.2;
	}

	/* Turn the mega panel into an in-flow block (no absolute positioning) */
	.wp-block-ollie-mega-menu__menu-container {
		position: static !important;
		left: auto !important; top: auto !important;
		width: 100% !important; max-width: none !important;
		transform: none !important;
		box-shadow: none !important;
		margin: 0 0 12px 0;
		padding: 0;
		display: none;                /* hide by default */
	}

	/* Open state driven by the existing aria-expanded on the button */
	.wp-block-ollie-mega-menu__toggle[aria-expanded="true"]
	+ .wp-block-ollie-mega-menu__menu-container {
		display: block;
	}

	/* Give the inner content a “card/page” feel */
	.wp-block-ollie-mega-menu__menu-container > .wp-block-group {
		border-radius: 12px;
		padding: 12px;
		background: var(--wp--preset--color--secondary, #f5f5f5);
	}

	/* Stack any columns inside the mega panel */
	.wp-block-columns { gap: 12px !important; }
	.wp-block-columns > .wp-block-column { flex-basis: 100% !important; }

	/* Rotate the chevron when open */
	.wp-block-ollie-mega-menu__toggle .wp-block-ollie-mega-menu__toggle-icon {
		transition: transform .2s ease;
	}
	.wp-block-ollie-mega-menu__toggle[aria-expanded="true"]
	.wp-block-ollie-mega-menu__toggle-icon { transform: rotate(180deg); }

	/* Hide the little “x” close button inside each mega panel (redundant on mobile) */
	.wp-block-ollie-mega-menu .menu-container__close-button { display: none; }

}
