/* Orbiee ACF Blocks — component styles. Uses tokens.css variables only. */

.orbiee-container {
	max-width: var(--container-max);
	margin-inline: auto;
	padding-inline: 1.75rem;
}

/* ---- Shared scroll-reveal utility ----
   Any element gets [data-reveal] to fade/slide in once, the first time it
   scrolls into view (see the generic observer in main.js). Optional
   inline `style="--reveal-i: 2"` staggers a group's items 80ms apart.
   Gated behind .js-anim-ready (set synchronously in main.js) so content is
   never hidden for no-JS visitors — the JS has to actually be present to
   hide anything in the first place. */
.js-anim-ready [data-reveal] {
	opacity: 0;
	transform: translateY(20px) scale(0.98);
	transition: opacity 0.6s cubic-bezier(0.2, 0.8, 0.2, 1), transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);
	transition-delay: calc(var(--reveal-i, 0) * 80ms);
}
.js-anim-ready [data-reveal].is-in-view {
	opacity: 1;
	transform: translateY(0) scale(1);
}
@media (prefers-reduced-motion: reduce) {
	.js-anim-ready [data-reveal] {
		opacity: 1;
		transform: none;
		transition: none;
	}
}

/* ---- Shared card hover lift ----
   Applied to any card opting in via [data-hover-lift]. */
[data-hover-lift] {
	transition: transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1), border-color 0.3s ease, box-shadow 0.3s ease;
}
[data-hover-lift]:hover {
	transform: translateY(-4px);
	border-color: rgba(192, 132, 252, 0.45);
	box-shadow: 0 16px 32px -16px rgba(124, 58, 237, 0.35);
}
@media (prefers-reduced-motion: reduce) {
	[data-hover-lift] { transition: border-color 0.3s ease; }
	[data-hover-lift]:hover { transform: none; }
}

/* Shared gentle glow pulse — used by Meet Orbiee's orb and the CTA band's
   avatar. The hero avatar uses its own more pronounced orbiee-hero-glow-breathe
   instead (see the Hero section below). */
@keyframes orbiee-glow-pulse {
	0%, 100% { transform: scale(1); opacity: 0.85; }
	50%      { transform: scale(1.08); opacity: 1; }
}

.orbiee-eyebrow {
	display: inline-block;
	font-size: var(--fs-small);
	letter-spacing: var(--ls-eyebrow);
	text-transform: uppercase;
	color: var(--orbiee-accent);
	font-weight: 600;
	margin-bottom: var(--space-xs);
}

.orbiee-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.85rem 1.75rem;
	border-radius: var(--radius-pill);
	font-weight: 600;
	font-size: var(--fs-body);
	text-decoration: none;
	transition: transform 0.2s cubic-bezier(0.2, 0.8, 0.2, 1), opacity 0.2s ease;
}
.orbiee-btn:hover { transform: translateY(-1px); opacity: 0.92; }

.orbiee-btn__arrow { transition: transform 0.25s ease; }
.orbiee-btn:hover .orbiee-btn__arrow { transform: translate(2px, -2px); }

.orbiee-btn--primary {
	background: var(--orbiee-white);
	color: var(--orbiee-bg);
}

.orbiee-btn--ghost {
	background: transparent;
	color: var(--orbiee-text);
	border: 1px solid var(--orbiee-border);
	transition: transform 0.2s cubic-bezier(0.2, 0.8, 0.2, 1), background 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}
.orbiee-btn--ghost:hover {
	opacity: 1; /* overrides the generic .orbiee-btn:hover dim */
	background: var(--orbiee-white);
	border-color: var(--orbiee-white);
	color: var(--orbiee-bg);
}
.orbiee-btn--ghost::after {
	content: '';
	display: inline-block;
	width: 0.7em;
	height: 0.7em;
	margin-left: -0.3em;
	opacity: 0;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17L17 7M17 7H9M17 7V15'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	transform: translate(-4px, 4px);
	transition: opacity 0.25s ease, transform 0.25s ease, margin-left 0.25s ease;
	vertical-align: middle;
}
.orbiee-btn--ghost:hover::after {
	opacity: 1;
	margin-left: 0.35em;
	transform: translate(0, 0);
}
@media (prefers-reduced-motion: reduce) {
	.orbiee-btn--ghost::after { transition: opacity 0.25s ease; }
}

/* ---------------- Hero ---------------- */
.orbiee-hero {
	position: relative;
	background-color: var(--orbiee-bg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	color: var(--orbiee-text);
	overflow: hidden;
	padding-block: var(--space-xl);
	min-height: 85vh;
	display: flex;
	align-items: center;
}
@media (max-width: 700px) {
	.orbiee-hero { min-height: 40vh; }
}

/* Darkens/blends a background photo so heading + CTA text stays readable. */
.orbiee-hero__bg-overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, rgba(7, 9, 14, 0.55) 0%, rgba(7, 9, 14, 0.75) 60%, rgba(7, 9, 14, 0.92) 100%);
}

.orbiee-hero__content {
	position: relative;
	z-index: 2;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--space-md);
	max-width: 780px;
	margin-inline: auto;
}

.orbiee-hero__heading {
	font-family: var(--font-display);
	font-size: 3rem;
    line-height: 1.2;
	margin: 0;
	color: var(--orbiee-white);
}

.orbiee-hero__description {
	font-size: 1.125rem;
	color: var(--orbiee-text-muted);
	line-height: var(--lh-normal);
	margin: 0;
	max-width: 52ch;
}

.orbiee-hero__actions {
	position: relative;
	display: flex;
	align-items: center;
	gap: var(--space-sm);
	flex-wrap: wrap;
	justify-content: center;
	margin-top: var(--space-xs);
}

/* ---- Avatar ---- */
.js-anim-ready .orbiee-hero__avatar,
.js-anim-ready .orbiee-hero__heading,
.js-anim-ready .orbiee-hero__description,
.js-anim-ready .orbiee-hero__actions {
	opacity: 0;
	animation: orbiee-hero-fade-up 0.8s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
}
.js-anim-ready .orbiee-hero__avatar { animation-delay: 0.05s; }
.js-anim-ready .orbiee-hero__heading { animation-delay: 0.2s; }
.js-anim-ready .orbiee-hero__description { animation-delay: 0.4s; }
.js-anim-ready .orbiee-hero__actions { animation-delay: 0.55s; }
@keyframes orbiee-hero-fade-up {
	from { opacity: 0; transform: translateY(16px); }
	to   { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
	.js-anim-ready .orbiee-hero__avatar,
	.js-anim-ready .orbiee-hero__heading,
	.js-anim-ready .orbiee-hero__description,
	.js-anim-ready .orbiee-hero__actions {
		opacity: 1;
		animation: none;
	}
}

.orbiee-hero__avatar {
	position: relative;
	width: clamp(140px, 16vw, 190px);
	aspect-ratio: 1;
	margin-bottom: var(--space-sm);
	display: flex;
	align-items: center;
	justify-content: center;
}

.orbiee-hero__avatar-glow {
	position: absolute;
	inset: -35%;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(168, 85, 247, 0.55) 0%, rgba(168, 85, 247, 0.22) 45%, transparent 72%);
	filter: blur(6px);
	animation: orbiee-hero-glow-breathe 3.2s ease-in-out infinite;
	z-index: 0;
}
/* Dedicated to the hero avatar (not the shared orbiee-glow-pulse other
   blocks use) — a more pronounced zoom in/out + fade "breathing" cycle. */
