/* ============================================================
   PPC SERVICES PAGE — self-contained styles
   Prefix: ppc-  (avoids all conflicts with theme CSS)
   Inherits CSS variables from styles.css (already enqueued).
   Auto-loaded by functions.php: page-ppc.php → ppc.css
============================================================ */

.ppc-page { overflow-x: clip; }

/* ---- Breadcrumb ---- */
.ppc-breadcrumb {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	color: var(--muted);
	margin-bottom: 20px;
	flex-wrap: wrap;
}
.ppc-breadcrumb a { color: var(--muted); transition: color .2s; }
.ppc-breadcrumb a:hover { color: var(--primary); }
.ppc-breadcrumb span:last-child { color: var(--ink); font-weight: 600; }
.ppc-breadcrumb .ppc-sep { opacity: .4; }

/* ================================================================
   SECTION 1 — HERO
================================================================ */
.ppc-hero {
	padding: clamp(100px, 12vw, 160px) 0 0;
	background: var(--paper);
}
.ppc-hero__inner {
	max-width: var(--max);
	margin: 0 auto;
	padding: 0 var(--pad-x);
	display: grid;
	grid-template-columns: 1fr 420px;
	gap: 60px;
	align-items: center;
}
.ppc-hero__h1 {
	font-family: var(--sans);
	font-weight: 800;
	font-size: clamp(36px, 5vw, 68px);
	line-height: .97;
	letter-spacing: -.028em;
	color: var(--ink);
	margin: 0 0 20px;
}
.ppc-hero__h1 em {
	font-family: var(--serif);
	font-style: italic;
	font-weight: 400;
	color: var(--primary-deep);
	letter-spacing: -.01em;
}
.ppc-hero__sub {
	font-size: clamp(15px, 1.1vw, 17px);
	line-height: 1.65;
	color: var(--muted);
	margin: 0 0 22px;
	max-width: 500px;
}
.ppc-hero__meta {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 13px;
	font-weight: 600;
	color: var(--ink-2);
	margin-bottom: 28px;
}
.ppc-hero__meta-dot { color: var(--primary); font-size: 16px; }
.ppc-hero__ctas { display: flex; gap: 12px; flex-wrap: wrap; }

