/* ==========================================================================
   VSL AI Lead Generation — page-specific components.
   Loaded ALONGSIDE vsl-clutch-page.css. The page wrapper carries both
   classes (.vsl-clutch .vsl-ai), so all base tokens, buttons, hero, logo
   strip, chips and final CTA come from the Clutch stylesheet. These rules
   only add the sections unique to this page, reusing the same palette
   (Open Sans + #fe8e06 + #00b050 + #353c3e navy) for a seamless match.
   ========================================================================== */

/* THEME RESET — the theme's style.css sets a global
   `header { background:#fff; min-height:80px; padding-bottom:12px }` for the
   site nav. That leaks onto our semantic section <header>s and paints an ugly
   white box behind every section title (and white-on-white text on the navy
   band). Neutralise it for all headers inside this page. */
.vsl-ai header {
	background: transparent;
	min-height: 0;
	padding-bottom: 0;
}

/* Shared eyebrow — same treatment as the Clutch section eyebrows */
.vsl-ai .vai-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	color: var(--vc-orange);
	margin-bottom: 16px;
}
.vsl-ai .vai-eyebrow::before {
	content: '';
	display: block;
	width: 32px;
	height: 1px;
	background: var(--vc-orange);
	opacity: 0.7;
}
.vsl-ai .vai-eyebrow--center {
	justify-content: center;
}
.vsl-ai .vai-eyebrow--center::after {
	content: '';
	display: block;
	width: 32px;
	height: 1px;
	background: var(--vc-orange);
	opacity: 0.7;
}
.vsl-ai .vai-eyebrow--light { color: #ffcf9e; }
.vsl-ai .vai-eyebrow--light::before,
.vsl-ai .vai-eyebrow--light::after { background: #ffcf9e; opacity: 0.6; }

/* Hero tweaks: this page's H1 wraps (unlike the single-line Clutch lede),
   and it carries a small eyebrow above the title. */
.vsl-ai .vai-hero__eyebrow {
	display: inline-block;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--vc-orange);
	margin: 0 0 12px;
}
/* Long, wrapping H1 — drop the single-line underline the Clutch lede used
   (it reads heavy under 2–3 lines) and let the title sit as a clean block. */
.vsl-ai .vc-hero__title.vai-hero__title {
	font-size: 31px;
	line-height: 1.18;
	white-space: normal;
	display: block;
	border-bottom: none;
	padding-bottom: 0;
	max-width: 14em;
	margin: 0 0 4px;
}
/* Lead subhead — larger than the Clutch sub, with the payoff half
   emphasised so the "AI vs. experience" tension reads at a glance. */
.vsl-ai .vai-hero__sub {
	font-size: 16px;
	line-height: 1.55;
	color: var(--vc-muted);
	max-width: 27em;
	border-left: 3px solid var(--vc-orange);
	padding-left: 14px;
}
.vsl-ai .vai-hero__sub strong {
	display: inline;
	font-weight: 700;
	color: var(--vc-navy);
}
.vsl-ai .vai-hero__sub .vai-em { color: var(--vc-orange); }

/* This hero photo is a wide landscape shot (not the Clutch portrait), so it
   fills the card width exactly — the Clutch translateX would expose a gap.
   Reset it and bias the vertical crop to the phone/hands action. */
/* the scaled img below would otherwise spill past the card and widen the page */
.vsl-ai .vc-hero__photo { overflow: hidden; }
.vsl-ai .vc-hero__photo picture { display: block; width: 100%; height: 100%; overflow: hidden; }
.vsl-ai .vc-hero__photo img {
	/* The clasped hands sit low-centre in the source (~73% down). The card is
	   much wider than the photo's aspect, so cover crops vertically only —
	   anchoring to the bottom is what puts the handshake in frame instead of
	   a bare red sleeve. Scale+shift moves it clear of the copy panel's fade. */
	transform: none;
	object-position: center 100%;
}

/* ==========================================================================
   1b. PROOF STRIP — three trust claims directly under the hero card.
   Deliberately shallow (one line per claim, no cards): it has to sit at the
   fold without pushing the hero CTAs off the first screen.
   ========================================================================== */
.vsl-ai .vai-proof {
	background: var(--vc-navy);
	padding: 0;
}
.vsl-ai .vai-proof__list {
	list-style: none;
	margin: 0;
	padding: 18px 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
}
.vsl-ai .vai-proof__list li {
	display: flex;
	align-items: flex-start;
	gap: 11px;
	padding: 4px 26px;
	color: rgba(255, 255, 255, 0.82);
	font-size: 13.5px;
	line-height: 1.45;
}
.vsl-ai .vai-proof__list li + li { border-left: 1px solid rgba(255, 255, 255, 0.14); }
/* the theme's global li::before would drop a bullet marker in front of each */
.vsl-ai .vai-proof__list li::before { content: none; }
.vsl-ai .vai-proof__star {
	flex: 0 0 auto;
	color: var(--vc-orange);
	font-size: 13px;
	line-height: 1.45;
}
.vsl-ai .vai-proof__text strong { color: #fff; font-weight: 700; }
.vsl-ai .vai-proof__text a {
	color: inherit;
	text-decoration: none;
	border-bottom: 1px solid rgba(254, 142, 6, 0.6);
	transition: border-color 0.2s ease;
}
.vsl-ai .vai-proof__text a:hover { border-bottom-color: var(--vc-orange); }

/* ==========================================================================
   3. BELIEF BAND
   ========================================================================== */
.vsl-ai .vai-belief {
	background: #fff;
	padding: 58px 0 52px;
}
.vsl-ai .vai-belief__inner {
	max-width: 860px;
	text-align: center;
}
.vsl-ai .vai-belief__title {
	font-family: 'Open Sans', sans-serif;
	font-size: 30px;
	font-weight: 800;
	color: var(--vc-navy);
	letter-spacing: -0.018em;
	line-height: 1.22;
	margin: 0 0 22px;
}
.vsl-ai .vai-belief__em { color: var(--vc-orange); }
.vsl-ai .vai-belief__lead {
	font-size: 16px;
	line-height: 1.65;
	color: var(--vc-muted);
	margin: 0 auto;
	max-width: 46em;
}
.vsl-ai .vai-belief__lead:last-child { margin-bottom: 0; }

/* ==========================================================================
   3a. THE JOINED-UP APPROACH — seven-node vertical process chain.
   Vertical (not a wrapping horizontal rail) on purpose: with seven nodes a
   wrapping rail makes the connector and the reading order disagree at every
   row break — the exact problem the 12-step journey was rebuilt to avoid.
   Top-to-bottom is unambiguous at every width.
   ========================================================================== */
.vsl-ai .vai-flow {
	background: #fafbfc;
	padding: 60px 0 58px;
	border-top: 1px solid var(--vc-line);
	border-bottom: 1px solid var(--vc-line);
}
.vsl-ai .vai-flow__head {
	text-align: center;
	max-width: 720px;
	margin: 0 auto 34px;
}
.vsl-ai .vai-flow__title {
	font-family: 'Open Sans', sans-serif;
	font-size: 28px;
	font-weight: 800;
	color: var(--vc-navy);
	letter-spacing: -0.018em;
	line-height: 1.2;
	margin: 0 0 12px;
}
.vsl-ai .vai-flow__sub {
	margin: 0;
	font-size: 15px;
	line-height: 1.6;
	color: var(--vc-muted);
}

.vsl-ai .vai-flow__chain {
	list-style: none;
	margin: 0 auto;
	padding: 0;
	max-width: 620px;
	counter-reset: vaiflow;
}
.vsl-ai .vai-flow__node {
	position: relative;
	display: grid;
	grid-template-columns: 46px 1fr auto;
	align-items: center;
	gap: 16px;
	padding: 14px 20px;
	background: #fff;
	border: 1px solid var(--vc-line);
	border-left: 4px solid var(--vc-line);
	border-radius: 12px;
	box-shadow: 0 1px 2px rgba(53, 60, 62, 0.05);
}
/* theme's global li::before would print a marker inside each node */
.vsl-ai .vai-flow__node::before { content: none; }
/* connector: a short rail with an arrowhead, drawn in the gap below a node */
.vsl-ai .vai-flow__node + .vai-flow__node { margin-top: 30px; }
.vsl-ai .vai-flow__node + .vai-flow__node::after {
	content: '';
	position: absolute;
	left: 43px;
	top: -30px;
	width: 2px;
	height: 30px;
	background: var(--vc-line);
}
.vsl-ai .vai-flow__node + .vai-flow__node::before {
	content: '';
	position: absolute;
	left: 38px;
	top: -13px;
	width: 12px;
	height: 12px;
	border-right: 2px solid #c7ccd6;
	border-bottom: 2px solid #c7ccd6;
	transform: rotate(45deg);
}
.vsl-ai .vai-flow__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	font-size: 17px;
	color: #fff;
	background: var(--vc-navy);
}
.vsl-ai .vai-flow__label {
	font-size: 15.5px;
	font-weight: 700;
	color: var(--vc-navy);
	line-height: 1.35;
}
.vsl-ai .vai-flow__tag {
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--vc-muted);
	white-space: nowrap;
}
/* Phase colour matches the page's AI-powered / human-led / results-driven
   tagline, and the same mapping used by the 12-step journey below. */