@keyframes orbiee-hero-glow-breathe {
	0%, 100% { transform: scale(0.92); opacity: 0.55; }
	50%      { transform: scale(1.18); opacity: 1; }
}

/* "Speaking" indicator — concentric rings continuously expand outward from
   the avatar and fade, like an active-speaker/broadcast pulse. Purely
   decorative (no audio involved); suggests the avatar is "live"/talking. */
.orbiee-hero__avatar-ripple {
	position: absolute;
	inset: 0;
	border-radius: 50%;
	border: 1px solid rgba(192, 132, 252, 0.55);
	z-index: 0;
	pointer-events: none;
	animation: orbiee-hero-ripple 2.8s cubic-bezier(0.2, 0.8, 0.2, 1) infinite;
}
.orbiee-hero__avatar-ripple--2 { animation-delay: 0.9s; }
.orbiee-hero__avatar-ripple--3 { animation-delay: 1.8s; }
@keyframes orbiee-hero-ripple {
	0%   { transform: scale(1);   opacity: 0.6; }
	100% { transform: scale(1.9); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
	.orbiee-hero__avatar-glow { animation: none; opacity: 0.85; }
	.orbiee-hero__avatar-ripple { animation: none; display: none; }
}

.orbiee-hero__avatar-img {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
	border: 1px solid rgba(255, 255, 255, 0.15);
}
.orbiee-hero__avatar-lottie {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.15);
}
.orbiee-hero__avatar-lottie svg { display: block; }

/* ---------------- Meet Orbiee / Features ---------------- */
.orbiee-meet {
	position: relative;
	background: var(--orbiee-bg);
	color: var(--orbiee-text);
	padding-block: var(--space-2xl);
	overflow: hidden;
}

.orbiee-meet__intro {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 82.5rem; /* 1320px */
	margin-inline: auto;
}

.orbiee-meet__eyebrow {
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-weight: 400;
	font-size: 0.681rem; /* 10.9px */
	line-height: 1.02rem; /* 16.32px */
	letter-spacing: 0.095rem; /* 1.52px */
	vertical-align: middle;
	text-transform: uppercase;
	color: #8B939F;
	margin-bottom: 0;
}