/* ---- Campaign Performance Widget ---- */
.ppc-widget {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 60px 120px -50px rgba(45,10,84,.4), 0 20px 40px -20px rgba(45,10,84,.2);
}
.ppc-widget__bar {
	padding: 10px 14px;
	border-bottom: 1px solid var(--line);
	background: var(--paper-warm);
	display: flex;
	align-items: center;
	gap: 10px;
}
.ppc-widget__dots { display: flex; gap: 5px; flex-shrink: 0; }
.ppc-widget__dots i {
	width: 10px; height: 10px;
	border-radius: 50%; display: block;
}
.ppc-widget__dots i:nth-child(1) { background: #ff5f57; }
.ppc-widget__dots i:nth-child(2) { background: #ffbd2e; }
.ppc-widget__dots i:nth-child(3) { background: #28c840; }
.ppc-widget__title {
	font-family: var(--sans);
	font-size: 12px;
	font-weight: 600;
	color: var(--ink-2);
}
.ppc-widget__body {
	padding: 14px;
	background: var(--paper-warm);
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.ppc-widget__period {
	font-family: var(--sans);
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .12em;
	color: var(--muted);
}
.ppc-widget__metrics {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 6px;
}
.ppc-widget__metric {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 10px;
	padding: 10px 6px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 3px;
	text-align: center;
}
.ppc-widget__metric--green { border-color: rgba(21,163,74,.3); background: rgba(21,163,74,.04); }
.ppc-widget__metric-val {
	font-family: var(--sans);
	font-weight: 800;
	font-size: 15px;
	color: var(--ink);
	line-height: 1;
}
.ppc-widget__metric--green .ppc-widget__metric-val { color: #15a34a; }
.ppc-widget__metric-lbl {
	font-family: var(--sans);
	font-size: 9px;
	color: var(--muted);
	line-height: 1.3;
}
.ppc-widget__campaigns {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 10px;
	overflow: hidden;
}
.ppc-widget__row {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 12px;
	border-bottom: 1px solid rgba(11,4,24,.04);
	font-family: var(--sans);
	font-size: 12px;
}
.ppc-widget__row:last-child { border-bottom: 0; }
.ppc-widget__row span {
	width: 110px;
	flex-shrink: 0;
	color: var(--ink-2);
	font-weight: 500;
}
.ppc-widget__track {
	flex: 1;
	height: 5px;
	background: rgba(11,4,24,.06);
	border-radius: 3px;
	overflow: hidden;
}
.ppc-widget__fill {
	height: 100%;
	background: var(--primary);
	border-radius: 3px;
}
.ppc-widget__fill--yellow { background: #f59e0b; }
.ppc-widget__row strong {
	width: 20px;
	text-align: right;
	font-weight: 700;
	font-size: 12px;
	color: var(--ink);
	flex-shrink: 0;
}
.ppc-widget__row b.ok {
	font-size: 10px;
	font-weight: 700;
	color: #15a34a;
	background: rgba(21,163,74,.08);
	border: 1px solid rgba(21,163,74,.2);
	border-radius: 999px;
	padding: 2px 7px;
	flex-shrink: 0;
}
.ppc-widget__row b.go {
	font-size: 10px;
	font-weight: 700;
	color: var(--primary);
	background: rgba(129,97,255,.08);
	border: 1px solid rgba(129,97,255,.2);
	border-radius: 999px;
	padding: 2px 7px;
	flex-shrink: 0;
}
.ppc-widget__note {
	padding: 9px 16px;
	font-size: 11px;
	color: var(--muted);
	text-align: center;
	font-style: italic;
	border-top: 1px solid var(--line);
	font-family: var(--sans);
	background: #fff;
}

/* ---- Client logos strip below hero ---- */
.ppc-hero__clients {
	max-width: var(--max);
	margin: clamp(48px,6vw,80px) auto 0;
	padding: clamp(32px,4vw,52px) var(--pad-x);
	border-top: 1px solid var(--line);
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 40px;
	align-items: center;
}
.ppc-hero__clients-lbl {
	font-family: var(--sans);
	font-size: 11px;
	font-weight: 500;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--muted);
}
.ppc-hero__clients-row {
	display: flex;
	align-items: center;
	justify-content: space-around;
	gap: 32px;
	flex-wrap: wrap;
}
.ppc-hero__clients-row img {
	height: clamp(26px, 2.4vw, 38px);
	width: auto;
	opacity: .55;
	filter: grayscale(1) brightness(.65);
	transition: opacity .25s, filter .25s;
}
.ppc-hero__clients-row img:hover { opacity: 1; filter: none; }

/* ================================================================
   SECTION 2 — PROBLEM
================================================================ */
.ppc-problem {
	padding: clamp(80px, 10vw, 140px) 0 clamp(60px, 8vw, 100px);
	background: var(--paper-warm);
	border-top: 1px solid var(--line);
}
.ppc-problem__inner {
	max-width: var(--max);
	margin: 0 auto;
	padding: 0 var(--pad-x);
}
.ppc-problem__title {
	font-family: var(--sans);
	font-weight: 800;
	font-size: clamp(32px, 4.8vw, 60px);
	line-height: 1.02;
	letter-spacing: -.028em;
	margin: 0 0 12px;
}
.ppc-problem__title em {
	font-family: var(--serif);
	font-style: italic;
	font-weight: 400;
	color: var(--primary-deep);
}
.ppc-problem__sub {
	font-size: clamp(14px, 1vw, 17px);
	color: var(--muted);
	margin: 0 0 40px;
}
.ppc-quotes-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
	margin-bottom: 40px;
}
.ppc-quote-card {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 18px;
	padding: 22px 24px 22px 32px;
	font-size: clamp(14px, 1vw, 16px);
	line-height: 1.65;
	color: var(--ink-2);
	font-style: italic;
	position: relative;
	box-shadow: 0 1px 0 rgba(255,255,255,.6) inset, 0 18px 40px -20px rgba(45,10,84,.18);
	transition: border-color .25s, box-shadow .25s;
	font-family: var(--serif);
}
.ppc-quote-card::before {
	content: '\201C';
	position: absolute;
	top: 10px; left: 16px;
	font-family: var(--serif);
	font-size: 48px;
	line-height: 1;
	color: var(--primary);
	opacity: .2;
}
.ppc-quote-card:hover {
	border-color: rgba(129,97,255,.35);
	box-shadow: 0 40px 80px -40px rgba(45,10,84,.32), 0 12px 28px -14px rgba(45,10,84,.16);
}
.ppc-problem__bridge {
	padding: 32px 36px;
	background: #fff;
	border: 1px solid var(--line);
	border-left: 3px solid var(--primary);
	border-radius: 16px;
	font-size: clamp(15px, 1.1vw, 17px);
	line-height: 1.7;
	color: var(--ink-2);
	font-family: var(--sans);
}

/* ================================================================
   SECTION 3 — PLATFORMS (two-card layout)
================================================================ */
.ppc-platforms {
	padding: clamp(80px, 10vw, 140px) 0 clamp(40px, 5vw, 60px);
	background: var(--paper);
	border-top: 1px solid var(--line);
}
.ppc-platforms__inner {
	max-width: var(--max);
	margin: 0 auto;
	padding: 0 var(--pad-x);
}
.ppc-platforms__inner .sec__head--left { text-align: left; margin-bottom: clamp(40px, 5vw, 60px); }
.ppc-platforms__inner .sec__head--left .sec__sub { max-width: 680px; }
.ppc-platforms__cards {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin-bottom: 0;
}
.ppc-platform__card {
	background: var(--paper-warm);
	border: 1px solid var(--line);
	border-radius: 20px;
	padding: 36px 32px;
	display: flex;
	flex-direction: column;
	gap: 18px;
	transition: border-color .3s, box-shadow .3s;
	box-shadow: 0 1px 0 rgba(255,255,255,.6) inset;
}
.ppc-platform__card:hover {
	border-color: rgba(129,97,255,.3);
	box-shadow: 0 24px 60px -24px rgba(45,10,84,.22), 0 8px 24px -12px rgba(45,10,84,.12);
}
.ppc-platform__icon {
	width: 52px; height: 52px;
	background: rgba(129,97,255,.08);
	border: 1px solid rgba(129,97,255,.18);
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--primary);
}
.ppc-platform__icon svg { width: 28px; height: 28px; }
.ppc-platform__icon--meta {
	background: rgba(24,119,242,.08);
	border-color: rgba(24,119,242,.18);
	color: #1877f2;
}
.ppc-platform__body h3 {
	font-family: var(--sans);
	font-weight: 800;
	font-size: clamp(20px, 1.8vw, 26px);
	letter-spacing: -.02em;
	color: var(--ink);
	margin: 0 0 10px;
}
.ppc-platform__body p {
	font-size: clamp(13px, .95vw, 15px);
	line-height: 1.7;
	color: var(--muted);
	margin: 0;
	font-family: var(--sans);
}
.ppc-platform__cta {
	font-family: var(--sans);
	font-size: 13px;
	font-weight: 700;
	color: var(--primary);
	display: inline-flex;
	align-items: center;
	gap: 6px;
	transition: gap .2s;
	align-self: flex-start;
}
.ppc-platform__cta:hover { gap: 10px; }

/* ================================================================
   SECTION 4 — WHO THIS IS FOR
================================================================ */
.ppc-for {
	padding: clamp(80px, 10vw, 140px) 0;
	background: #fff;
	border-top: 1px solid var(--line);
	border-bottom: 1px solid var(--line);
}
.ppc-for__inner {
	max-width: var(--max);
	margin: 0 auto;
	padding: 0 var(--pad-x);
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 72px;
	align-items: start;
}
.ppc-for__eyebrow {
	font-family: var(--sans);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--primary);
	margin-bottom: 16px;
	display: block;
}
.ppc-for__title {
	font-family: var(--sans);
	font-weight: 800;
	font-size: clamp(30px, 3.8vw, 56px);
	line-height: 1.03;
	letter-spacing: -.025em;
	margin: 0 0 20px;
}
.ppc-for__title em {
	font-family: var(--serif);
	font-style: italic;
	font-weight: 400;
	color: var(--primary-deep);
}
.ppc-for__desc {
	font-size: clamp(14px, 1vw, 16px);
	line-height: 1.7;
	color: var(--muted);
	margin: 0;
}
.ppc-for__cta { margin-top: 28px; display: inline-flex; }
.ppc-for__list-label {
	font-family: var(--sans);
	font-size: 14px;
	font-weight: 600;
	color: var(--ink-2);
	margin: 0 0 12px;
}
.ppc-for__list {
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 3px;
}
.ppc-for__list li {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px 16px;
	background: var(--paper-warm);
	border: 1px solid var(--line);
	border-radius: 12px;
	font-size: 14px;
	font-weight: 500;
	color: var(--ink-2);
	font-family: var(--sans);
	transition: border-color .2s, background .2s;
}
.ppc-for__list li:hover {
	border-color: rgba(129,97,255,.3);
	background: rgba(129,97,255,.04);
}
.ppc-for__list li::before {
	content: '';
	width: 7px; height: 7px;
	background: var(--primary);
	border-radius: 50%;
	flex-shrink: 0;
	opacity: .65;
}
.ppc-for__note {
	font-size: 13px;
	line-height: 1.65;
	color: var(--muted);
	font-family: var(--sans);
	font-style: italic;
	padding: 14px 16px;
	border-left: 3px solid var(--primary);
	background: var(--paper-warm);
	border-radius: 0 8px 8px 0;
	margin: 0;
}

/* ================================================================
   SECTION 5 — HOW IT WORKS
   Give the 6-step version more scroll budget than the default 280vh
================================================================ */
.ppc-page .how__rail { min-height: 380vh; }

/* ================================================================
   SECTION 6 — WHY RUNWEB
================================================================ */
.ppc-why-wrap {
	padding: clamp(80px, 10vw, 140px) 0;
	background: var(--paper-warm);
	border-top: 1px solid var(--line);
	border-bottom: 1px solid var(--line);
}
.ppc-why__inner {
	max-width: var(--max);
	margin: 0 auto;
	padding: 0 var(--pad-x);
	display: grid;
	grid-template-columns: 5fr 7fr;
	gap: 72px;
	align-items: start;
}
.ppc-why__eyebrow {
	font-family: var(--sans);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--primary);
	margin-bottom: 16px;
	display: block;
}
.ppc-why__title {
	font-family: var(--sans);
	font-weight: 800;
	font-size: clamp(28px, 3.5vw, 52px);
	line-height: 1.04;
	letter-spacing: -.025em;
	margin: 0 0 28px;
}
.ppc-why__title em {
	font-family: var(--serif);
	font-style: italic;
	font-weight: 400;
	color: var(--primary-deep);
}
.ppc-why__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}
.ppc-why__item {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	padding: 18px 16px;
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 14px;
	transition: border-color .25s, box-shadow .25s;
}
.ppc-why__item:hover {
	border-color: rgba(129,97,255,.3);
	box-shadow: 0 8px 28px -12px rgba(45,10,84,.2);
}
.ppc-why__icon {
	width: 36px; height: 36px;
	background: rgba(129,97,255,.08);
	border: 1px solid rgba(129,97,255,.18);
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: var(--primary);
}
.ppc-why__icon svg { width: 16px; height: 16px; }
.ppc-why__item strong {
	display: block;
	font-family: var(--sans);
	font-size: 13px;
	font-weight: 700;
	color: var(--ink);
	margin-bottom: 5px;
}
.ppc-why__item p {
	font-size: 12px;
	line-height: 1.6;
	color: var(--muted);
	margin: 0;
	font-family: var(--sans);
}