.vsl-ai .vai-flow__node--ai { border-left-color: var(--vc-orange); }
.vsl-ai .vai-flow__node--ai .vai-flow__icon { background: var(--vc-orange); }
.vsl-ai .vai-flow__node--ai .vai-flow__tag { color: var(--vc-orange-dark); }
.vsl-ai .vai-flow__node--auto { border-left-color: #7a8794; }
.vsl-ai .vai-flow__node--auto .vai-flow__icon { background: #7a8794; }
.vsl-ai .vai-flow__node--human { border-left-color: var(--vc-green); }
.vsl-ai .vai-flow__node--human .vai-flow__icon { background: var(--vc-green); }
.vsl-ai .vai-flow__node--human .vai-flow__tag { color: var(--vc-green); }
/* the payoff node — heavier so the chain resolves rather than just stopping */
.vsl-ai .vai-flow__node--result {
	background: var(--vc-navy);
	border-color: var(--vc-navy);
	border-left-color: var(--vc-orange);
}
.vsl-ai .vai-flow__node--result .vai-flow__icon { background: var(--vc-orange); }
.vsl-ai .vai-flow__node--result .vai-flow__label { color: #fff; font-size: 16.5px; }
.vsl-ai .vai-flow__node--result .vai-flow__tag { color: #ffcf9e; }

/* ==========================================================================
   4. HOW WE USE AI — capability card grid + payoff bar
   ========================================================================== */
.vsl-ai .vai-uses {
	background: var(--vc-orange-soft);
	padding: 68px 0 64px;
	position: relative;
	overflow: hidden;
}
.vsl-ai .vai-uses::before {
	content: '';
	position: absolute;
	width: 240px;
	height: 240px;
	top: -40px;
	left: -40px;
	background-image: radial-gradient(var(--vc-orange-dark) 1px, transparent 1.5px);
	background-size: 16px 16px;
	opacity: 0.18;
	pointer-events: none;
	z-index: 0;
}
.vsl-ai .vai-uses .vc-wrap { position: relative; z-index: 1; }
.vsl-ai .vai-uses__head {
	text-align: center;
	max-width: 760px;
	margin: 0 auto 32px;
}
.vsl-ai .vai-uses__title {
	font-family: 'Open Sans', sans-serif;
	font-size: 32px;
	font-weight: 800;
	color: var(--vc-navy);
	letter-spacing: -0.018em;
	line-height: 1.18;
	margin: 0 0 14px;
}
.vsl-ai .vai-uses__em { color: var(--vc-orange); }
.vsl-ai .vai-uses__intro {
	margin: 0 auto;
	max-width: 52em;
	font-size: 15.5px;
	line-height: 1.6;
	color: var(--vc-muted);
}

/* Campaign stages — three grouped columns instead of twelve flat cards.
   Each stage carries its own accent (orange / green / navy) so the eye can
   tell them apart, and a one-line note saying why that stage matters. */
.vsl-ai .vai-uses__stages {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	counter-reset: none;
}
.vsl-ai .vai-stage {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 24px 26px 24px;
	background: #fff;
	border: 1px solid var(--vc-line);
	/* accent lives on the border, not a pseudo-element: the theme's global
	   li::before rules knock an absolutely-positioned rail off the card */
	border-top: 3px solid var(--vai-stage-accent);
	border-radius: 16px;
	box-shadow: 0 10px 26px rgba(53, 60, 62, 0.05);
	transition: transform 0.28s ease, box-shadow 0.28s ease;
}
.vsl-ai .vai-stage:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 38px rgba(53, 60, 62, 0.10);
}
.vsl-ai .vai-stage--find { --vai-stage-accent: var(--vc-orange); --vai-stage-tint: rgba(254, 142, 6, 0.12); }
.vsl-ai .vai-stage--target { --vai-stage-accent: var(--vc-green); --vai-stage-tint: rgba(0, 176, 80, 0.12); }
.vsl-ai .vai-stage--run { --vai-stage-accent: var(--vc-navy); --vai-stage-tint: rgba(53, 60, 62, 0.10); }

.vsl-ai .vai-stage__head {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 8px;
}
.vsl-ai .vai-stage__num {
	flex: 0 0 auto;
	font-family: 'Open Sans', sans-serif;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.06em;
	color: #fff;
	background: var(--vai-stage-accent);
	border-radius: 7px;
	padding: 5px 8px;
	line-height: 1;
}
.vsl-ai .vai-stage__name {
	font-family: 'Open Sans', sans-serif;
	font-size: 17px;
	font-weight: 800;
	color: var(--vc-navy);
	letter-spacing: -0.012em;
	line-height: 1.2;
	margin: 0;
}
.vsl-ai .vai-stage__note {
	margin: 0 0 18px;
	font-size: 13.5px;
	line-height: 1.5;
	color: var(--vc-muted);
	min-height: 2.9em;
}
.vsl-ai .vai-stage__list {
	list-style: none;
	margin: 0;
	padding: 16px 0 0;
	border-top: 1px solid var(--vc-line);
	display: flex;
	flex-direction: column;
	gap: 11px;
}
.vsl-ai .vai-uses__stages > li::before,
.vsl-ai .vai-stage__list li::before { content: none; display: none; }
.vsl-ai .vai-stage__list li {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 14px;
	font-weight: 600;
	color: var(--vc-navy);
	line-height: 1.3;
}
.vsl-ai .vai-stage__list li i {
	flex: 0 0 30px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 9px;
	font-size: 13px;
	background: var(--vai-stage-tint);
	color: var(--vai-stage-accent);
}

/* payoff line — the single sentence the whole section exists to land */
.vsl-ai .vai-uses__closer {
	max-width: 760px;
	margin: 36px auto 0;
	padding: 24px 30px;
	text-align: center;
	background: #fff;
	border: 1px solid rgba(254, 142, 6, 0.28);
	border-radius: 16px;
	box-shadow: 0 12px 26px rgba(53, 60, 62, 0.07);
	font-family: 'Open Sans', sans-serif;
	font-size: 19px;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: -0.012em;
}
.vsl-ai .vai-uses__closer strong,
.vsl-ai .vai-uses__closer span {
	display: block;
	font-family: 'Open Sans', sans-serif;
	font-size: 20px;
	font-weight: 800;
	line-height: 1.4;
}
.vsl-ai .vai-uses__closer strong { color: var(--vc-orange); }
.vsl-ai .vai-uses__closer span { color: var(--vc-navy); }


/* ==========================================================================
   5. HUMAN CONVERSATIONS — image + text split
   ========================================================================== */
.vsl-ai .vai-split {
	background: #fff;
	padding: 72px 0 68px;
}
.vsl-ai .vai-split__grid {
	display: grid;
	grid-template-columns: 0.95fr 1.05fr;
	gap: 44px;
	align-items: center;
}
.vsl-ai .vai-split__media {
	position: relative;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 20px 44px rgba(53, 60, 62, 0.16);
}
.vsl-ai .vai-split__media::after {
	/* orange accent bar along the bottom, echoing the hero rail */
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 5px;
	background: linear-gradient(90deg, var(--vc-orange) 0%, var(--vc-orange-dark) 100%);
}
.vsl-ai .vai-split__media picture { display: block; width: 100%; height: 100%; }
.vsl-ai .vai-split__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 5 / 4;
}
.vsl-ai .vai-split__title {
	font-family: 'Open Sans', sans-serif;
	font-size: 30px;
	font-weight: 800;
	color: var(--vc-navy);
	letter-spacing: -0.018em;
	line-height: 1.15;
	margin: 0 0 14px;
}
.vsl-ai .vai-split__lead {
	font-size: 17px;
	font-weight: 700;
	color: var(--vc-navy);
	margin: 0 0 18px;
}
.vsl-ai .vai-split__points {
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.vsl-ai .vai-split__points li {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 14.5px;
	font-weight: 600;
	color: var(--vc-navy);
}
.vsl-ai .vai-split__points li i {
	flex: 0 0 34px;
	width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	background: var(--vc-orange-soft);
	color: var(--vc-orange);
	font-size: 15px;
}
.vsl-ai .vai-split__para {
	font-size: 14.5px;
	line-height: 1.7;
	color: var(--vc-muted);
	margin: 0 0 14px;
}
.vsl-ai .vai-split__flag {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 20px 0 0;
	padding: 16px 20px;
	background: var(--vc-orange-soft);
	border: 1px solid rgba(254, 142, 6, 0.25);
	border-radius: 12px;
	font-size: 15px;
	font-weight: 700;
	color: var(--vc-navy);
}
.vsl-ai .vai-split__flag i { color: var(--vc-orange); font-size: 18px; }

/* in-copy internal links — underlined in orange so they read as links in a
   body paragraph without turning the paragraph into a link farm */
.vsl-ai .vai-split__para a {
	color: var(--vc-navy);
	font-weight: 600;
	text-decoration: none;
	border-bottom: 1px solid var(--vc-orange);
	transition: color 0.2s ease, background 0.2s ease;
}
.vsl-ai .vai-split__para a:hover { color: var(--vc-orange-dark); }

/* ==========================================================================
   5b. STATEMENT + MID-PAGE CTA — the philosophy line and a booking route
   at roughly the halfway scroll, for visitors who never reach the footer.
   ========================================================================== */
.vsl-ai .vai-statement {
	background: var(--vc-navy);
	padding: 52px 0 50px;
	position: relative;
	overflow: hidden;
}
.vsl-ai .vai-statement::before {
	content: '';
	position: absolute;
	right: -60px;
	bottom: -60px;
	width: 260px;
	height: 260px;
	background-image: radial-gradient(rgba(255, 255, 255, 0.5) 1px, transparent 1.5px);
	background-size: 16px 16px;
	opacity: 0.12;
	pointer-events: none;
}
.vsl-ai .vai-statement__inner {
	position: relative;
	z-index: 1;
	text-align: center;
	max-width: 900px;
}
.vsl-ai .vai-statement__quote {
	margin: 0 0 26px;
	font-family: 'Open Sans', sans-serif;
	font-size: 26px;
	font-weight: 800;
	line-height: 1.32;
	letter-spacing: -0.015em;
}
/* the two halves are the whole point — split them onto their own lines so the
   AI / human contrast is visible before a word is read */
.vsl-ai .vai-statement__ai,
.vsl-ai .vai-statement__human { display: block; }
.vsl-ai .vai-statement__ai { color: var(--vc-orange); }
.vsl-ai .vai-statement__human { color: #fff; }
.vsl-ai .vai-statement__cta {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
}
.vsl-ai .vai-statement__cta .vc-btn i { margin-left: 8px; }
.vsl-ai .vai-statement__note {
	font-size: 12.5px;
	color: rgba(255, 255, 255, 0.6);
	letter-spacing: 0.02em;
}

/* ==========================================================================
   6. THE VSL SALES JOURNEY — 12-step infographic
   Replaces the old .vai-flow chain. Alternating orange/green step numbers
   echo the "AI-powered / human-led" split that runs through the page.
   ========================================================================== */
.vsl-ai .vai-journey {
	background: #fafbfc;
	padding: 72px 0 68px;
	border-top: 1px solid var(--vc-line);
}
.vsl-ai .vai-journey__head { text-align: center; margin-bottom: 34px; }
.vsl-ai .vai-journey__title {
	font-family: 'Open Sans', sans-serif;
	font-size: 34px;
	font-weight: 800;
	color: var(--vc-navy);
	letter-spacing: -0.02em;
	line-height: 1.12;
	margin: 0 0 10px;
	text-transform: uppercase;
}
.vsl-ai .vai-journey__tagline {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
	margin: 0 0 16px;
	font-family: 'Open Sans', sans-serif;
	font-size: 17px;
	font-weight: 800;
	letter-spacing: -0.005em;
}
.vsl-ai .vai-journey__tag--orange { color: var(--vc-orange); }
.vsl-ai .vai-journey__tag--green { color: var(--vc-green); }
.vsl-ai .vai-journey__tag--navy { color: var(--vc-navy); }
.vsl-ai .vai-journey__sub {
	margin: 0 auto;
	max-width: 52em;
	font-size: 15px;
	color: var(--vc-muted);
	line-height: 1.65;
}

/* --- the journey: four phases of three ---------------------------------
   A left gutter carries the phase label and a vertical spine; the three
   steps sit to its right and always read left-to-right. Nothing here
   depends on fixed row heights, so cards can grow with their copy.
   ---------------------------------------------------------------------- */
.vsl-ai .vai-journey__phases {
	list-style: none;
	margin: 0 0 34px;
	padding: 0;
}
.vsl-ai .vai-phase {
	position: relative;
	display: grid;
	grid-template-columns: 186px 1fr;
	gap: 26px;
	padding-bottom: 26px;
}
.vsl-ai .vai-phase + .vai-phase { padding-top: 26px; }
/* the spine: a continuous line down the gutter linking one phase to the next */
.vsl-ai .vai-phase:not(:last-child)::before {
	content: '';
	position: absolute;
	left: 21px;
	top: 46px;
	bottom: -4px;
	width: 2px;
	background: var(--vc-line);
}
/* arrowhead where the spine meets the next phase */
.vsl-ai .vai-phase:not(:last-child)::after {
	content: '';
	position: absolute;
	left: 17px;
	bottom: -4px;
	width: 10px;
	height: 10px;
	border-right: 2px solid var(--vc-line);
	border-bottom: 2px solid var(--vc-line);
	transform: rotate(45deg);
}

/* --- phase label gutter --- */
.vsl-ai .vai-phase__label {
	position: relative;
	padding-left: 60px;
	padding-top: 4px;
}
.vsl-ai .vai-phase__num {
	position: absolute;
	left: 0;
	top: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--vai-phase-accent);
	color: #fff;
	font-family: 'Open Sans', sans-serif;
	font-size: 15px;
	font-weight: 800;
	line-height: 1;
	box-shadow: 0 0 0 5px #fafbfc;
	z-index: 2;
}
.vsl-ai .vai-phase__name {
	font-family: 'Open Sans', sans-serif;
	font-size: 17px;
	font-weight: 800;
	color: var(--vc-navy);
	letter-spacing: -0.012em;
	line-height: 1.25;
	margin: 0 0 8px;
}
.vsl-ai .vai-phase__tag {
	display: inline-block;
	padding: 4px 10px;
	border-radius: 999px;
	background: var(--vai-phase-tint);
	color: var(--vai-phase-accent);
	font-size: 10.5px;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	/* "Results-driven" would otherwise break at the hyphen and make the
	   pill two lines tall, throwing the label block out of line */
	white-space: nowrap;
}
.vsl-ai .vai-phase--ai     { --vai-phase-accent: var(--vc-orange); --vai-phase-tint: rgba(254, 142, 6, 0.13); }
.vsl-ai .vai-phase--auto   { --vai-phase-accent: var(--vc-orange-dark); --vai-phase-tint: rgba(230, 125, 4, 0.13); }
.vsl-ai .vai-phase--human  { --vai-phase-accent: var(--vc-green); --vai-phase-tint: rgba(0, 176, 80, 0.13); }
.vsl-ai .vai-phase--result { --vai-phase-accent: var(--vc-navy); --vai-phase-tint: rgba(53, 60, 62, 0.10); }

/* --- the three steps in a phase --- */
.vsl-ai .vai-phase__steps {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
}
.vsl-ai .vai-phase__steps > li::before { content: none; display: none; }
.vsl-ai .vai-step {
	position: relative;
	padding: 20px 20px 18px;
	background: #fff;
	border: 1px solid var(--vc-line);
	border-radius: 14px;
	transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.vsl-ai .vai-step:hover {
	transform: translateY(-3px);
	box-shadow: 0 16px 32px rgba(53, 60, 62, 0.10);
	border-color: transparent;
}
/* step number sits quietly top-right — the phase number carries the hierarchy */
.vsl-ai .vai-step__num {
	position: absolute;
	top: 14px;
	right: 16px;
	font-family: 'Open Sans', sans-serif;
	font-size: 12px;
	font-weight: 800;
	color: #c2cad3;
	line-height: 1;
}
.vsl-ai .vai-step__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	margin: 0 0 12px;
	border-radius: 12px;
	background: var(--vai-phase-tint);
	color: var(--vai-phase-accent);
	font-size: 17px;
	transition: background 0.25s ease, color 0.25s ease;
}
.vsl-ai .vai-step:hover .vai-step__icon {
	background: var(--vai-phase-accent);
	color: #fff;
}
.vsl-ai .vai-step__title {
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	font-weight: 800;
	color: var(--vc-navy);
	text-transform: uppercase;
	letter-spacing: 0.015em;
	line-height: 1.25;
	margin: 0 0 7px;
	padding-right: 18px;
}
.vsl-ai .vai-step__text {
	margin: 0;
	font-size: 13.5px;
	line-height: 1.55;
	color: var(--vc-muted);
}


/* --- outcome pill closing the journey --- */
.vsl-ai .vai-journey__outcome {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	max-width: 460px;
	margin: 0 auto 34px;
	padding: 16px 30px;
	background: var(--vc-navy);
	border-radius: 999px;
	box-shadow: 0 14px 30px rgba(53, 60, 62, 0.22);
}
.vsl-ai .vai-journey__outcome-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--vc-orange) 0%, var(--vc-orange-dark) 100%);
	color: #fff;
	font-size: 17px;
	flex: 0 0 auto;
}
.vsl-ai .vai-journey__outcome strong {
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
	font-weight: 800;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

/* --- closing strip --- */
.vsl-ai .vai-journey__strip {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 14px 26px;
	padding: 18px 28px;
	background: var(--vc-navy);
	border-radius: 14px;
}
.vsl-ai .vai-journey__strip > span {
	position: relative;
	font-size: 14px;
	color: rgba(255, 255, 255, 0.78);
	padding-right: 26px;
}
.vsl-ai .vai-journey__strip > span::after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
	height: 16px;
	background: rgba(255, 255, 255, 0.22);
}
.vsl-ai .vai-journey__strip > span em {
	font-style: normal;
	font-weight: 800;
	color: var(--vc-orange);
}
.vsl-ai .vai-journey__strip > span:nth-child(2) em { color: var(--vc-green); }
.vsl-ai .vai-journey__strip > span:nth-child(3) em { color: #fff; }
.vsl-ai .vai-journey__strip-cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: 'Open Sans', sans-serif;
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #fff;
	text-decoration: none;
	padding: 10px 20px;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--vc-orange) 0%, var(--vc-orange-dark) 100%);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.vsl-ai .vai-journey__strip-cta:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 22px rgba(254, 142, 6, 0.35);
	color: #fff;
}
.vsl-ai .vai-journey__strip-cta i { transition: transform 0.2s ease; }
.vsl-ai .vai-journey__strip-cta:hover i { transform: translateX(3px); }