.orbiee-meet__heading {
	font-family: var(--font-serif);
	font-weight: 400;
	font-style: normal;
	font-size: clamp(2.5rem, 7vw, 5.5rem); /* up to 104px */
	line-height: 1.05; /* spec listed 98.8px on a 104px face (~0.95); loosened slightly so multi-line wraps don't crowd — same reasoning as the CTA band heading. */
	letter-spacing: -0.1625rem; /* -2.6px */
	margin: 2rem 0 0; /* 32px padding-top from eyebrow */
}
.orbiee-meet__heading-bright { color: var(--orbiee-white); }
.orbiee-meet__heading-highlight {
	background: linear-gradient(90deg, #c084fc 0%, #f0a8c9 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.orbiee-meet__heading-muted { color: var(--orbiee-text-muted); }

.orbiee-meet__description {
	font-family: var(--font-body);
	font-weight: 400;
	font-size: 1.25rem; /* 20px */
	line-height: 1.75rem; /* 28px */
	letter-spacing: 0;
	vertical-align: middle;
	color: #8B939F;
	margin: 2.5rem 0 0; /* 40px padding-top from heading */
	max-width: 46ch;
}

/* ---- Decorative orb ---- */
.orbiee-meet__orb {
	position: absolute;
	z-index: 1;
	width: 100%;
	max-width: 82.5rem; /* 1320px, same as intro/features */
	min-height: 31rem; /* comfortably contains the -28% glow bleed (~27.9rem) plus the float drift below, with margin to spare */
	margin: 6rem auto 2rem; /* 96px top spacing, clearance before cards */
	pointer-events: none;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	/* Now absolutely positioned and centered within .orbiee-meet (its nearest
	   positioned ancestor) rather than reserving its own flow space. Since it
	   no longer pushes the features grid down, .orbiee-meet needs enough of
	   its own padding-block for this to land in a gap instead of overlapping
	   the intro text above or the cards below — check that against your
	   actual content height and adjust .orbiee-meet's padding if needed. */
}
.orbiee-meet__orb-inner {
	position: absolute;
	top: 50%;
	left: 50%;
	width: clamp(220px, 22vw, 286px);
	aspect-ratio: 1;
	transform: translate(-50%, -50%);
	animation: orbiee-meet-orb-float 6s ease-in-out infinite;
}
@keyframes orbiee-meet-orb-float {
	0%, 100% { transform: translate(-50%, -50%) translateY(0); }
	50%      { transform: translate(-50%, -50%) translateY(-14px); }
}
@media (prefers-reduced-motion: reduce) {
	.orbiee-meet__orb-inner { animation: none; }
}
.orbiee-meet__orb-img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	filter: drop-shadow(0 0 60px rgba(168, 85, 247, 0.35));
}
.orbiee-meet__orb-glow {
	position: absolute;
	inset: -28%; /* soft blend without bleeding past the container into the cards below */
	border-radius: 50%;
	background: radial-gradient(circle, rgba(176, 111, 224, 0.4) 0%, rgba(176, 111, 224, 0.22) 30%, rgba(124, 58, 237, 0.1) 55%, transparent 78%);
	filter: blur(28px);
	animation: orbiee-glow-pulse 5s ease-in-out infinite;
}
.orbiee-meet__orb-sphere {
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background:
		radial-gradient(circle at 32% 28%, rgba(255, 255, 255, 0.5) 0%, transparent 10%),
		radial-gradient(circle at 60% 65%, rgba(255, 255, 255, 0.16) 0%, transparent 14%),
		radial-gradient(circle at 42% 42%, #d9a6f5 0%, #b06fe0 32%, #8b4fd6 55%, #7c3aed 75%, #5b21b6 100%);
	box-shadow: inset 0 -14px 34px rgba(0, 0, 0, 0.3);
}

.orbiee-meet__features {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 82.5rem; /* 1320px */
	margin: 6rem auto 0; /* orb is now absolutely positioned and no longer reserves this space itself */
	display: grid;
	grid-template-columns: repeat(3, 1fr); /* 3 × 424px + 2 × 24px gap = 1320px at full container width */
	gap: 1.5rem; /* 24px */
}
@media (max-width: 900px) {
	.orbiee-meet__features { grid-template-columns: 1fr; }
}

.orbiee-feature-card {
	min-height: 10.625rem; /* 170px */
	padding: 1.5rem; /* 24px */
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	background: #FFFFFF0A;
	border: 1px solid #FFFFFF1A;
	border-radius: 1.25rem; /* 20px */
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
}
.orbiee-feature-card__icon { display: inline-flex; color: var(--orbiee-text-muted); }
.orbiee-feature-card__icon img { width: 20px; height: 20px; }
.orbiee-feature-card__title {
	font-family: var(--font-body);
	font-weight: 500;
	font-size: 1.125rem; /* 18px */
	line-height: 1.75rem; /* 28px */
	letter-spacing: 0;
	color: #F0F2F5;
	margin: 1rem 0 0; /* 16px padding-top from icon */
}
.orbiee-feature-card__description {
	font-family: var(--font-body);
	font-weight: 400;
	font-size: 0.875rem; /* 14px */
	line-height: 1.25rem; /* 20px */
	letter-spacing: 0;
	color: #8B939F;
	margin: 0;
}

/* ---------------- Stats / Business Outcomes ---------------- */
.orbiee-stats {
	background: var(--orbiee-bg-elevated);
	color: var(--orbiee-text);
	padding-block: var(--space-2xl);
}

.orbiee-stats__intro { max-width: 520px; margin-bottom: var(--space-xl); }
.orbiee-stats__heading { font-size: var(--fs-h2); color: var(--orbiee-white); margin: 0; line-height: var(--lh-tight); }

.orbiee-stats__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: var(--space-lg);
}

.orbiee-stat {
	display: flex;
	flex-direction: column;
	gap: var(--space-xs);
	padding: var(--space-md);
	border-radius: var(--radius-md);
	border: 1px solid transparent;
}
.orbiee-stat__value { font-size: var(--fs-h2); font-weight: 700; color: var(--orbiee-white); }
.orbiee-stat__label { color: var(--orbiee-text-muted); font-size: var(--fs-small); }
.orbiee-stat__bar {
	display: block;
	height: 3px;
	margin-top: var(--space-xs);
	background: var(--orbiee-border);
	border-radius: 2px;
	overflow: hidden;
}
.orbiee-stat__bar-fill {
	display: block;
	height: 100%;
	width: 0%;
	background: linear-gradient(90deg, #c084fc, #f0a868);
	transition: width 1.2s cubic-bezier(0.2, 0.8, 0.2, 1);
}

/* ---------------- CTA Band ---------------- */
.orbiee-cta {
	background: var(--orbiee-bg);
	margin-block: 3rem;
}
@media (max-width: 900px) {
	.orbiee-cta { margin-block: 6rem; }
}
@media (max-width: 560px) {
	.orbiee-cta { margin-block: 4rem; }
}

.orbiee-cta__card {
	position: relative;
	overflow: hidden;
	display: grid;
	grid-template-columns: 1fr 20rem; /* 20rem = 320px, derived from 1279 - padding(64*2) - left-content(790) - gap(40) = 321px */
	align-items: center;
	gap: 2.5rem; /* 40px */
	margin-inline: auto;
	border-radius: 1.5rem; /* 24px */
	border-top: 1px solid var(--input, #FFFFFF1A);
	padding: 4rem; /* 64px */
	background:
		linear-gradient(135deg, rgba(193, 128, 255, 0.1) 0%, rgba(255, 255, 255, 0.02) 50%, rgba(255, 152, 69, 0.08) 100%),
		radial-gradient(60% 90% at 82% 45%, rgba(196, 120, 60, 0.28) 0%, rgba(196, 120, 60, 0.1) 45%, transparent 75%);

	/* Entrance animation handled by the shared [data-reveal] utility —
	   see the top of this file. Just needs the data-reveal attribute in
	   the template. */
}

.orbiee-cta__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1rem; /* 16px */
	max-width: 49.375rem; /* 790px */
}

.orbiee-cta__eyebrow {
	margin-bottom: 0;
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-weight: 400;
	font-size: 0.681rem; /* 10.9px */
	line-height: 1.02rem; /* 16.32px */
	letter-spacing: 0.095rem; /* 1.52px */
	vertical-align: middle;
	text-transform: uppercase;
	color: var(--orbiee-text-muted, #8B939F);
}

.orbiee-cta__heading {
	margin: 0;
	font-size: clamp(2rem, 5vw, 3.75rem); /* up to 60px */
	line-height: 1.25; /* spec listed "opacity/75" — reads like a mislabeled token; 0.75 (and even 1.05) crowd the two lines to the point descenders/ascenders nearly touch, reading like clipped text. Using a readable display value instead. Flagged to the user. */
	letter-spacing: -0.075rem; /* -1.2px */
	vertical-align: middle;
	color: var(--orbiee-white);
	font-weight: 400;
}
.orbiee-cta__heading-plain {
	font-family: var(--font-serif);
	font-weight: 400;
	font-style: normal;
}
.orbiee-cta__heading-highlight {
	display: inline-block;
	font-family: var(--font-serif);
	font-weight: 400;
	font-style: italic;
	background: linear-gradient(90deg, #f0a868 0%, #e8768f 55%, #c76fd6 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.orbiee-cta__description {
	margin: 0;
	font-family: var(--font-body);
	font-weight: 400;
	font-size: 1rem; /* 16px */
	line-height: 1.5rem; /* 24px */
	letter-spacing: 0;
	vertical-align: middle;
	color: var(--orbiee-text-muted, #8B939F);
	max-width: 46.5ch;
}

.orbiee-cta__actions {
	position: relative;
	display: flex;
	align-items: center;
	gap: var(--space-sm);
	flex-wrap: wrap;
	margin-top: 0.5rem;
}
.orbiee-cta__btn { font-size: 0.875rem; padding: 0.65rem 1.25rem; }

/* ---- Avatar ---- */
.orbiee-cta__avatar {
	position: relative;
	z-index: 2;
	width: 19rem; /* 304px */
	aspect-ratio: 1;
	margin-inline: auto;
	display: flex;
	align-items: center;
	justify-content: center;
}
.orbiee-cta__avatar-glow {
	position: absolute;
	inset: -12%;
	border-radius: 50%;
	background:
		radial-gradient(circle, rgba(180, 130, 255, 0.28) 0%, rgba(180, 130, 255, 0.12) 45%, transparent 75%),
		radial-gradient(circle, rgba(230, 160, 100, 0.18) 0%, transparent 70%);
	filter: blur(10px);
	animation: orbiee-glow-pulse 4s ease-in-out infinite;
	z-index: 0;
}
.orbiee-cta__avatar-ring {
	position: absolute;
	inset: -22%;
	border-radius: 50%;
	border: 1px solid rgba(200, 160, 255, 0.14);
	z-index: 0;
	pointer-events: none;
}
.orbiee-cta__avatar-img {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
	border: 1px solid rgba(255, 255, 255, 0.15);
}

/* ---- Responsive ---- */
@media (max-width: 900px) {
	.orbiee-cta__card {
		grid-template-columns: 1fr;
		text-align: center;
		padding: 2.5rem;
	}
	.orbiee-cta__content { align-items: center; max-width: 100%; }
	.orbiee-cta__description { max-width: 50ch; }
	.orbiee-cta__actions { justify-content: center; }
	.orbiee-cta__avatar { order: -1; }
}

@media (max-width: 560px) {
	.orbiee-cta__card { padding: 1.75rem 1.25rem; border-radius: 1rem; }
	.orbiee-cta__heading { font-size: 1.75rem; line-height: 1.15; }
	.orbiee-cta__actions { flex-direction: column; align-items: stretch; }
	.orbiee-cta__btn { justify-content: center; width: 100%; }
}
/* ---------------- Conversation Panel ---------------- */
.orbiee-conversation {
	background: var(--orbiee-bg);
	color: var(--orbiee-text);
	padding-block: var(--space-2xl);
}

.orbiee-conversation__heading {
	margin: 0 0 var(--space-xl);
	font-family: var(--font-serif);
	font-size: clamp(1.75rem, 3.5vw, 2.75rem);
	line-height: 1.2;
	font-weight: 400;
}
.orbiee-conversation__heading-plain { color: var(--orbiee-white); font-style: normal; }
.orbiee-conversation__heading-highlight {
	font-style: italic;
	background: linear-gradient(90deg, #d98cd0 0%, #f0a868 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.orbiee-conversation__grid {
	display: grid;
	grid-template-columns: 1.6fr 1fr;
	gap: var(--space-md);
	align-items: stretch;
}
@media (max-width: 1000px) {
	.orbiee-conversation__grid { grid-template-columns: 1fr; }
}

.orbiee-conversation__side {
	display: flex;
	flex-direction: column;
	gap: var(--space-md);
}
.orbiee-conversation__side .orbiee-conv-card--thinks {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.orbiee-conv-card {
	background: var(--orbiee-bg-elevated);
	border: 1px solid var(--orbiee-border);
	border-radius: var(--radius-lg, 20px);
	padding: var(--space-lg);
}
.orbiee-conv-card__heading {
	font-family: var(--font-serif);
	font-weight: 400;
	font-style: normal;
	font-size: 1.375rem;
	line-height: 1.3;
	color: var(--orbiee-white);
	margin: 0.5rem 0 0;
}

/* ---- Chat demo card ---- */
.orbiee-conv-card--chat {
	display: flex;
	flex-direction: column;
	gap: var(--space-lg);
	min-height: 420px;
}

.orbiee-conv-chat__header {
	display: flex;
	align-items: center;
	gap: 0.75rem;
}
.orbiee-conv-chat__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
	border: 1px solid var(--orbiee-border);
	color: #c084fc;
	flex-shrink: 0;
}
.orbiee-conv-chat__title { display: block; font-weight: 600; color: var(--orbiee-white); font-size: 1rem; }
.orbiee-conv-chat__status {
	display: block;
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.7rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--orbiee-text-muted);
	margin-top: 0.2rem;
}

.orbiee-conv-chat__body {
	position: relative;
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: var(--space-lg);
}

.orbiee-conv-chat__messages {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	width: 100%;
}

.orbiee-conv-bubble {
	margin: 0;
	padding: 0.9rem 1.1rem;
	border-radius: var(--radius-md);
	font-size: 0.9375rem;
	line-height: 1.5;
}
.orbiee-conv-bubble--user {
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid var(--orbiee-border);
	color: var(--orbiee-text);
	border-bottom-left-radius: 4px;
}
.orbiee-conv-bubble--orbiee {
	background: rgba(124, 58, 237, 0.1);
	border: 1px solid rgba(168, 85, 247, 0.35);
	color: var(--orbiee-text);
	border-bottom-left-radius: 4px;
	margin-left: 2rem;
}
.orbiee-conv-bubble__label {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.7rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #c084fc;
	margin-bottom: 0.5rem;
}

/* ---- Scripted reveal sequence ----
   A fixed, editor-authored sequence (user message → typing dots → Orbiee
   reply → product card), replayed on scroll-into-view. Not a live chatbot:
   there's no input, no model, and the content is exactly what's configured
   in ACF — this only controls the order/timing it appears in. */
.js-anim-ready [data-orbiee-conv-reveal] {
	opacity: 0;
	transform: translateY(14px);
	transition: opacity 0.5s cubic-bezier(0.2, 0.8, 0.2, 1), transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.js-anim-ready [data-orbiee-conv-reveal].is-revealed {
	opacity: 1;
	transform: translateY(0);
}
@media (prefers-reduced-motion: reduce) {
	.js-anim-ready [data-orbiee-conv-reveal] {
		opacity: 1;
		transform: none;
		transition: none;
	}
}

.js-anim-ready .orbiee-conv-bubble--orbiee [data-orbiee-conv-reply-text] { display: none; }
.js-anim-ready .orbiee-conv-bubble--orbiee.is-replied [data-orbiee-conv-reply-text] { display: inline; }

.orbiee-conv-typing {
	display: none;
	align-items: center;
	gap: 4px;
	padding-block: 0.15rem;
}
.orbiee-conv-bubble--orbiee.is-typing .orbiee-conv-typing { display: inline-flex; }
.orbiee-conv-typing span {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #c084fc;
	opacity: 0.5;
	animation: orbiee-conv-typing-bounce 1.1s ease-in-out infinite;
}
.orbiee-conv-typing span:nth-child(2) { animation-delay: 0.15s; }
.orbiee-conv-typing span:nth-child(3) { animation-delay: 0.3s; }
@keyframes orbiee-conv-typing-bounce {
	0%, 60%, 100% { transform: translateY(0); opacity: 0.5; }
	30%           { transform: translateY(-3px); opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
	.orbiee-conv-typing { display: none !important; }
	.orbiee-conv-bubble--orbiee [data-orbiee-conv-reply-text] { display: inline !important; }
}

.orbiee-conv-products {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0.75rem;
}
.orbiee-conv-product {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
}
.orbiee-conv-product__image {
	aspect-ratio: 4 / 3;
	border-radius: var(--radius-md);
	overflow: hidden;
	background: #000;
	margin-bottom: 0.5rem;
}
.orbiee-conv-product__image img { width: 100%; height: 100%; object-fit: cover; }
.orbiee-conv-product__tag {
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.65rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--orbiee-text-muted);
}
.orbiee-conv-product__name { font-weight: 600; color: var(--orbiee-white); font-size: 0.9375rem; }
.orbiee-conv-product__price { color: var(--orbiee-text-muted); font-size: 0.875rem; }

@media (max-width: 700px) {
	.orbiee-conv-products { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
	.orbiee-conv-products { grid-template-columns: 1fr; }
}

/* ---- Stats card ---- */
.orbiee-conv-stats-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--space-md) var(--space-md);
	margin-top: var(--space-md);
}
.orbiee-conv-stat { display: flex; flex-direction: column; gap: 0.3rem; }
.orbiee-conv-stat__value {
	font-family: var(--font-serif);
	font-size: 2rem;
	font-weight: 400;
	line-height: 1;
}
.orbiee-conv-stat__value--orange { color: #f0a868; }
.orbiee-conv-stat__value--purple { color: #b98cf2; }
.orbiee-conv-stat__label {
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.7rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--orbiee-text-muted);
}

/* ---- How Orbiee Thinks card ---- */
.orbiee-conv-timeline {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin-top: var(--space-md);
	flex-wrap: wrap;
}
.orbiee-conv-timeline__dash {
	width: 14px;
	height: 1px;
	background: var(--orbiee-border);
	flex-shrink: 0;
	transition: background 0.4s ease;
}
.orbiee-conv-timeline__dash.is-active { background: rgba(192, 132, 252, 0.6); }

.orbiee-conv-step {
	position: relative;
	flex: 1;
	min-width: fit-content;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.4rem;
	text-align: center;
	padding: 0.85rem 1rem;
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid var(--orbiee-border);
	border-radius: var(--radius-md);
	transition: border-color 0.4s ease, box-shadow 0.4s ease;
}
.orbiee-conv-step.is-active {
	border-color: rgba(192, 132, 252, 0.5);
	box-shadow: 0 0 0 3px rgba(192, 132, 252, 0.12);
}
.orbiee-conv-step__dot {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.75rem;
	font-weight: 600;
	color: var(--orbiee-text-muted);
	transition: border-color 0.4s ease, color 0.4s ease, box-shadow 0.4s ease;
}
.orbiee-conv-step.is-active .orbiee-conv-step__dot {
}
.orbiee-conv-step__label {
	margin-top: 0.2rem;
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--orbiee-text);
}
.orbiee-conv-step__description {
	font-size: 0.8125rem;
	color: var(--orbiee-text-muted);
}
@media (prefers-reduced-motion: reduce) {
	.orbiee-conv-step, .orbiee-conv-step__dot, .orbiee-conv-timeline__dash { transition: none; }
}
@media (max-width: 480px) {
	.orbiee-conv-timeline { flex-direction: column; align-items: stretch; }
	.orbiee-conv-timeline__dash { display: none; }
	.orbiee-conv-step { flex-direction: row; text-align: left; }
}

/* ---- Stats card ---- */
.orbiee-conv-stats-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--space-md) var(--space-md);
	margin-top: var(--space-md);
}
.orbiee-conv-stat { display: flex; flex-direction: column; gap: 0.3rem; }
.orbiee-conv-stat__value {
	font-family: var(--font-serif);
	font-size: 2rem;
	font-weight: 400;
	line-height: 1;
}
.orbiee-conv-stat__value--orange { color: #f0a868; }
.orbiee-conv-stat__value--purple { color: #b98cf2; }
.orbiee-conv-stat__label {
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.7rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--orbiee-text-muted);
}

/* ---- How Orbiee Thinks card ---- */
.orbiee-conv-timeline {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin-top: var(--space-md);
	flex-wrap: wrap;
}
.orbiee-conv-timeline__dash {
	width: 14px;
	height: 1px;
	background: var(--orbiee-border);
	flex-shrink: 0;
	transition: background 0.4s ease;
}
.orbiee-conv-timeline__dash.is-active { background: rgba(192, 132, 252, 0.6); }

.orbiee-conv-step {
	position: relative;
	flex: 1;
	min-width: fit-content;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.4rem;
	text-align: center;
	padding: 0.85rem 1rem;
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid var(--orbiee-border);
	border-radius: var(--radius-md);
	transition: border-color 0.4s ease, box-shadow 0.4s ease;
}
.orbiee-conv-step.is-active {
	border-color: rgba(192, 132, 252, 0.5);
	box-shadow: 0 0 0 3px rgba(192, 132, 252, 0.12);
}
.orbiee-conv-step__dot {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.75rem;
	font-weight: 600;
	color: var(--orbiee-text-muted);
	transition: border-color 0.4s ease, color 0.4s ease, box-shadow 0.4s ease;
}
.orbiee-conv-step.is-active .orbiee-conv-step__dot {
}
.orbiee-conv-step__label {
	margin-top: 0.2rem;
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--orbiee-text);
}
.orbiee-conv-step__description {
	font-size: 0.8125rem;
	color: var(--orbiee-text-muted);
}
@media (prefers-reduced-motion: reduce) {
	.orbiee-conv-step, .orbiee-conv-step__dot, .orbiee-conv-timeline__dash { transition: none; }
}
@media (max-width: 480px) {
	.orbiee-conv-timeline { flex-direction: column; align-items: stretch; }
	.orbiee-conv-timeline__dash { display: none; }
	.orbiee-conv-step { flex-direction: row; text-align: left; }
}   
/* ---- Stats card ---- */
.orbiee-conv-stats-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--space-md) var(--space-md);
	margin-top: var(--space-md);
}
.orbiee-conv-stat { display: flex; flex-direction: column; gap: 0.3rem; }
.orbiee-conv-stat__value {
	font-family: var(--font-serif);
	font-size: 2rem;
	font-weight: 400;
	line-height: 1;
}
.orbiee-conv-stat__value--orange { color: #f0a868; }
.orbiee-conv-stat__value--purple { color: #b98cf2; }
.orbiee-conv-stat__label {
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.7rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--orbiee-text-muted);
}

/* ---- How Orbiee Thinks card ---- */
.orbiee-conv-timeline {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin-top: var(--space-md);
	flex-wrap: wrap;
}
.orbiee-conv-timeline__dash {
	width: 14px;
	height: 1px;
	background: var(--orbiee-border);
	flex-shrink: 0;
	transition: background 0.4s ease;
}
.orbiee-conv-timeline__dash.is-active { background: rgba(192, 132, 252, 0.6); }

.orbiee-conv-step {
	position: relative;
	flex: 1;
	min-width: fit-content;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.4rem;
	text-align: center;
	padding: 0.85rem 1rem;
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid var(--orbiee-border);
	border-radius: var(--radius-md);
	transition: border-color 0.4s ease, box-shadow 0.4s ease;
}
.orbiee-conv-step.is-active {
	border-color: rgba(192, 132, 252, 0.5);
	box-shadow: 0 0 0 3px rgba(192, 132, 252, 0.12);
}
.orbiee-conv-step__dot {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.75rem;
	font-weight: 600;
	color: var(--orbiee-text-muted);
	transition: border-color 0.4s ease, color 0.4s ease, box-shadow 0.4s ease;
}
.orbiee-conv-step.is-active .orbiee-conv-step__dot {
}
.orbiee-conv-step__label {
	margin-top: 0.2rem;
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--orbiee-text);
}
.orbiee-conv-step__description {
	font-size: 0.8125rem;
	color: var(--orbiee-text-muted);
}
@media (prefers-reduced-motion: reduce) {
	.orbiee-conv-step, .orbiee-conv-step__dot, .orbiee-conv-timeline__dash { transition: none; }
}
@media (max-width: 480px) {
	.orbiee-conv-timeline { flex-direction: column; align-items: stretch; }
	.orbiee-conv-timeline__dash { display: none; }
	.orbiee-conv-step { flex-direction: row; text-align: left; }
}

/* ---------------- Watch Orbiee / Imagine Your Store ---------------- */
.orbiee-imagine {
	background: var(--orbiee-bg);
	color: var(--orbiee-text);
	padding-block: var(--space-2xl);
}

.orbiee-imagine__heading {
	margin: 0.75rem 0 var(--space-xl);
	font-family: var(--font-serif);
	font-weight: 400;
	font-size: clamp(1.75rem, 4vw, 3rem);
	line-height: 1.2;
}
.orbiee-imagine__heading-plain { display: block; color: var(--orbiee-white); font-style: normal; }
.orbiee-imagine__heading-highlight {
	font-style: italic;
	background: linear-gradient(90deg, #d98cd0 0%, #f0a868 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.orbiee-imagine__grid {
	display: grid;
	grid-template-columns: 1fr 1.1fr;
	gap: var(--space-lg);
	align-items: stretch;
}
@media (max-width: 900px) {
	.orbiee-imagine__grid { grid-template-columns: 1fr; }
}

.orbiee-imagine-card {
	position: relative;
	background: var(--orbiee-bg-elevated);
	border: 1px solid var(--orbiee-border);
	border-radius: var(--radius-lg, 20px);
	padding: var(--space-lg);
	overflow: hidden;
}

/* ---- Left: controls ---- */
.orbiee-imagine__step-label {
	margin: 0 0 0.85rem;
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.7rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--orbiee-text-muted);
}
.orbiee-imagine__step-label--second { margin-top: var(--space-lg); }

.orbiee-imagine__pills {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
}

.orbiee-imagine__pill {
	appearance: none;
	cursor: pointer;
	font-family: var(--font-body);
	font-size: 0.875rem;
	font-weight: 500;
	padding: 0.5rem 1rem;
	border-radius: var(--radius-pill);
	border: 1px solid var(--orbiee-border);
	background: rgba(255, 255, 255, 0.04);
	color: var(--orbiee-text-muted);
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.orbiee-imagine__pill:hover {
	border-color: rgba(255, 255, 255, 0.25);
	color: var(--orbiee-text);
}
.orbiee-imagine__pill.is-active {
	background: var(--orbiee-white);
	color: var(--orbiee-bg);
	border-color: var(--orbiee-white);
}

.orbiee-imagine__actions {
	position: relative;
	display: flex;
	align-items: center;
	gap: var(--space-sm);
	flex-wrap: wrap;
	margin-top: var(--space-lg);
}

/* ---- Right: preview ---- */
.orbiee-imagine-card--preview {
	display: flex;
	flex-direction: column;
	justify-content: center;
	background:
		radial-gradient(60% 55% at 78% 8%, rgba(168, 85, 247, 0.28) 0%, rgba(168, 85, 247, 0.08) 45%, transparent 75%),
		var(--orbiee-bg-elevated);
}

.orbiee-imagine__preview-label {
	display: block;
	margin-bottom: 0.85rem;
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.7rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--orbiee-text-muted);
}

.orbiee-imagine__heading-dynamic {
	margin: 0 0 var(--space-lg);
	font-family: var(--font-serif);
	font-weight: 400;
	font-style: normal;
	font-size: clamp(1.375rem, 2.4vw, 1.75rem);
	line-height: 1.4;
	color: var(--orbiee-text);
}
.orbiee-imagine__heading-highlight {
	font-style: italic;
	background: linear-gradient(90deg, #e8768f 0%, #f0a868 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.orbiee-imagine__message {
	display: flex;
	align-items: flex-start;
	gap: 0.6rem;
	padding: 0.9rem 1.1rem;
	background: rgba(124, 58, 237, 0.1);
	border: 1px solid rgba(168, 85, 247, 0.35);
	border-radius: var(--radius-md);
	border-bottom-left-radius: 4px;
}
.orbiee-imagine__message-dot {
	flex-shrink: 0;
	margin-top: 0.5rem;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #c084fc;
	box-shadow: 0 0 8px 1px rgba(192, 132, 252, 0.6);
}
.orbiee-imagine__message p {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--orbiee-text);
}

/* ---------------- One Brain / Every Surface (Deployment) ---------------- */
.orbiee-deploy {
	background: var(--orbiee-bg);
	color: var(--orbiee-text);
	padding-block: var(--space-2xl);
}

.orbiee-deploy__heading {
	margin: 0.75rem 0 var(--space-xl);
	font-family: var(--font-serif);
	font-weight: 400;
	font-size: clamp(1.75rem, 4vw, 3rem);
	line-height: 1.2;
}
.orbiee-deploy__heading-plain { color: var(--orbiee-white); font-style: normal; }
.orbiee-deploy__heading-highlight {
	font-style: italic;
	background: linear-gradient(90deg, #d98cd0 0%, #f0a868 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.orbiee-deploy__grid {
	display: grid;
	grid-template-columns: 1.35fr 1fr;
	gap: var(--space-lg);
	align-items: stretch;
}
@media (max-width: 900px) {
	.orbiee-deploy__grid { grid-template-columns: 1fr; }
}
.orbiee-deploy-card--channels {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.orbiee-deploy-card {
	position: relative;
	background: var(--orbiee-bg-elevated);
	border: 1px solid var(--orbiee-border);
	border-radius: var(--radius-lg, 20px);
	padding: var(--space-lg);
	overflow: hidden;
}

/* ---- Left: channels ---- */

.orbiee-deploy__channels {
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--space-md);
}
@media (max-width: 700px) {
	.orbiee-deploy__channels { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 480px) {
	.orbiee-deploy__channels { grid-template-columns: 1fr; }
}

.orbiee-deploy__channels-glow {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 220px;
	height: 220px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(192, 132, 252, 0.28) 0%, rgba(230, 160, 100, 0.12) 45%, transparent 75%);
	filter: blur(28px);
	pointer-events: none;
	z-index: 0;
}

.orbiee-channel-card {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
	padding: var(--space-md);
	background: rgba(255, 255, 255, 0.02);
	border: 1px solid var(--orbiee-border);
	border-radius: var(--radius-md);
}
.orbiee-channel-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	color: #c084fc;
}
.orbiee-channel-card__icon img { width: 100%; height: 100%; object-fit: contain; }
.orbiee-channel-card__title { font-size: 0.9375rem; font-weight: 600; color: var(--orbiee-white); }
.orbiee-channel-card__subtitle {
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.65rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--orbiee-text-muted);
}