/* ================================================================
   SECTION 7 — COMPARISON TABLE
================================================================ */
.ppc-compare {
	padding: clamp(80px, 10vw, 140px) 0;
	background: var(--paper);
}
.ppc-compare__inner {
	max-width: var(--max);
	margin: 0 auto;
	padding: 0 var(--pad-x);
}
.ppc-compare__eyebrow {
	font-family: var(--sans);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--primary);
	margin-bottom: 16px;
	display: block;
	text-align: center;
}
.ppc-compare__title {
	font-family: var(--sans);
	font-weight: 800;
	font-size: clamp(28px, 3.8vw, 56px);
	line-height: 1.04;
	letter-spacing: -.025em;
	margin: 0 0 48px;
	text-align: center;
	text-wrap: balance;
}
.ppc-compare__title em {
	font-family: var(--serif);
	font-style: italic;
	font-weight: 400;
	color: var(--primary-deep);
}
.ppc-table-wrap {
	overflow-x: auto;
	border-radius: 18px;
	border: 1px solid var(--line);
	box-shadow: 0 14px 40px -20px rgba(45,10,84,.2);
	margin-bottom: 48px;
}
.ppc-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
	background: #fff;
	font-family: var(--sans);
}
.ppc-table thead tr {
	background: var(--paper-warm);
	border-bottom: 2px solid var(--line);
}
.ppc-table th {
	padding: 18px 22px;
	text-align: left;
	font-weight: 700;
	font-size: 12px;
	color: var(--ink);
	text-transform: uppercase;
	letter-spacing: .07em;
}
.ppc-table th:nth-child(2) { color: var(--muted); }
.ppc-table th.ppc-table__rw { background: var(--ink); color: #fff; }
.ppc-table td {
	padding: 16px 22px;
	border-bottom: 1px solid rgba(11,4,24,.04);
	color: var(--muted);
	vertical-align: top;
	line-height: 1.55;
}
.ppc-table td:first-child {
	font-weight: 600;
	color: var(--ink-2);
	width: 22%;
}
.ppc-table td.ppc-table__rw {
	background: rgba(129,97,255,.04);
	border-left: 2px solid rgba(129,97,255,.18);
	color: var(--ink-2);
}
.ppc-table td.ppc-table__rw strong { color: var(--ink); font-weight: 700; }
.ppc-table tr:last-child td { border-bottom: 0; }
.ppc-table tbody tr:hover td { background: rgba(129,97,255,.025); }
.ppc-table tbody tr:hover td.ppc-table__rw { background: rgba(129,97,255,.07); }

/* ================================================================
   SECTION 8 — AS SEEN IN
================================================================ */
.ppc-featured {
	padding: clamp(40px, 6vw, 70px) 0;
	background: var(--ink);
}
.ppc-featured__inner {
	max-width: var(--max);
	margin: 0 auto;
	padding: 0 var(--pad-x);
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 40px;
	align-items: center;
}
.ppc-featured__lbl {
	font-family: var(--sans);
	font-size: 11px;
	font-weight: 500;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: rgba(255,255,255,.4);
	white-space: nowrap;
}
.ppc-featured__row {
	display: flex;
	align-items: center;
	justify-content: space-around;
	gap: 32px;
	flex-wrap: wrap;
}
.ppc-featured__row img {
	height: clamp(22px, 2vw, 32px);
	width: auto;
	opacity: .38;
	filter: brightness(10);
	transition: opacity .25s;
}
.ppc-featured__row img:hover { opacity: .7; }

/* ================================================================
   SECTION 9 — TESTIMONIALS (reuses template-parts/testimonials.php)
================================================================ */

/* ================================================================
   SECTION 10 — PRICING CTA
================================================================ */
.ppc-pricing-cta {
	padding: clamp(70px, 9vw, 120px) 0;
	background: var(--paper-warm);
	border-top: 1px solid var(--line);
	border-bottom: 1px solid var(--line);
	text-align: center;
}
.ppc-pricing-cta__inner {
	max-width: 700px;
	margin: 0 auto;
	padding: 0 var(--pad-x);
}
.ppc-pricing-cta__eyebrow {
	font-family: var(--sans);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--primary);
	margin-bottom: 16px;
	display: block;
}
.ppc-pricing-cta__title {
	font-family: var(--sans);
	font-weight: 800;
	font-size: clamp(28px, 3.6vw, 52px);
	line-height: 1.05;
	letter-spacing: -.025em;
	margin: 0 0 16px;
}
.ppc-pricing-cta__title em {
	font-family: var(--serif);
	font-style: italic;
	font-weight: 400;
	color: var(--primary-deep);
}
.ppc-pricing-cta__sub {
	font-size: clamp(14px, 1vw, 16px);
	color: var(--muted);
	line-height: 1.65;
	margin: 0 0 32px;
	font-family: var(--sans);
}