/* ==========================================================================
   7. AI HELPS COMPANIES FIND US — channels + result pill
   ========================================================================== */
.vsl-ai .vai-findus {
	background: #fff;
	padding: 52px 0 50px;
}
.vsl-ai .vai-findus__head { text-align: center; margin-bottom: 32px; }
.vsl-ai .vai-findus__title {
	font-family: 'Open Sans', sans-serif;
	font-size: 30px;
	font-weight: 800;
	color: var(--vc-navy);
	letter-spacing: -0.018em;
	line-height: 1.15;
	margin: 0 0 12px;
}
.vsl-ai .vai-findus__sub {
	margin: 0 auto;
	max-width: 52em;
	font-size: 15px;
	color: var(--vc-muted);
	line-height: 1.6;
}
.vsl-ai .vai-findus__chips {
	list-style: none;
	padding: 0;
	margin: 0 0 32px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 14px;
}
.vsl-ai .vai-findus__result {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	max-width: 760px;
	margin: 0 auto;
	padding: 18px 26px;
	background: var(--vc-orange-soft);
	border-radius: 999px;
	border: 1px solid rgba(254, 142, 6, 0.25);
}
.vsl-ai .vai-findus__result-label {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--vc-navy);
	flex: 0 0 auto;
	padding-right: 14px;
	border-right: 1px solid rgba(53, 60, 62, 0.2);
}
.vsl-ai .vai-findus__result-text {
	font-size: 15px;
	font-weight: 700;
	color: var(--vc-orange);
	letter-spacing: -0.005em;
}