/* ---- Right: deployment panel ---- */
.orbiee-deploy__panel-label {
	display: block;
	margin-bottom: 0.85rem;
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.7rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--orbiee-text-muted);
}
.orbiee-deploy__panel-heading {
	margin: 0 0 var(--space-sm);
	font-family: var(--font-serif);
	font-weight: 400;
	font-size: 1.5rem;
	line-height: 1.3;
	color: var(--orbiee-white);
}
.orbiee-deploy__panel-description {
	margin: 0 0 var(--space-lg);
	max-width: 42ch;
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--orbiee-text-muted);
}

.orbiee-deploy__methods {
	position: relative;
	display: flex;
	gap: 12px;
	margin-bottom: var(--space-md);
}
.orbiee-deploy__methods-slider {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 0;
	background: #6d5ef0;
	border-radius: 0.625rem;
	transition: transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1), width 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);
}
@media (prefers-reduced-motion: reduce) {
	.orbiee-deploy__methods-slider { transition: none; }
}
.orbiee-deploy__tab {
	position: relative;
	z-index: 1;
	appearance: none;
	cursor: pointer;
	border: none;
	display: inline-flex;
	font-family: var(--font-body);
	font-size: 0.875rem;
	font-weight: 500;
	padding: 0.5rem 1.1rem;
	border-radius: var(--radius-pill);
	background: transparent;
	color: var(--orbiee-text-muted);
	transition: color 0.3s ease;
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid var(--orbiee-border);
	border-radius: 0.625rem;
	padding: 12px;
	width: 33.33%;
	justify-content: center;
}
.orbiee-deploy__tab.is-active {
	color: #fff;
	font-weight: 600;
}
.orbiee-deploy__method-description {
	margin: 0;
	font-size: 0.9375rem;
	color: var(--orbiee-text-muted);
	max-width: 42ch;
	min-height: 1.5em;
	transition: opacity 0.5s cubic-bezier(0.2, 0.8, 0.2, 1);
}