/* ================================================================
   SECTION 11 — STARTING FRESH OR STARTING OVER
================================================================ */
.ppc-start {
	padding: clamp(80px, 10vw, 140px) 0;
	background: var(--paper);
}
.ppc-start__inner {
	max-width: var(--max);
	margin: 0 auto;
	padding: 0 var(--pad-x);
}
.ppc-start__title {
	font-family: var(--sans);
	font-weight: 800;
	font-size: clamp(28px, 3.6vw, 52px);
	line-height: 1.05;
	letter-spacing: -.025em;
	margin: 0 0 clamp(32px, 4vw, 52px);
	text-align: center;
}
.ppc-start__title em {
	font-family: var(--serif);
	font-style: italic;
	font-weight: 400;
	color: var(--primary-deep);
}
.ppc-start__cards {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}
.ppc-start__card {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 20px;
	padding: 36px 32px;
	display: flex;
	flex-direction: column;
	gap: 14px;
	box-shadow: 0 1px 0 rgba(255,255,255,.6) inset, 0 18px 40px -20px rgba(45,10,84,.18);
	transition: border-color .3s, box-shadow .3s;
}
.ppc-start__card:hover {
	border-color: rgba(129,97,255,.3);
	box-shadow: 0 40px 80px -40px rgba(45,10,84,.32), 0 12px 28px -14px rgba(45,10,84,.16);
}
.ppc-start__card--dark {
	background: var(--ink);
	border-color: var(--ink);
}
.ppc-start__pill {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--primary);
	background: rgba(129,97,255,.1);
	border: 1px solid rgba(129,97,255,.22);
	border-radius: 999px;
	padding: 4px 12px;
	display: inline-block;
	align-self: flex-start;
	font-family: var(--sans);
}
.ppc-start__pill--light {
	color: var(--primary-soft, #a588ff);
	background: rgba(129,97,255,.15);
	border-color: rgba(165,136,255,.25);
}
.ppc-start__card h3 {
	font-family: var(--sans);
	font-weight: 800;
	font-size: clamp(22px, 2vw, 30px);
	letter-spacing: -.02em;
	margin: 0;
	color: var(--ink);
}
.ppc-start__card--dark h3 { color: #fff; }
.ppc-start__card p {
	font-size: clamp(13px, .95vw, 15px);
	line-height: 1.65;
	color: var(--muted);
	margin: 0;
	font-family: var(--sans);
}
.ppc-start__card--dark p { color: rgba(255,255,255,.55); }

/* ================================================================
   SECTIONS 12–14 reuse theme classes:
   .industries + .ind  (Other Services)
   .faq + .faq__item   (FAQ)
   .final + .final__card (Final CTA)
================================================================ */

/* ================================================================
   RESPONSIVE
================================================================ */
@media (max-width: 860px) {
	.ppc-hero__inner        { grid-template-columns: 1fr; gap: 40px; }
	.ppc-for__inner         { grid-template-columns: 1fr; gap: 40px; }
	.ppc-why__inner         { grid-template-columns: 1fr; gap: 40px; }
	.ppc-why__grid          { grid-template-columns: 1fr; }
	.ppc-start__cards       { grid-template-columns: 1fr; }
	.ppc-platforms__cards   { grid-template-columns: 1fr; }
	.ppc-hero__clients      { grid-template-columns: 1fr; gap: 16px; text-align: center; }
	.ppc-hero__clients-row  { justify-content: center; }
	.ppc-quotes-grid        { grid-template-columns: 1fr; }
	.ppc-featured__inner    { grid-template-columns: 1fr; gap: 16px; text-align: center; }
	.ppc-featured__row      { justify-content: center; }
	.ppc-page .how__rail    { min-height: 280vh; }
	.ppc-widget__metrics    { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
	.ppc-hero__ctas         { flex-direction: column; }
	.ppc-hero__ctas .btn    { width: 100%; justify-content: center; }
	.ppc-table th,
	.ppc-table td           { padding: 12px 14px; font-size: 12px; }
	.ppc-start__card        { padding: 26px 22px; }
	.ppc-problem__bridge    { padding: 22px 20px; }
	.ppc-platform__card     { padding: 26px 22px; }
}