/* ==========================================================================
   9. THE FUTURE — navy triad band
   ========================================================================== */
.vsl-ai .vai-future {
	background: var(--vc-navy);
	padding: 66px 0 64px;
	position: relative;
	overflow: hidden;
}
.vsl-ai .vai-future::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image: radial-gradient(rgba(255, 255, 255, 0.10) 1px, transparent 1.5px);
	background-size: 22px 22px;
	opacity: 0.6;
	pointer-events: none;
}
.vsl-ai .vai-future .vc-wrap { position: relative; z-index: 1; }
.vsl-ai .vai-future__head { text-align: center; margin-bottom: 40px; }
.vsl-ai .vai-future__title {
	font-family: 'Open Sans', sans-serif;
	font-size: 30px;
	font-weight: 800;
	color: #fff;
	letter-spacing: -0.018em;
	line-height: 1.2;
	margin: 0 auto 14px;
	max-width: 780px;
}
.vsl-ai .vai-future__sub {
	margin: 0 auto;
	max-width: 640px;
	font-size: 15px;
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.75);
}
.vsl-ai .vai-future__triad {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	max-width: 900px;
	margin: 0 auto;
}
.vsl-ai .vai-future__triad li {
	position: relative;
	padding: 30px 24px 26px;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 16px;
	text-align: center;
}
/* connector chevron between the three cards — pure CSS (no font dependency) */
.vsl-ai .vai-future__triad li:not(:last-child)::after {
	content: '';
	position: absolute;
	right: -15px;
	top: 50%;
	width: 11px;
	height: 11px;
	border-top: 2px solid var(--vc-orange);
	border-right: 2px solid var(--vc-orange);
	transform: translateY(-50%) rotate(45deg);
	z-index: 2;
}
.vsl-ai .vai-future__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 58px;
	height: 58px;
	margin: 0 auto 16px;
	border-radius: 16px;
	background: linear-gradient(135deg, var(--vc-orange) 0%, var(--vc-orange-dark) 100%);
	color: #fff;
	font-size: 24px;
	box-shadow: 0 10px 22px rgba(254, 142, 6, 0.30);
}
.vsl-ai .vai-future__triad h3 {
	font-family: 'Open Sans', sans-serif;
	font-size: 19px;
	font-weight: 800;
	color: #fff;
	margin: 0 0 6px;
	letter-spacing: -0.01em;
}
.vsl-ai .vai-future__triad p {
	margin: 0;
	font-size: 14px;
	color: rgba(255, 255, 255, 0.72);
	line-height: 1.5;
}
.vsl-ai .vai-future__triad-end {
	background: linear-gradient(135deg, rgba(254, 142, 6, 0.20) 0%, rgba(230, 125, 4, 0.12) 100%) !important;
	border-color: rgba(254, 142, 6, 0.4) !important;
}

/* ==========================================================================
   3b. A WORD FROM ANDY — founder introduction
   ========================================================================== */
.vsl-ai .vai-andy {
	background: #fafbfc;
	padding: 68px 0 64px;
	border-top: 1px solid var(--vc-line);
}
.vsl-ai .vai-andy__grid {
	display: grid;
	grid-template-columns: 268px 1fr;
	gap: 44px;
	align-items: start;
}
.vsl-ai .vai-andy__media {
	position: relative;
	border-radius: 18px;
	overflow: visible;
}
.vsl-ai .vai-andy__media img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 18px;
	box-shadow: 0 20px 40px rgba(53, 60, 62, 0.18);
}
.vsl-ai .vai-andy__badge {
	position: absolute;
	right: -14px;
	bottom: -14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--vc-orange) 0%, var(--vc-orange-dark) 100%);
	color: #fff;
	font-size: 20px;
	box-shadow: 0 10px 22px rgba(254, 142, 6, 0.34);
}
.vsl-ai .vai-andy__title {
	font-family: 'Open Sans', sans-serif;
	font-size: 28px;
	font-weight: 800;
	color: var(--vc-navy);
	letter-spacing: -0.018em;
	line-height: 1.2;
	margin: 0 0 18px;
	max-width: 18em;
}
.vsl-ai .vai-andy__quote {
	margin: 0 0 18px;
	padding-left: 18px;
	border-left: 3px solid var(--vc-orange);
	font-size: 16.5px;
	font-weight: 600;
	line-height: 1.62;
	color: var(--vc-navy);
}
.vsl-ai .vai-andy__para {
	margin: 0 0 14px;
	font-size: 14.5px;
	line-height: 1.7;
	color: var(--vc-muted);
}
.vsl-ai .vai-andy__sign {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin: 20px 0 0;
	padding-top: 16px;
	border-top: 1px solid var(--vc-line);
}
.vsl-ai .vai-andy__sign strong {
	font-family: 'Open Sans', sans-serif;
	font-size: 15px;
	font-weight: 800;
	color: var(--vc-navy);
}
.vsl-ai .vai-andy__sign span {
	font-size: 13px;
	color: var(--vc-muted);
}