/* ---------------- Trained By Industry ---------------- */
.orbiee-industry {
	background: var(--orbiee-bg);
	color: var(--orbiee-text);
	padding-block: var(--space-2xl);
}

.orbiee-industry__heading {
	margin: 0.75rem 0 var(--space-xl);
	font-family: var(--font-serif);
	font-weight: 400;
	font-size: clamp(1.75rem, 4vw, 3rem);
	line-height: 1.2;
}
.orbiee-industry__heading-plain { color: var(--orbiee-white); font-style: normal; }
.orbiee-industry__heading-highlight {
	font-style: italic;
	background: linear-gradient(90deg, #d98cd0 0%, #f0a868 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.orbiee-industry__grid {
	display: grid;
	grid-template-columns: 1.6fr 1fr;
	gap: var(--space-lg);
	align-items: stretch;
}
@media (max-width: 767px) {
	.orbiee-industry__grid { grid-template-columns: 1fr; }
	.orbiee-industry-card--preview { order: 1; }
	.orbiee-industry-card--list { order: 2; }
}

.orbiee-industry-card {
	position: relative;
	background: var(--orbiee-bg-elevated);
	border: 1px solid var(--orbiee-border);
	border-radius: var(--radius-lg, 20px);
	overflow: hidden;
}

/* ---- Left: preview ---- */
.orbiee-industry-card--preview {
	display: grid;
	grid-template-columns: 1fr 1.1fr;
	min-height: 420px;
}
@media (max-width: 700px) {
	.orbiee-industry-card--preview { grid-template-columns: 1fr; min-height: 0; }
}

.orbiee-industry__image {
	position: relative;
	background: #000;
	min-height: 260px;
}
.orbiee-industry__image img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: opacity 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.orbiee-industry__image.is-swapping img { opacity: 0; }

.orbiee-industry__info {
	display: flex;
	flex-direction: column;
	padding: var(--space-lg);
}

.orbiee-industry__counter {
	display: block;
	margin-bottom: var(--space-sm);
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.7rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--orbiee-text-muted);
}

