	/* ---------------- Hero ---------------- */
	.ts-hero {
		background:
			radial-gradient(circle at 16% 22%, rgba(124,58,237,.13) 0%, transparent 38%),
			radial-gradient(circle at 84% 78%, rgba(13,110,253,.10) 0%, transparent 42%),
			linear-gradient(180deg, #fafbfc 0%, #f1f3f5 100%);
		padding: 70px 0 50px;
		border-bottom: 1px solid #e9ecef;
	}
	.ts-hero .eyebrow {
		display: inline-block;
		font-size: .78rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
		color: #495057; background: #fff; border: 1px solid #dee2e6;
		padding: .35rem .9rem; border-radius: 999px; margin-bottom: 1.1rem;
	}
	.ts-hero h1 {
		font-size: clamp(2rem, 4.5vw, 3.6rem);
		font-weight: 800; letter-spacing: -.025em; line-height: 1.05;
		margin: 0 0 1rem; color: #1a1d22;
	}
	.ts-hero .lead { font-size: 1.18rem; color: #495057; max-width: 760px; margin: 0 auto; line-height: 1.55; }

	/* ---------------- Stat strip ---------------- */
	.ts-stats { background: #fff; border-bottom: 1px solid #e9ecef; padding: 28px 0; }
	.ts-stat { text-align: center; padding: .25rem .5rem; border-right: 1px solid #e9ecef; }
	.ts-stat:last-child { border-right: 0; }
	.ts-stat .num { font-size: 1.75rem; font-weight: 800; color: #7c3aed; line-height: 1.1; letter-spacing: -.02em; }
	.ts-stat .lbl { font-size: .82rem; text-transform: uppercase; letter-spacing: .08em; color: #6c757d; margin-top: .2rem; }
	@media (max-width: 768px) {
		.ts-stat { border-right: 0; border-bottom: 1px solid #e9ecef; padding: 1rem .5rem; }
		.ts-stat:last-child { border-bottom: 0; }
	}

	/* ---------------- Section heads (per category) ---------------- */
	.ts-cat-section { padding: 60px 0; border-bottom: 1px solid #e9ecef; }
	.ts-cat-section:nth-of-type(even) { background: #f8f9fa; }
	.ts-cat-head { margin-bottom: 2rem; }
	.ts-cat-num {
		display: inline-block;
		font-size: .72rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase;
		color: #7c3aed; margin-bottom: .4rem;
	}
	.ts-cat-name { font-size: 2rem; font-weight: 800; letter-spacing: -.02em; line-height: 1.1; color: #1a1d22; margin: 0 0 .5rem; }
	.ts-cat-desc { color: #495057; font-size: 1.02rem; max-width: 720px; line-height: 1.55; margin: 0; }
	.ts-cat-deepdive { font-size: .88rem; font-weight: 700; color: #6d28d9; text-decoration: none; margin-top: .5rem; display: inline-block; }
	.ts-cat-deepdive:hover { text-decoration: underline; color: #5b21b6; }

	/* ---------------- Brand tiles ---------------- */
	.ts-tile {
		flex-shrink: 0; width: 56px; height: 56px; border-radius: 12px;
		display: flex; align-items: center; justify-content: center;
		font-weight: 800; color: #fff; font-size: .95rem; letter-spacing: -.01em;
		box-shadow: 0 4px 10px rgba(0,0,0,.06);
		font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
	}
	.ts-tile-sm { width: 40px; height: 40px; border-radius: 8px; font-size: .68rem; box-shadow: 0 2px 6px rgba(0,0,0,.05); }

	.tile-ninja      { background: linear-gradient(135deg, #1a1d22 0%, #000 60%); position: relative; }
	.tile-ninja::after { content: ""; position: absolute; inset: 0; border-radius: inherit; background: linear-gradient(135deg, transparent 60%, rgba(124,58,237,.6) 100%); pointer-events: none; }
	.tile-loadninja  { background: linear-gradient(135deg, #f59e0b 0%, #b45309 100%); }
	.tile-mcleod     { background: linear-gradient(135deg, #003a70 0%, #001f3d 100%); }
	.tile-tpro       { background: linear-gradient(135deg, #1f78d1 0%, #0d4e8d 100%); }
	.tile-protrans   { background: linear-gradient(135deg, #2ecc71 0%, #1e8e4a 100%); }
	.tile-truckstop  { background: linear-gradient(135deg, #e8332a 0%, #b3211a 100%); }
	.tile-dat        { background: linear-gradient(135deg, #ff7a1a 0%, #d8590a 100%); }
	.tile-tpath      { background: linear-gradient(135deg, #2ecc71 0%, #1e8e4a 100%); }
	.tile-motive     { background: linear-gradient(135deg, #1e40af 0%, #1e3a8a 100%); }
	.tile-samsara    { background: linear-gradient(135deg, #0d9488 0%, #115e59 100%); }
	.tile-hos247     { background: linear-gradient(135deg, #ea580c 0%, #9a3412 100%); }
	.tile-garmin     { background: linear-gradient(135deg, #1f2937 0%, #111827 100%); }

	.tile-outgo      { background: linear-gradient(135deg, #14b8a6 0%, #0f766e 100%); }
	.tile-tbs        { background: linear-gradient(135deg, #0066cc 0%, #003d80 100%); }
	.tile-otr        { background: linear-gradient(135deg, #1e40af 0%, #1e3a8a 100%); }
	.tile-rts        { background: linear-gradient(135deg, #dc2626 0%, #991b1b 100%); }
	.tile-apex       { background: linear-gradient(135deg, #f59e0b 0%, #b45309 100%); }
	.tile-triumph    { background: linear-gradient(135deg, #b71c1c 0%, #7f1212 100%); }

	.tile-adobe      { background: linear-gradient(135deg, #ec1c24 0%, #b8141a 100%); }
	.tile-mslens     { background: linear-gradient(135deg, #0078d4 0%, #005a9e 100%); }
	.tile-genius     { background: linear-gradient(135deg, #8b5cf6 0%, #6d28d9 100%); }
	.tile-truckertools { background: linear-gradient(135deg, #ea580c 0%, #9a3412 100%); }

	.tile-copilot    { background: linear-gradient(135deg, #0ea5e9 0%, #0369a1 100%); }
	.tile-sygic      { background: linear-gradient(135deg, #ef4444 0%, #b91c1c 100%); }
	.tile-tpclub     { background: linear-gradient(135deg, #16a34a 0%, #15803d 100%); }
	.tile-reserveit  { background: linear-gradient(135deg, #fbbf24 0%, #b45309 100%); }
	.tile-tareserve  { background: linear-gradient(135deg, #7c2d12 0%, #431407 100%); }
	.tile-parkmt     { background: linear-gradient(135deg, #6366f1 0%, #4338ca 100%); }

	.tile-mudflap    { background: linear-gradient(135deg, #fbbf24 0%, #d97706 100%); }
	.tile-efs        { background: linear-gradient(135deg, #1e3a8a 0%, #172554 100%); }
	.tile-comdata    { background: linear-gradient(135deg, #b91c1c 0%, #7f1d1d 100%); }
	.tile-pilot      { background: linear-gradient(135deg, #fbbf24 0%, #b45309 100%); }

	.tile-fleetio    { background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%); }
	.tile-fullbay    { background: linear-gradient(135deg, #f97316 0%, #c2410c 100%); }
	.tile-dossier    { background: linear-gradient(135deg, #475569 0%, #334155 100%); }

	.tile-tivly      { background: linear-gradient(135deg, #0891b2 0%, #155e75 100%); }
	.tile-progressive{ background: linear-gradient(135deg, #003e7e 0%, #002952 100%); }
	.tile-coverdash  { background: linear-gradient(135deg, #10b981 0%, #047857 100%); }

	/* ---------------- Featured pick card (per category) ---------------- */
	.ts-pick {
		background: #fff;
		border: 1px solid #e9ecef;
		border-radius: 14px;
		padding: 1.6rem;
		height: 100%;
		position: relative;
		transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
		border-left: 4px solid #7c3aed;
	}
	.ts-pick:hover { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(0,0,0,.08); border-color: #ced4da; border-left-color: #6d28d9; }
	.ts-pick .pick-tag {
		display: inline-block;
		background: linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%);
		color: #fff;
		padding: .25rem .75rem;
		border-radius: 6px;
		font-size: .65rem;
		font-weight: 800;
		letter-spacing: .12em;
		text-transform: uppercase;
		margin-bottom: 1rem;
		box-shadow: 0 4px 10px rgba(124,58,237,.25);
	}
	.ts-pick .head { display: flex; align-items: center; gap: 1rem; margin-bottom: .9rem; }
	.ts-pick h3 { font-size: 1.3rem; font-weight: 800; letter-spacing: -.015em; margin: 0; color: #1a1d22; line-height: 1.15; }
	.ts-pick .meta { font-size: .8rem; color: #868e96; margin-top: .15rem; }
	.ts-pick p { color: #495057; font-size: .94rem; line-height: 1.55; margin: 0 0 1rem; }
	.ts-pick .visit-btn {
		display: inline-flex; align-items: center; gap: .4rem;
		background: #1a1d22; color: #fff;
		padding: .5rem 1.05rem; border-radius: 8px;
		font-weight: 600; font-size: .88rem; text-decoration: none;
		transition: background .15s ease;
	}
	.ts-pick .visit-btn:hover { background: #7c3aed; color: #fff; }
	.ts-pick .price { font-size: .82rem; color: #6c757d; margin-top: .8rem; }

	/* ---------------- Mini cards ---------------- */
	.ts-mini {
		display: flex; align-items: center; gap: .9rem;
		background: #fff; border: 1px solid #e9ecef; border-radius: 10px;
		padding: .85rem 1rem; height: 100%;
		text-decoration: none; color: inherit;
		transition: border-color .15s ease, transform .15s ease, box-shadow .15s ease;
	}
	.ts-mini:hover { border-color: #adb5bd; transform: translateY(-1px); box-shadow: 0 6px 14px rgba(0,0,0,.05); color: inherit; }
	.ts-mini .name { font-weight: 700; line-height: 1.2; color: #1a1d22; font-size: .94rem; }
	.ts-mini .tag { font-size: .82rem; color: #6c757d; line-height: 1.35; margin-top: .15rem; }

	/* ---------------- Stack overview (the at-a-glance grid) ---------------- */
	.ts-overview { padding: 60px 0 30px; }
	.ts-overview-grid {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
		gap: 1rem;
	}
	.ts-overview-card {
		background: #fff;
		border: 1px solid #e9ecef;
		border-radius: 12px;
		padding: 1.1rem;
		transition: transform .15s ease, box-shadow .15s ease;
		display: block; color: inherit;
	}
	.ts-overview-card:hover { transform: translateY(-2px); box-shadow: 0 8px 18px rgba(0,0,0,.06); color: inherit; }
	.ts-overview-cat {
		font-size: .68rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;
		color: #6c757d; margin-bottom: .5rem;
	}
	.ts-overview-name {
		font-size: 1.05rem; font-weight: 800; color: #1a1d22; margin: 0 0 .15rem;
	}
	.ts-overview-tag { font-size: .82rem; color: #6c757d; }

	/* ---------------- Companion ad (Loadboard Ninja inside the load-board section) ---------------- */
	.ts-companion {
		margin-top: 2.5rem;
		background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
		border: 1px solid #f59e0b;
		border-radius: 14px;
		padding: 1.6rem 1.8rem;
		position: relative;
		overflow: hidden;
		box-shadow: 0 8px 22px rgba(245,158,11,.10);
	}
	.ts-companion::before {
		content: ""; position: absolute; inset: 0;
		background-image: radial-gradient(circle at 92% 12%, rgba(245,158,11,.12) 0%, transparent 38%);
		pointer-events: none;
	}
	.ts-companion > * { position: relative; z-index: 1; }
	.ts-companion-tag {
		display: inline-block;
		background: linear-gradient(135deg, #f59e0b 0%, #b45309 100%);
		color: #fff;
		padding: .3rem .85rem;
		border-radius: 999px;
		font-size: .68rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;
		margin-bottom: 1.1rem;
		box-shadow: 0 4px 10px rgba(245,158,11,.30);
	}
	.ts-companion-head { display: flex; align-items: center; gap: 1rem; margin-bottom: .85rem; }
	.ts-companion-head h3 {
		font-size: 1.5rem; font-weight: 800; letter-spacing: -.015em;
		margin: 0; color: #1a1d22; line-height: 1.1;
	}
	.ts-companion-head .meta { font-size: .82rem; color: #78350f; margin-top: .15rem; }
	.ts-companion-lead {
		font-size: 1.05rem; color: #1a1d22; margin: 0 0 .5rem;
	}
	.ts-companion-body {
		color: #4b5563; font-size: .94rem; line-height: 1.55; margin: 0 0 1rem;
	}
	.ts-companion-bullets {
		list-style: none; padding: 0; margin: 0 0 1.1rem;
		font-size: .9rem;
	}
	.ts-companion-bullets li {
		display: flex; align-items: flex-start; gap: .55rem;
		padding: .25rem 0;
		color: #374151;
	}
	.ts-companion-bullets li::before {
		content: "✓"; color: #b45309; font-weight: 800; flex-shrink: 0; width: 1.1rem;
	}
	.ts-companion-btn {
		display: inline-block;
		background: linear-gradient(135deg, #f59e0b 0%, #b45309 100%);
		color: #fff;
		padding: .7rem 1.6rem;
		border-radius: 8px;
		font-weight: 800; font-size: .92rem;
		text-decoration: none;
		box-shadow: 0 6px 16px rgba(245,158,11,.30);
		transition: transform .15s ease, box-shadow .15s ease;
	}
	.ts-companion-btn:hover { color: #fff; transform: translateY(-2px); box-shadow: 0 10px 22px rgba(245,158,11,.40); }
	.ts-companion-icon {
		font-size: 6rem; line-height: 1;
		font-weight: 900;
		color: #f59e0b;
		opacity: .55;
	}
	.ts-companion-icon-label {
		font-size: .85rem;
		color: #78350f;
		margin-top: .35rem;
		font-weight: 600;
	}

	/* ---------------- Final CTA ---------------- */
	.ts-cta-band {
		background:
			radial-gradient(circle at 20% 22%, rgba(124,58,237,.20) 0%, transparent 38%),
			radial-gradient(circle at 80% 78%, rgba(13,110,253,.12) 0%, transparent 40%),
			linear-gradient(135deg, #0a0814 0%, #161028 50%, #221a3f 100%);
		color: #f1f3f5;
		padding: 80px 0 90px;
		position: relative; overflow: hidden;
		border-top: 4px solid #7c3aed;
	}
	.ts-cta-band::after {
		content: ""; position: absolute; inset: 0;
		background-image:
			linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
			linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
		background-size: 32px 32px; pointer-events: none;
	}
	.ts-cta-band > .container { position: relative; z-index: 1; }
	.ts-cta-eyebrow {
		display: inline-block;
		background: rgba(124,58,237,.20); color: #c4b5fd;
		padding: .4rem 1.1rem; border-radius: 999px;
		font-size: .8rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
		margin-bottom: 1.3rem; border: 1px solid rgba(124,58,237,.35);
	}
	.ts-cta-band h2 {
		font-size: clamp(2rem, 4.5vw, 3rem);
		font-weight: 900; letter-spacing: -.02em; line-height: 1.05;
		margin-bottom: .8rem;
		background: linear-gradient(180deg, #ffffff 0%, #c0c8d0 100%);
		-webkit-background-clip: text; background-clip: text; color: transparent;
	}
	.ts-cta-band .lead { font-size: 1.22rem; opacity: .92; margin-bottom: 1rem; max-width: 720px; }
	.ts-cta-band .body { opacity: .85; max-width: 720px; line-height: 1.65; }
	.ts-cta-btn {
		display: inline-block;
		background: linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%);
		color: #fff;
		padding: 1rem 2.4rem;
		font-size: 1.1rem; font-weight: 800;
		border: 0; border-radius: 10px;
		text-decoration: none;
		margin-top: 1.5rem;
		transition: transform .15s ease, box-shadow .15s ease;
		box-shadow: 0 8px 20px rgba(124,58,237,.30);
	}
	.ts-cta-btn:hover { color: #fff; transform: translateY(-2px); box-shadow: 0 12px 28px rgba(124,58,237,.40); }
	.ts-cta-meta { font-size: .9rem; opacity: .65; margin-top: 1rem; }

	/* CTA right-column: "Connected Apps" panel — mock NinjaTMS integrations dashboard. */
	.ts-cta-panel {
		background: rgba(255,255,255,.04);
		border: 1px solid rgba(255,255,255,.10);
		border-radius: 14px;
		padding: 1.4rem;
		box-shadow: 0 25px 60px rgba(0,0,0,.45);
		backdrop-filter: blur(4px);
	}
	.ts-cta-panel-head {
		display: flex; align-items: center; justify-content: space-between;
		padding-bottom: .9rem; border-bottom: 1px solid rgba(255,255,255,.08); margin-bottom: .9rem;
	}
	.ts-cta-panel-title {
		font-size: .82rem; font-weight: 700; color: #fff; letter-spacing: .04em;
	}
	.ts-cta-panel-status {
		font-size: .68rem; color: #6ee7b7;
		display: inline-flex; align-items: center; gap: .35rem;
		font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
	}
	.ts-cta-panel-status::before {
		content: ""; width: 8px; height: 8px; border-radius: 50%;
		background: #10b981;
		box-shadow: 0 0 0 4px rgba(16,185,129,.18);
	}
	.ts-cta-panel-row {
		display: flex; align-items: center; gap: .7rem;
		padding: .55rem .35rem;
		border-bottom: 1px solid rgba(255,255,255,.04);
	}
	.ts-cta-panel-row:last-child { border-bottom: 0; }
	.ts-cta-panel-row .pn-tile {
		flex-shrink: 0; width: 28px; height: 28px; border-radius: 6px;
		display: flex; align-items: center; justify-content: center;
		font-weight: 800; color: #fff; font-size: .58rem; letter-spacing: -.01em;
	}
	.ts-cta-panel-row .pn-name {
		flex: 1;
		font-size: .85rem;
		color: #c0c8d0;
		font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
	}
	.ts-cta-panel-row .pn-cat {
		font-size: .7rem; color: rgba(255,255,255,.45);
	}
	.ts-cta-panel-row .pn-dot {
		width: 8px; height: 8px; border-radius: 50%;
		background: #10b981;
		box-shadow: 0 0 0 3px rgba(16,185,129,.18);
		flex-shrink: 0;
	}
	@media (max-width: 991px) {
		.ts-cta-panel { margin-top: 2.5rem; max-width: 480px; margin-left: auto; margin-right: auto; }
	}
	