/* ==========================================================================
   8. WHY CLIENTS TRUST VSL — proof numbers + comparison table
   ========================================================================== */
.vsl-ai .vai-trust {
	background: #fafbfc;
	padding: 72px 0 68px;
	border-top: 1px solid var(--vc-line);
}
.vsl-ai .vai-trust__head { text-align: center; margin-bottom: 34px; }
.vsl-ai .vai-trust__title {
	font-family: 'Open Sans', sans-serif;
	font-size: 31px;
	font-weight: 800;
	color: var(--vc-navy);
	letter-spacing: -0.018em;
	line-height: 1.15;
	margin: 0 0 12px;
}
.vsl-ai .vai-trust__sub {
	margin: 0 auto;
	max-width: 52em;
	font-size: 15px;
	line-height: 1.6;
	color: var(--vc-muted);
}

/* four proof numbers, as a rail rather than four more cards */
.vsl-ai .vai-trust__stats {
	list-style: none;
	margin: 0 auto 30px;
	padding: 0;
	max-width: 1000px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 0;
	background: #fff;
	border: 1px solid var(--vc-line);
	border-radius: 16px;
	overflow: hidden;
}
.vsl-ai .vai-trust__stats li {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	padding: 22px 16px;
	text-align: center;
}
.vsl-ai .vai-trust__stats li + li { border-left: 1px solid var(--vc-line); }
.vsl-ai .vai-stat__value {
	font-family: 'Open Sans', sans-serif;
	font-size: 36px;
	font-weight: 800;
	line-height: 1;
	color: var(--vc-orange);
	letter-spacing: -0.03em;
}
.vsl-ai .vai-stat__value sup { font-size: 0.5em; top: -0.6em; margin-left: 1px; }
.vsl-ai .vai-stat__label {
	font-size: 12.5px;
	font-weight: 700;
	color: var(--vc-muted);
	letter-spacing: 0.01em;
}

/* --- comparison table --- */
.vsl-ai .vai-compare__scroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	max-width: 1000px;
	margin: 0 auto 26px;
	border: 1px solid var(--vc-line);
	border-radius: 16px;
	background: #fff;
}
.vsl-ai .vai-compare__table {
	width: 100%;
	min-width: 720px;
	border-collapse: collapse;
	background: transparent;
	font-size: 14px;
}
.vsl-ai .vai-compare__table th,
.vsl-ai .vai-compare__table td {
	padding: 15px 20px;
	text-align: left;
	vertical-align: top;
	border-bottom: 1px solid var(--vc-line);
	background: transparent;
}
.vsl-ai .vai-compare__table tbody tr:last-child th,
.vsl-ai .vai-compare__table tbody tr:last-child td { border-bottom: 0; }
.vsl-ai .vai-compare__table thead th {
	font-family: 'Open Sans', sans-serif;
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.09em;
	color: var(--vc-muted);
	background: #fafbfc;
	white-space: nowrap;
}
.vsl-ai .vai-compare__col-us {
	color: var(--vc-orange) !important;
	background: var(--vc-orange-soft) !important;
}
.vsl-ai .vai-compare__table tbody th[scope='row'] {
	font-family: 'Open Sans', sans-serif;
	font-size: 13px;
	font-weight: 800;
	color: var(--vc-navy);
	white-space: nowrap;
	width: 1%;
	background: #fafbfc;
}
/* Float + overflow:hidden gives the icon a proper hanging indent, so wrapped
   lines align under the text rather than running back under the icon.
   (display:flex on a <td> would collapse the table's column layout.) */
.vsl-ai .vai-compare__table td {
	color: var(--vc-muted);
	line-height: 1.5;
}
.vsl-ai .vai-compare__table td i {
	float: left;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	margin: 2px 10px 0 0;
	border-radius: 50%;
	font-size: 9px;
}
.vsl-ai .vai-compare__table td .fa-times {
	background: rgba(229, 57, 53, 0.10);
	color: var(--vc-red);
}
.vsl-ai .vai-compare__table td .fa-check {
	background: rgba(0, 176, 80, 0.12);
	color: var(--vc-green);
}
.vsl-ai .vai-compare__table td i + span {
	display: block;
	overflow: hidden;
}
/* the VSL column stays tinted the whole way down */
.vsl-ai .vai-compare__table tbody td:last-child {
	background: rgba(255, 241, 224, 0.5);
	color: var(--vc-navy);
	font-weight: 600;
}
.vsl-ai .vai-trust__note {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	max-width: 1000px;
	margin: 0 auto;
	font-size: 13.5px;
	line-height: 1.55;
	color: var(--vc-muted);
	text-align: left;
}
.vsl-ai .vai-trust__note i { flex: 0 0 auto; color: var(--vc-orange); font-size: 18px; }
.vsl-ai .vai-trust__note strong { color: var(--vc-navy); font-weight: 700; }

.vsl-ai .vai-sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* ==========================================================================
   FAQ readability — overrides on the shared .vc-faq component.
   The base component came from the Clutch page, where answers are a single
   short paragraph. Here they run longer and carry lists, so: cap the measure
   (818px at 14.5px was ~105 characters a line), give the answer a left rule
   to separate it from the question, and style the enumerations properly.
   ========================================================================== */
.vsl-ai .vc-faq__a {
	max-width: 68ch;
	padding-left: 16px;
	border-left: 2px solid rgba(254, 142, 6, 0.30);
	font-size: 15px;
	line-height: 1.68;
}
.vsl-ai .vc-faq__a p + p { margin-top: 12px; }
/* emphasis marks the key phrase, never a whole clause */
.vsl-ai .vc-faq__a strong { color: var(--vc-navy); font-weight: 700; }

/* --- bulleted / numbered answer lists --- */
.vsl-ai .vai-faq__list {
	list-style: none;
	margin: 12px 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
	gap: 8px 22px;
	counter-reset: vc-faq-step;
}
.vsl-ai .vai-faq__list li {
	position: relative;
	padding-left: 24px;
	font-size: 14.5px;
	line-height: 1.5;
	color: var(--vc-navy);
}
.vsl-ai .vai-faq__list li::before {
	content: '\f00c'; /* fa-check */
	font-family: FontAwesome;
	position: absolute;
	left: 0;
	top: 1px;
	font-size: 11px;
	color: var(--vc-green);
}
/* numbered variant: the onboarding sequence, where order is the point */
.vsl-ai .vai-faq__list--num li::before {
	counter-increment: vc-faq-step;
	content: counter(vc-faq-step);
	font-family: 'Open Sans', sans-serif;
	font-size: 10.5px;
	font-weight: 800;
	color: var(--vc-orange);
	background: var(--vc-orange-soft);
	width: 17px;
	height: 17px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	top: 2px;
}

/* --- sector chips: nine short labels read faster as tokens than as a run --- */
.vsl-ai .vai-faq__chips {
	list-style: none;
	margin: 12px 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}
.vsl-ai .vai-faq__chips li {
	padding: 5px 12px;
	border-radius: 999px;
	background: var(--vc-orange-soft);
	border: 1px solid rgba(254, 142, 6, 0.22);
	font-size: 13px;
	font-weight: 700;
	color: var(--vc-navy);
	line-height: 1.35;
}

@media (max-width: 780px) {
	.vsl-ai .vc-faq__a { max-width: none; padding-left: 12px; font-size: 14px; }
	.vsl-ai .vai-faq__list { grid-template-columns: 1fr; gap: 7px; }
	.vsl-ai .vai-faq__list li { font-size: 13.5px; }
	.vsl-ai .vai-faq__chips li { font-size: 12px; padding: 4px 10px; }
}

/* ==========================================================================
   9c. EXPLORE MORE — slim internal-link rail (was six full cards, which
   added a sixth card grid to a page that already had too many)
   ========================================================================== */