.orbiee-industry__name {
	margin: 0 0 var(--space-sm);
	font-family: var(--font-serif);
	font-weight: 400;
	font-size: 1.5rem;
	color: var(--orbiee-white);
}

.orbiee-industry__description {
	margin: 0;
	max-width: 32ch;
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--orbiee-text-muted);
}

.orbiee-industry__outcome {
	margin-top: auto;
	padding-top: var(--space-lg);
}
.orbiee-industry__outcome-label {
	display: block;
	margin-bottom: 0.4rem;
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.65rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--orbiee-text-muted);
}
.orbiee-industry__outcome-value {
	margin: 0;
	padding: 0.85rem 1rem;
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid var(--orbiee-border);
	border-radius: var(--radius-md);
	font-family: var(--font-serif);
	font-size: 1.125rem;
	color: var(--orbiee-text);
}
.orbiee-industry__outcome-highlight {
	font-style: italic;
	background: linear-gradient(90deg, #f0a868 0%, #e8768f 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	margin-right: 0.3ch;
}

/* ---- Right: list ---- */
.orbiee-industry-card--list { padding: var(--space-lg); }

.orbiee-industry__list-label {
	display: block;
	margin-bottom: var(--space-sm);
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.7rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--orbiee-text-muted);
}

.orbiee-industry__list {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.orbiee-industry__item {
	appearance: none;
	cursor: pointer;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	padding: 0.65rem 1rem;
	border-radius: var(--radius-md);
	border: 1px solid var(--orbiee-border);
	background: rgba(255, 255, 255, 0.02);
	font-family: var(--font-body);
	font-size: 0.9375rem;
	color: var(--orbiee-text-muted);
	text-align: left;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.orbiee-industry__item:hover {
	border-color: rgba(255, 255, 255, 0.25);
	color: var(--orbiee-text);
}
.orbiee-industry__item-arrow {
	flex-shrink: 0;
	opacity: 0;
	transform: translate(-2px, 2px);
	transition: opacity 0.2s ease, transform 0.2s ease;
}
.orbiee-industry__item:hover .orbiee-industry__item-arrow,
.orbiee-industry__item.is-active .orbiee-industry__item-arrow {
	opacity: 1;
	transform: translate(0, 0);
}
.orbiee-industry__item.is-active {
	background: rgba(168, 85, 247, 0.1);
	border-color: rgba(168, 85, 247, 0.45);
	color: var(--orbiee-white);
}
/* ---------------- Popup Modal (CTA Band "Connect" form) ---------------- */
.orbiee-modal {
	position: fixed;
	inset: 0;
	z-index: 1000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: var(--space-md);
	visibility: hidden;
	opacity: 0;
	transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}
.orbiee-modal.is-open {
	visibility: visible;
	opacity: 1;
	transition: opacity 0.3s ease, visibility 0s linear 0s;
}
.orbiee-modal__overlay {
	position: absolute;
	inset: 0;
	background: rgba(7, 9, 14, 0.8);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
}
.orbiee-modal__panel {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 44rem; /* 704px — wide enough for a 2-column form layout */
	max-height: 90vh;
	overflow-y: auto;
	background: var(--orbiee-bg-elevated);
	border: 1px solid var(--orbiee-border);
	border-radius: var(--radius-lg, 20px);
	padding: var(--space-lg);
	transform: translateY(16px) scale(0.98);
	opacity: 0;
	transition: transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1), opacity 0.3s ease;
}
.orbiee-modal.is-open .orbiee-modal__panel {
	transform: translateY(0) scale(1);
	opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
	.orbiee-modal, .orbiee-modal__panel { transition: opacity 0.2s ease; }
	.orbiee-modal__panel { transform: none; }
}

.orbiee-modal__close {
	position: absolute;
	top: var(--space-md);
	right: var(--space-md);
	appearance: none;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid var(--orbiee-border);
	color: var(--orbiee-text-muted);
	transition: color 0.2s ease, border-color 0.2s ease;
}
.orbiee-modal__close:hover {
	color: var(--orbiee-white);
	border-color: rgba(255, 255, 255, 0.3);
}

.orbiee-modal__heading {
	margin: 0 0 var(--space-xs);
	padding-right: 2.5rem; /* clears the close button */
	font-family: var(--font-serif);
	font-weight: 400;
	font-size: 1.5rem;
	color: var(--orbiee-white);
}
.orbiee-modal__description {
	margin: 0 0 var(--space-lg);
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--orbiee-text-muted);
}