.vsl-ai .vai-explore {
	background: #fff;
	padding: 44px 0 42px;
	border-top: 1px solid var(--vc-line);
	text-align: center;
}
.vsl-ai .vai-explore__title {
	font-family: 'Open Sans', sans-serif;
	font-size: 15px;
	font-weight: 800;
	color: var(--vc-navy);
	letter-spacing: 0.01em;
	margin: 0 0 20px;
}
.vsl-ai .vai-explore__links {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px 12px;
}
.vsl-ai .vai-explore__links a {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 10px 18px;
	background: #fff;
	border: 1px solid var(--vc-line);
	border-radius: 999px;
	font-size: 13.5px;
	font-weight: 700;
	color: var(--vc-navy);
	text-decoration: none;
	transition: border-color 0.22s ease, color 0.22s ease, background 0.22s ease;
}
.vsl-ai .vai-explore__links a i { color: var(--vc-orange); font-size: 13px; transition: color 0.22s ease; }
.vsl-ai .vai-explore__links a:hover {
	background: var(--vc-orange);
	border-color: var(--vc-orange);
	color: #fff;
}
.vsl-ai .vai-explore__links a:hover i { color: #fff; }

/* 9b2. AI INSIGHTS lives in its own sheet (css/vsl-ai-insights.css) —
   it is a shared component also placed on other pages via the
   [vsl_ai_insights] shortcode, and it enqueues that sheet itself. */

/* ==========================================================================
   TABLET
   ========================================================================== */
@media (max-width: 1024px) and (min-width: 781px) {
	.vsl-ai .vai-stage { padding: 22px 20px 20px; }
	.vsl-ai .vai-stage__name { font-size: 15.5px; }
	.vsl-ai .vai-stage__list li { font-size: 13.5px; }
	.vsl-ai .vai-split__grid { gap: 30px; }

	.vsl-ai .vai-andy__grid { grid-template-columns: 220px 1fr; gap: 32px; }

	.vsl-ai .vai-phase { grid-template-columns: 160px 1fr; gap: 20px; }
	.vsl-ai .vai-phase__steps { gap: 12px; }
	.vsl-ai .vai-step { padding: 18px 16px 16px; }
	.vsl-ai .vai-trust__stats { grid-template-columns: repeat(2, 1fr); }
	.vsl-ai .vai-trust__stats li:nth-child(3) { border-left: 0; }
	.vsl-ai .vai-trust__stats li:nth-child(n+3) { border-top: 1px solid var(--vc-line); }

	.vsl-ai .vai-proof__list li { padding: 4px 16px; font-size: 12.5px; }
	.vsl-ai .vai-flow__title { font-size: 25px; }
	.vsl-ai .vai-statement__quote { font-size: 23px; }
}

/* ==========================================================================
   MOBILE — mirror the Clutch page's ≤780px breakpoint
   ========================================================================== */
@media (max-width: 780px) {
	.vsl-ai .vc-hero__title.vai-hero__title { font-size: 22px; max-width: 100%; }
	.vsl-ai .vai-hero__eyebrow { font-size: 10px; letter-spacing: 0.18em; }

	/* three claims stack; the divider moves from vertical to horizontal */
	.vsl-ai .vai-proof__list { grid-template-columns: 1fr; padding: 14px 0; gap: 2px; }
	.vsl-ai .vai-proof__list li { padding: 8px 0; font-size: 13px; }
	.vsl-ai .vai-proof__list li + li {
		border-left: 0;
		border-top: 1px solid rgba(255, 255, 255, 0.14);
	}

	.vsl-ai .vai-flow { padding: 40px 0 38px; }
	.vsl-ai .vai-flow__head { margin-bottom: 26px; }
	.vsl-ai .vai-flow__title { font-size: 22px; }
	.vsl-ai .vai-flow__sub { font-size: 13.5px; }
	/* tag drops below the label rather than squeezing the label to two words */
	.vsl-ai .vai-flow__node {
		grid-template-columns: 38px 1fr;
		gap: 12px;
		padding: 12px 14px;
	}
	.vsl-ai .vai-flow__icon { width: 38px; height: 38px; font-size: 15px; grid-row: span 2; }
	.vsl-ai .vai-flow__label { font-size: 14px; align-self: end; }
	.vsl-ai .vai-flow__tag { font-size: 9.5px; align-self: start; }
	.vsl-ai .vai-flow__node--result .vai-flow__label { font-size: 14.5px; }
	.vsl-ai .vai-flow__node + .vai-flow__node { margin-top: 24px; }
	.vsl-ai .vai-flow__node + .vai-flow__node::after { left: 32px; top: -24px; height: 24px; }
	.vsl-ai .vai-flow__node + .vai-flow__node::before { left: 27px; top: -11px; }

	.vsl-ai .vai-statement { padding: 38px 0 36px; }
	.vsl-ai .vai-statement__quote { font-size: 19px; margin-bottom: 22px; }
	.vsl-ai .vai-statement__note { font-size: 11.5px; }

	.vsl-ai .vai-belief { padding: 40px 0 36px; }
	.vsl-ai .vai-belief__title { font-size: 22px; }
	.vsl-ai .vai-belief__lead { font-size: 14px; }

	.vsl-ai .vai-uses { padding: 40px 0 36px; }
	.vsl-ai .vai-uses::before { width: 160px; height: 160px; }
	.vsl-ai .vai-uses__head { margin-bottom: 28px; }
	.vsl-ai .vai-uses__title { font-size: 22px; }
	.vsl-ai .vai-uses__intro { font-size: 14px; }
	.vsl-ai .vai-uses__stages { grid-template-columns: 1fr; gap: 12px; }
	.vsl-ai .vai-stage { padding: 22px 20px 20px; }
	.vsl-ai .vai-stage__name { font-size: 16px; }
	.vsl-ai .vai-stage__note { min-height: 0; margin-bottom: 14px; font-size: 13px; }
	.vsl-ai .vai-stage__list { padding-top: 14px; gap: 10px; }
	.vsl-ai .vai-stage__list li { font-size: 13.5px; }
	.vsl-ai .vai-uses__closer { margin-top: 24px; padding: 20px 22px; }
	.vsl-ai .vai-uses__closer strong,
	.vsl-ai .vai-uses__closer span { font-size: 16px; }

	.vsl-ai .vai-split { padding: 40px 0 36px; }
	.vsl-ai .vai-split__grid { grid-template-columns: 1fr; gap: 26px; }
	.vsl-ai .vai-split__title { font-size: 22px; }
	.vsl-ai .vai-split__lead { font-size: 15.5px; }
	.vsl-ai .vai-split__points li { font-size: 13.5px; }
	.vsl-ai .vai-split__para { font-size: 13.5px; }
	.vsl-ai .vai-split__flag { font-size: 14px; }

	.vsl-ai .vai-andy { padding: 40px 0 36px; }
	.vsl-ai .vai-andy__grid { grid-template-columns: 1fr; gap: 30px; }
	.vsl-ai .vai-andy__media { max-width: 210px; margin: 0 auto; }
	.vsl-ai .vai-andy__title { font-size: 22px; max-width: 100%; }
	.vsl-ai .vai-andy__quote { font-size: 15px; padding-left: 14px; }
	.vsl-ai .vai-andy__para { font-size: 13.5px; }

	.vsl-ai .vai-journey { padding: 40px 0 36px; }
	.vsl-ai .vai-journey__head { margin-bottom: 30px; }
	.vsl-ai .vai-journey__title { font-size: 24px; }
	.vsl-ai .vai-journey__tagline { font-size: 14px; gap: 8px; }
	.vsl-ai .vai-journey__sub { font-size: 13.5px; }
	.vsl-ai .vai-journey__phases { margin-bottom: 26px; }
	/* label stacks above its steps; the spine would have nothing to run beside */
	.vsl-ai .vai-phase { grid-template-columns: 1fr; gap: 14px; padding-bottom: 22px; }
	.vsl-ai .vai-phase + .vai-phase { padding-top: 22px; border-top: 1px solid var(--vc-line); }
	.vsl-ai .vai-phase::before,
	.vsl-ai .vai-phase::after { display: none; }
	.vsl-ai .vai-phase__label { padding-left: 52px; min-height: 40px; }
	.vsl-ai .vai-phase__num { width: 38px; height: 38px; font-size: 13px; box-shadow: none; }
	.vsl-ai .vai-phase__name { font-size: 16px; margin-bottom: 6px; }
	.vsl-ai .vai-phase__steps { grid-template-columns: 1fr; gap: 10px; }
	.vsl-ai .vai-step { padding: 16px 16px 14px; }
	.vsl-ai .vai-step__icon { width: 38px; height: 38px; font-size: 15px; margin-bottom: 10px; }
	.vsl-ai .vai-step__title { font-size: 13px; }
	.vsl-ai .vai-step__text { font-size: 13px; }
	.vsl-ai .vai-journey__outcome { padding: 14px 22px; gap: 10px; }
	.vsl-ai .vai-journey__outcome strong { font-size: 14px; }
	.vsl-ai .vai-journey__strip { flex-direction: column; gap: 12px; text-align: center; padding: 20px; }
	.vsl-ai .vai-journey__strip > span { padding-right: 0; font-size: 13.5px; }
	.vsl-ai .vai-journey__strip > span::after { display: none; }

	.vsl-ai .vai-trust { padding: 44px 0 40px; }
	.vsl-ai .vai-trust__head { margin-bottom: 26px; }
	.vsl-ai .vai-trust__title { font-size: 22px; }
	.vsl-ai .vai-trust__sub { font-size: 13.5px; }
	.vsl-ai .vai-trust__stats { grid-template-columns: 1fr 1fr; }
	.vsl-ai .vai-trust__stats li { padding: 16px 10px; }
	.vsl-ai .vai-trust__stats li:nth-child(3) { border-left: 0; }
	.vsl-ai .vai-trust__stats li:nth-child(n+3) { border-top: 1px solid var(--vc-line); }
	.vsl-ai .vai-stat__value { font-size: 28px; }
	.vsl-ai .vai-stat__label { font-size: 11.5px; }
	.vsl-ai .vai-trust__note { flex-direction: column; text-align: center; gap: 8px; font-size: 13px; }
	.vsl-ai .vai-compare__table { font-size: 13px; min-width: 560px; }
	.vsl-ai .vai-compare__table th,
	.vsl-ai .vai-compare__table td { padding: 13px 14px; }

	.vsl-ai .vai-explore { padding: 34px 0 32px; }
	.vsl-ai .vai-explore__links a { padding: 9px 15px; font-size: 12.5px; }

	.vsl-ai .vai-findus { padding: 40px 0 36px; }
	.vsl-ai .vai-findus__title { font-size: 22px; }
	.vsl-ai .vai-findus__sub { font-size: 13.5px; }
	.vsl-ai .vai-findus__result {
		flex-direction: column;
		gap: 8px;
		text-align: center;
		border-radius: 16px;
		padding: 16px 20px;
	}
	.vsl-ai .vai-findus__result-label {
		padding: 0 0 8px;
		border-right: 0;
		border-bottom: 1px solid rgba(53, 60, 62, 0.2);
	}
	.vsl-ai .vai-findus__result-text { font-size: 14px; }

	.vsl-ai .vai-future { padding: 42px 0 40px; }
	.vsl-ai .vai-future__head { margin-bottom: 28px; }
	.vsl-ai .vai-future__title { font-size: 22px; }
	.vsl-ai .vai-future__sub { font-size: 13.5px; }
	.vsl-ai .vai-future__triad { grid-template-columns: 1fr; gap: 14px; }
	/* chevron points down between stacked cards */
	.vsl-ai .vai-future__triad li:not(:last-child)::after {
		right: 50%;
		top: auto;
		bottom: -16px;
		transform: translateX(50%) rotate(135deg);
	}
	.vsl-ai .vai-future__icon { width: 52px; height: 52px; font-size: 22px; }
	.vsl-ai .vai-future__triad h3 { font-size: 18px; }
}

@media (max-width: 480px) {
	.vsl-ai .vai-trust__stats { grid-template-columns: 1fr; }
	.vsl-ai .vai-trust__stats li + li { border-left: 0; border-top: 1px solid var(--vc-line); }
}

/* ==========================================================================
   1c. CLIENT TESTIMONIAL — single quote directly under the proof strip.
   Compact and centred so it reads as proof at the fold, not a section.
   ========================================================================== */
.vsl-ai .vai-quote {
	background: #fff;
	padding: 46px 0 44px;
	border-bottom: 1px solid var(--vc-line);
}
.vsl-ai .vai-quote__inner {
	max-width: 820px;
	text-align: center;
}
.vsl-ai .vai-quote__mark {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	margin: 0 auto 18px;
	border-radius: 50%;
	background: var(--vc-orange-soft);
	color: var(--vc-orange);
	font-size: 18px;
}
/* reset any theme blockquote chrome (border / background / indent) */
.vsl-ai .vai-quote__text {
	margin: 0 auto 18px;
	padding: 0;
	border: 0;
	background: transparent;
	max-width: 21em;
	font-family: 'Open Sans', sans-serif;
	font-size: 23px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: -0.01em;
	color: var(--vc-navy);
}
.vsl-ai .vai-quote__text strong { color: var(--vc-orange); font-weight: 800; }
.vsl-ai .vai-quote__meta {
	display: inline-flex;
	align-items: center;
	gap: 12px;
}
.vsl-ai .vai-quote__stars { color: var(--vc-orange); font-size: 13px; letter-spacing: 3px; }
.vsl-ai .vai-quote__cite {
	position: relative;
	padding-left: 12px;
	font-style: normal;
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	font-weight: 800;
	color: var(--vc-navy);
	letter-spacing: 0.01em;
}
.vsl-ai .vai-quote__cite::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
	height: 14px;
	background: var(--vc-line);
}

/* ==========================================================================
   5c. AI ONLY vs HUMAN ONLY vs HYBRID — three-column positioning graphic.
   The hybrid column is framed and flagged as the winner; cross/check marks
   match the comparison table's colour language.
   ========================================================================== */
.vsl-ai .vai-versus {
	background: #fafbfc;
	padding: 66px 0 64px;
	border-top: 1px solid var(--vc-line);
}
.vsl-ai .vai-versus__head { text-align: center; max-width: 720px; margin: 0 auto 36px; }
.vsl-ai .vai-versus__title {
	font-family: 'Open Sans', sans-serif;
	font-size: 30px;
	font-weight: 800;
	color: var(--vc-navy);
	letter-spacing: -0.018em;
	line-height: 1.18;
	margin: 0 0 12px;
}
.vsl-ai .vai-versus__sub {
	margin: 0 auto;
	max-width: 46em;
	font-size: 15px;
	line-height: 1.6;
	color: var(--vc-muted);
}
.vsl-ai .vai-versus__cols {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	align-items: start;
}
.vsl-ai .vai-versus__cols > li::before { content: none; display: none; }
.vsl-ai .vai-versus__col {
	position: relative;
	background: #fff;
	border: 1px solid var(--vc-line);
	border-radius: 16px;
	padding: 26px 24px 24px;
	box-shadow: 0 8px 22px rgba(53, 60, 62, 0.05);
}
.vsl-ai .vai-versus__col-head {
	text-align: center;
	padding-bottom: 18px;
	margin-bottom: 18px;
	border-bottom: 1px solid var(--vc-line);
}
.vsl-ai .vai-versus__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	margin: 0 auto 12px;
	border-radius: 14px;
	background: rgba(53, 60, 62, 0.06);
	color: var(--vc-muted);
	font-size: 20px;
}
.vsl-ai .vai-versus__name {
	font-family: 'Open Sans', sans-serif;
	font-size: 19px;
	font-weight: 800;
	color: var(--vc-navy);
	letter-spacing: -0.012em;
	margin: 0 0 4px;
}
.vsl-ai .vai-versus__verdict {
	display: block;
	font-size: 13px;
	color: var(--vc-muted);
	line-height: 1.4;
}
.vsl-ai .vai-versus__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.vsl-ai .vai-versus__list li::before { content: none; display: none; }
.vsl-ai .vai-versus__list li {
	display: flex;
	align-items: flex-start;
	gap: 11px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	color: var(--vc-muted);
}
.vsl-ai .vai-versus__list li i {
	flex: 0 0 18px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	margin-top: 1px;
	border-radius: 50%;
	font-size: 9px;
}
.vsl-ai .vai-versus__list .fa-times { background: rgba(229, 57, 53, 0.10); color: var(--vc-red); }
.vsl-ai .vai-versus__list .fa-check { background: rgba(0, 176, 80, 0.12); color: var(--vc-green); }

/* the winner column — elevated, orange-framed, flagged */
.vsl-ai .vai-versus__col--hybrid {
	border-color: rgba(254, 142, 6, 0.5);
	box-shadow: 0 18px 40px rgba(254, 142, 6, 0.16);
}
.vsl-ai .vai-versus__col--hybrid .vai-versus__icon {
	background: linear-gradient(135deg, var(--vc-orange) 0%, var(--vc-orange-dark) 100%);
	color: #fff;
}
.vsl-ai .vai-versus__col--hybrid .vai-versus__list li { color: var(--vc-navy); }
.vsl-ai .vai-versus__col--hybrid .vai-versus__verdict em { font-style: normal; color: var(--vc-orange); font-weight: 800; }
.vsl-ai .vai-versus__flag {
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%);
	padding: 5px 16px;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--vc-orange) 0%, var(--vc-orange-dark) 100%);
	color: #fff;
	font-family: 'Open Sans', sans-serif;
	font-size: 10.5px;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	white-space: nowrap;
	box-shadow: 0 8px 18px rgba(254, 142, 6, 0.3);
}