/* ---- Contact Form 7 field styling, scoped to this modal ---- */
.orbiee-modal__form .wpcf7-form p { margin: 0 0 var(--space-md); }
.orbiee-modal__form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 1rem;
}
.orbiee-modal__form-row p { margin-bottom: var(--space-md); }
@media (max-width: 560px) {
	.orbiee-modal__form-row { grid-template-columns: 1fr; }
}
.orbiee-modal__form .wpcf7-form label {
	display: block;
	margin-bottom: 0.4rem;
	font-size: 0.8125rem;
	font-weight: 500;
	color: var(--orbiee-text);
}
.orbiee-modal__form .wpcf7-form-control {
	width: 100%;
	padding: 0.75rem 1rem;
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid var(--orbiee-border);
	border-radius: var(--radius-md);
	color: var(--orbiee-text);
	font-family: var(--font-body);
	font-size: 0.9375rem;
	transition: border-color 0.2s ease, background 0.2s ease;
}
.orbiee-modal__form .wpcf7-form-control::placeholder { color: var(--orbiee-text-muted); }
.orbiee-modal__form .wpcf7-form-control:focus {
	outline: none;
	border-color: rgba(192, 132, 252, 0.6);
	background: rgba(255, 255, 255, 0.05);
}
.orbiee-modal__form textarea.wpcf7-form-control { min-height: 6rem; resize: vertical; }
.orbiee-modal__form .wpcf7-submit {
	appearance: none;
	cursor: pointer;
	width: 100%;
	padding: 0.85rem 1.75rem;
	background: var(--orbiee-white);
	color: var(--orbiee-bg);
	border: none;
	border-radius: var(--radius-pill);
	font-weight: 600;
	font-size: var(--fs-body);
	transition: opacity 0.15s ease, transform 0.15s ease;
}
.orbiee-modal__form .wpcf7-submit:hover { opacity: 0.92; transform: translateY(-1px); }
.orbiee-modal__form .wpcf7-spinner { margin-inline: 0.5rem; }
.orbiee-modal__form .wpcf7-not-valid-tip {
	margin-top: 0.3rem;
	font-size: 0.8rem;
	color: #f0a868;
}
.orbiee-modal__form .wpcf7-response-output {
	margin-top: var(--space-md);
	padding: 0.75rem 1rem;
	border-radius: var(--radius-md);
	border: 1px solid var(--orbiee-border);
	font-size: 0.875rem;
	color: var(--orbiee-text-muted);
}