/* ==========================================================================
   8. STATISTICS BAND — six proof points, replacing the old four-number rail.
   1px grid gaps over a line-coloured background draw the dividers, so the
   grid re-flows to 2 / 1 columns on smaller screens with no border maths.
   ========================================================================== */
.vsl-ai .vai-metrics {
	list-style: none;
	margin: 0 auto 30px;
	padding: 0;
	max-width: 1000px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1px;
	background: var(--vc-line);
	border: 1px solid var(--vc-line);
	border-radius: 16px;
	overflow: hidden;
}
.vsl-ai .vai-metrics > li::before { content: none; display: none; }
.vsl-ai .vai-metric {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 28px 18px;
	text-align: center;
	background: #fff;
}
.vsl-ai .vai-metric__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: var(--vc-orange-soft);
	color: var(--vc-orange);
	font-size: 18px;
}
.vsl-ai .vai-metric__value {
	font-family: 'Open Sans', sans-serif;
	font-size: 34px;
	font-weight: 800;
	line-height: 1;
	color: var(--vc-orange);
	letter-spacing: -0.03em;
}
.vsl-ai .vai-metric__value sup { font-size: 0.5em; top: -0.6em; margin-left: 1px; }
.vsl-ai .vai-metric__value--text {
	font-size: 20px;
	letter-spacing: -0.01em;
	color: var(--vc-navy);
}
.vsl-ai .vai-metric__label {
	font-size: 13px;
	font-weight: 700;
	color: var(--vc-muted);
	letter-spacing: 0.01em;
	line-height: 1.35;
}

/* ==========================================================================
   RESPONSIVE — testimonial / versus / metrics
   ========================================================================== */
@media (max-width: 1024px) and (min-width: 781px) {
	.vsl-ai .vai-versus__col { padding: 22px 18px 20px; }
	.vsl-ai .vai-versus__list li { font-size: 13.5px; }
}

@media (max-width: 780px) {
	.vsl-ai .vai-quote { padding: 34px 0 32px; }
	.vsl-ai .vai-quote__mark { width: 40px; height: 40px; font-size: 16px; margin-bottom: 14px; }
	.vsl-ai .vai-quote__text { font-size: 18px; max-width: 100%; }
	.vsl-ai .vai-quote__meta { flex-direction: column; gap: 6px; }
	.vsl-ai .vai-quote__cite { padding-left: 0; }
	.vsl-ai .vai-quote__cite::before { display: none; }

	.vsl-ai .vai-versus { padding: 42px 0 40px; }
	.vsl-ai .vai-versus__head { margin-bottom: 28px; }
	.vsl-ai .vai-versus__title { font-size: 22px; }
	.vsl-ai .vai-versus__sub { font-size: 13.5px; }
	.vsl-ai .vai-versus__cols { grid-template-columns: 1fr; gap: 24px; }

	.vsl-ai .vai-metrics { grid-template-columns: repeat(2, 1fr); }
	.vsl-ai .vai-metric { padding: 22px 12px; }
	.vsl-ai .vai-metric__value { font-size: 28px; }
	.vsl-ai .vai-metric__value--text { font-size: 17px; }
}

@media (max-width: 480px) {
	.vsl-ai .vai-metrics { grid-template-columns: 1fr; }
}

/* ==========================================================================
   4b. OUR PROVEN PROCESS — five-step horizontal ribbon.
   The at-a-glance flow. Distinct from the vertical 7-node chain and the
   phased 12-step journey: horizontal cards, a number badge above each, and
   a right-pointing chevron in the gap (which flips to point down on mobile).
   ========================================================================== */
.vsl-ai .vai-process {
	background: #fafbfc;
	padding: 60px 0 58px;
	border-top: 1px solid var(--vc-line);
	border-bottom: 1px solid var(--vc-line);
}
.vsl-ai .vai-process__head { text-align: center; max-width: 720px; margin: 0 auto 40px; }
.vsl-ai .vai-process__title {
	font-family: 'Open Sans', sans-serif;
	font-size: 28px;
	font-weight: 800;
	color: var(--vc-navy);
	letter-spacing: -0.018em;
	line-height: 1.2;
	margin: 0 0 12px;
}
.vsl-ai .vai-process__sub {
	margin: 0;
	font-size: 15px;
	line-height: 1.6;
	color: var(--vc-muted);
}
.vsl-ai .vai-process__steps {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 30px;
}
.vsl-ai .vai-process__steps > li::before { content: none; display: none; }
.vsl-ai .vai-process__step {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: 26px 16px 22px;
	background: #fff;
	border: 1px solid var(--vc-line);
	border-top: 3px solid var(--vai-step-accent);
	border-radius: 14px;
	box-shadow: 0 8px 20px rgba(53, 60, 62, 0.05);
}
/* right-pointing chevron in the gap between cards (desktop) */
.vsl-ai .vai-process__step:not(:last-child)::after {
	content: '';
	position: absolute;
	right: -22px;
	top: 50%;
	width: 12px;
	height: 12px;
	border-top: 2px solid #c7ccd6;
	border-right: 2px solid #c7ccd6;
	transform: translateY(-50%) rotate(45deg);
	z-index: 2;
}
.vsl-ai .vai-process__num {
	position: absolute;
	top: -13px;
	left: 50%;
	transform: translateX(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: var(--vai-step-accent);
	color: #fff;
	font-family: 'Open Sans', sans-serif;
	font-size: 12px;
	font-weight: 800;
	line-height: 1;
	box-shadow: 0 0 0 4px #fafbfc;
}
.vsl-ai .vai-process__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin: 8px 0 14px;
	border-radius: 14px;
	background: var(--vai-step-tint);
	color: var(--vai-step-accent);
	font-size: 20px;
}
.vsl-ai .vai-process__label {
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	font-weight: 700;
	color: var(--vc-navy);
	line-height: 1.4;
}
.vsl-ai .vai-process__step--ai     { --vai-step-accent: var(--vc-orange); --vai-step-tint: rgba(254, 142, 6, 0.12); }
.vsl-ai .vai-process__step--human  { --vai-step-accent: var(--vc-green); --vai-step-tint: rgba(0, 176, 80, 0.12); }
.vsl-ai .vai-process__step--auto   { --vai-step-accent: #7a8794; --vai-step-tint: rgba(122, 135, 148, 0.16); }
.vsl-ai .vai-process__step--result { --vai-step-accent: var(--vc-navy); --vai-step-tint: rgba(53, 60, 62, 0.10); }

@media (max-width: 1024px) and (min-width: 781px) {
	.vsl-ai .vai-process__steps { gap: 20px; }
	.vsl-ai .vai-process__step:not(:last-child)::after { right: -16px; }
	.vsl-ai .vai-process__label { font-size: 13px; }
}

@media (max-width: 780px) {
	.vsl-ai .vai-process { padding: 42px 0 40px; }
	.vsl-ai .vai-process__head { margin-bottom: 32px; }
	.vsl-ai .vai-process__title { font-size: 22px; }
	.vsl-ai .vai-process__sub { font-size: 13.5px; }
	/* stack into a single centred column; the chevron flips to point down */
	.vsl-ai .vai-process__steps { grid-template-columns: 1fr; gap: 30px; max-width: 340px; margin: 0 auto; }
	.vsl-ai .vai-process__step { padding: 24px 18px 20px; }
	.vsl-ai .vai-process__step:not(:last-child)::after {
		right: 50%;
		top: auto;
		bottom: -21px;
		transform: translateX(50%) rotate(135deg);
	}
}

/* ---- 11. Book your call (inline Calendly) ---- */
.vai-book {
	padding: 64px 0 40px;
	background: #fff;
	text-align: center;
}
.vai-book__title {
	font-size: 32px;
	font-weight: 800;
	color: #1f2937;
	margin: 0 0 12px;
}
.vai-book__sub {
	max-width: 640px;
	margin: 0 auto 28px;
	font-size: 17px;
	line-height: 1.6;
	color: #4b5563;
}
.vai-book__sub a {
	color: #b45309;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
}
.vai-book__sub a:hover {
	color: #92400e;
}