/* Body lock while a modal is open — added/removed by JS */
body.orbiee-modal-open { overflow: hidden; }
268:.orbiee-footer__connect {
269-	margin-top: 1.25rem;
270-	font-size: 0.8125rem;
271-	padding: 0.6rem 1.25rem;
272-}
/* ---- Contact Form 7 field styling, scoped to this modal ---- */
.orbiee-modal__form .wpcf7-form p { margin: 0 0 var(--space-md); }
.orbiee-modal__form-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0 1rem;
}
.orbiee-modal__form-row p {
	flex: 0 0 calc(50% - 0.5rem);
	width: calc(50% - 0.5rem);
	margin-bottom: var(--space-md);
	min-width: 0; /* lets long placeholder text shrink instead of overflowing the 50% column */
}
@media (max-width: 560px) {
	.orbiee-modal__form-row p {
		flex: 0 0 100%;
		width: 100%;
	}
}
.orbiee-modal__form .wpcf7-form label {
	display: block;
	margin-bottom: 0.4rem;
	font-size: 0.8125rem;
	font-weight: 500;
	color: var(--orbiee-text);
}
.orbiee-modal__form .wpcf7-form-control {
	width: 100%;
	padding: 0.75rem 1rem;
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid var(--orbiee-border);
	border-radius: var(--radius-md);
	color: var(--orbiee-text);
	font-family: var(--font-body);
	font-size: 0.9375rem;
	transition: border-color 0.2s ease, background 0.2s ease;
}
.orbiee-modal__form .wpcf7-form-control::placeholder { color: var(--orbiee-text-muted); }
.orbiee-modal__form .wpcf7-form-control:focus {
	outline: none;
	border-color: rgba(192, 132, 252, 0.6);
	background: rgba(255, 255, 255, 0.05);
}
.orbiee-modal__form textarea.wpcf7-form-control { min-height: 6rem; resize: vertical; }
.orbiee-modal__form .wpcf7-submit {
	appearance: none;
	cursor: pointer;
	width: 100%;
	padding: 0.85rem 1.75rem;
	background: var(--orbiee-white);
	color: var(--orbiee-bg);
	border: none;
	border-radius: var(--radius-pill);
	font-weight: 600;
	font-size: var(--fs-body);
	transition: opacity 0.15s ease, transform 0.15s ease;
}
.orbiee-modal__form .wpcf7-submit:hover { opacity: 0.92; transform: translateY(-1px); }
.orbiee-modal__form .wpcf7-spinner { margin-inline: 0.5rem; }
.orbiee-modal__form .wpcf7-not-valid-tip {
	margin-top: 0.3rem;
	font-size: 0.8rem;
	color: #f0a868;
}
.orbiee-modal__form .wpcf7-response-output {
	margin-top: var(--space-md);
	padding: 0.75rem 1rem;
	border-radius: var(--radius-md);
	border: 1px solid var(--orbiee-border);
	font-size: 0.875rem;
	color: var(--orbiee-text-muted);
}


/* Body lock while a modal is open — added/removed by JS */
body.orbiee-modal-open { overflow: hidden; }
/* Product card fix — squeezed 2-column layout on real phone widths was
   causing name/price text to run together with no room to wrap cleanly.
   Added display:block safety on the text spans and a proper 480px
   single-column breakpoint (previously only had a 700px 2-column one). */
.orbiee-conv-product__tag {
	display: block;
	font-family: 'JetBrains Mono', 'Courier New', monospace;
	font-size: 0.65rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--orbiee-text-muted);
}
.orbiee-conv-product__name { display: block; font-weight: 600; color: var(--orbiee-white); font-size: 0.9375rem; margin-top: 0.15rem; }
.orbiee-conv-product__price { display: block; color: var(--orbiee-text-muted); font-size: 0.875rem; margin-top: 0.1rem; }
.orbiee-modal__form .wpcf7-form p.col-6 {
    width: 49%;
    margin: 0;
}

.orbiee-modal__form .wpcf7-form {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.orbiee-modal__form .wpcf7-form p {
    width: 100%;
}
@media (max-width: 700px) {
    .orbiee-modal__form .wpcf7-form p.col-6{width:100%;}
	.orbiee-conv-products { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 480px) {
	.orbiee-conv-products { grid-template-columns: 1fr; }
}