	/* ============================================================
	   DISPATCH TRUCKING SOFTWARE — guide-specific styles (.dts-*)
	   Theme: teal/cyan (#14b8a6 → #0f766e) + indigo accent (#6366f1)
	   ============================================================ */

	/* ---------------- Hero ---------------- */
	.dts-hero {
		background: linear-gradient(135deg, #0a1f1d 0%, #0f2b27 50%, #102f3a 100%);
		color: #f1f3f5;
		padding: 70px 0 50px;
		position: relative; overflow: hidden;
	}
	.dts-hero::before {
		content: ""; position: absolute; inset: 0;
		background-image:
			radial-gradient(circle at 18% 22%, rgba(20,184,166,.18) 0%, transparent 40%),
			radial-gradient(circle at 82% 78%, rgba(99,102,241,.12) 0%, transparent 44%);
		pointer-events: none;
	}
	.dts-hero > .container { position: relative; z-index: 1; }
	.dts-hero .eyebrow {
		display: inline-block;
		font-size: .78rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
		color: #5eead4; background: rgba(20,184,166,.12); border: 1px solid rgba(20,184,166,.32);
		padding: .35rem .9rem; border-radius: 999px; margin-bottom: 1.1rem;
	}
	.dts-hero h1 {
		font-size: clamp(2rem, 4.5vw, 3.4rem);
		font-weight: 800; letter-spacing: -.025em; line-height: 1.05;
		margin: 0 0 1rem; color: #fff;
	}
	.dts-hero .lead { font-size: 1.15rem; color: rgba(255,255,255,.82); max-width: 620px; line-height: 1.55; }
	.dts-hero-stats { margin-top: 2rem; display: flex; gap: 2.4rem; flex-wrap: wrap; }
	.dts-hero-stats .item .num { font-size: 2rem; font-weight: 800; color: #2dd4bf; line-height: 1; letter-spacing: -.02em; }
	.dts-hero-stats .item .lbl { font-size: .8rem; text-transform: uppercase; letter-spacing: .08em; color: rgba(255,255,255,.55); margin-top: .25rem; }

	.dts-hero-card {
		background: rgba(255,255,255,.04);
		border: 1px solid rgba(255,255,255,.10);
		border-radius: 14px; padding: 1.6rem;
		backdrop-filter: blur(8px);
	}
	.dts-hero-card .label { font-size: .72rem; text-transform: uppercase; letter-spacing: .12em; color: #5eead4; margin-bottom: .5rem; font-weight: 700; }
	.dts-hero-card h3 { color: #fff; font-size: 1.5rem; font-weight: 800; margin: 0 0 .5rem; }
	.dts-hero-card p { color: rgba(255,255,255,.78); font-size: .95rem; margin-bottom: 1rem; line-height: 1.5; }
	.dts-hero-card .stars { color: #2dd4bf; font-size: 1.4rem; letter-spacing: .12em; }
	.dts-hero-card .stars .empty { color: rgba(255,255,255,.18); }

	/* ---------------- Jump nav ---------------- */
	.dts-jump {
		background: #fff;
		border-bottom: 1px solid #e9ecef;
		padding: 22px 0;
		position: relative;
	}
	.dts-jump-label {
		font-size: .72rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;
		color: #6c757d; margin-bottom: .8rem;
	}
	.dts-jump-grid {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: .55rem;
	}
	.dts-jump-grid a {
		display: flex; align-items: center; gap: .55rem;
		background: #f8f9fa;
		border: 1px solid #e9ecef;
		padding: .55rem .8rem;
		border-radius: 8px;
		font-size: .86rem; font-weight: 600; color: #1a1d22;
		text-decoration: none;
		transition: background .15s ease, border-color .15s ease, transform .15s ease;
		line-height: 1.2;
	}
	.dts-jump-grid a:hover { background: #fff; border-color: #14b8a6; color: #0f766e; transform: translateY(-1px); }
	.dts-jump-grid a .num {
		font-size: .68rem; font-weight: 800; letter-spacing: .06em;
		background: #14b8a6; color: #fff;
		width: 22px; height: 22px; border-radius: 5px;
		display: inline-flex; align-items: center; justify-content: center;
		flex-shrink: 0;
	}
	@media (max-width: 992px) { .dts-jump-grid { grid-template-columns: repeat(2, 1fr); } }
	@media (max-width: 480px) { .dts-jump-grid { grid-template-columns: 1fr; } }

	/* ---------------- Explainer + workflow diagram ---------------- */
	.dts-explainer { padding: 70px 0; }
	.dts-explainer h2 { font-size: 2rem; font-weight: 800; letter-spacing: -.02em; margin: 0 0 1.2rem; color: #1a1d22; }
	.dts-explainer p { color: #495057; font-size: 1.02rem; line-height: 1.65; }
	.dts-explainer p a { color: #0f766e; font-weight: 600; text-decoration: none; border-bottom: 1px solid rgba(15,118,110,.3); }
	.dts-explainer p a:hover { border-bottom-color: #0f766e; }

	.dts-flowdiagram {
		display: flex; flex-wrap: wrap; align-items: stretch; gap: 0;
		margin: 2rem 0 0;
		background: linear-gradient(135deg, #f0fdfa 0%, #ecfeff 100%);
		border: 1px solid #99f6e4;
		border-radius: 14px;
		padding: 1.6rem 1.4rem;
	}
	.dts-flow-step {
		flex: 1 1 calc((100% - 6 * 1.5rem) / 7);
		min-width: 110px;
		background: #fff;
		border: 1px solid #cffafe;
		border-radius: 10px;
		padding: .9rem .6rem;
		text-align: center;
		position: relative;
		display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .35rem;
		box-shadow: 0 2px 6px rgba(13,148,136,.05);
	}
	.dts-flow-step .glyph { font-size: 1.6rem; line-height: 1; }
	.dts-flow-step .name { font-size: .82rem; font-weight: 700; color: #0f766e; line-height: 1.2; }
	.dts-flow-arrow {
		flex: 0 0 auto;
		display: flex; align-items: center; justify-content: center;
		color: #14b8a6; font-weight: 800; font-size: 1.2rem;
		padding: 0 .35rem;
	}
	@media (max-width: 768px) {
		.dts-flowdiagram { flex-direction: column; gap: .35rem; }
		.dts-flow-arrow { transform: rotate(90deg); padding: .15rem 0; }
		.dts-flow-step { width: 100%; }
	}

	/* ---------------- Brand tiles ---------------- */
	.dts-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: .92rem; letter-spacing: -.01em;
		box-shadow: 0 4px 10px rgba(0,0,0,.06);
		font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
	}
	.dts-tile-sm { width: 40px; height: 40px; border-radius: 8px; font-size: .68rem; box-shadow: 0 2px 6px rgba(0,0,0,.05); }
	.dts-tile-xl { width: 88px; height: 88px; border-radius: 18px; font-size: 1.5rem; box-shadow: 0 8px 22px rgba(0,0,0,.15); }

	.dts-tile.tile-ninja      { background: linear-gradient(135deg, #1a1d22 0%, #000 60%); position: relative; }
	.dts-tile.tile-ninja::after {
		content: ""; position: absolute; inset: 0; border-radius: inherit;
		background: linear-gradient(135deg, transparent 60%, rgba(20,184,166,.6) 100%);
		pointer-events: none;
	}
	.dts-tile.tile-mcleod     { background: linear-gradient(135deg, #003a70 0%, #001f3d 100%); }
	.dts-tile.tile-tpro       { background: linear-gradient(135deg, #1f78d1 0%, #0d4e8d 100%); }
	.dts-tile.tile-trimble    { background: linear-gradient(135deg, #00558b 0%, #003557 100%); }
	.dts-tile.tile-tstop      { background: linear-gradient(135deg, #e8332a 0%, #b3211a 100%); }
	.dts-tile.tile-its        { background: linear-gradient(135deg, #c0392b 0%, #7d2218 100%); }
	.dts-tile.tile-protrans   { background: linear-gradient(135deg, #2ecc71 0%, #1e8e4a 100%); }
	.dts-tile.tile-loadops    { background: linear-gradient(135deg, #00bfa5 0%, #00897b 100%); }
	.dts-tile.tile-ascend     { background: linear-gradient(135deg, #1a3a6c 0%, #0d2042 100%); }
	.dts-tile.tile-aljex      { background: linear-gradient(135deg, #ff7a1a 0%, #d8590a 100%); }
	.dts-tile.tile-tai        { background: linear-gradient(135deg, #14b8a6 0%, #0f766e 100%); }
	.dts-tile.tile-turvo      { background: linear-gradient(135deg, #6b4f9e 0%, #44326b 100%); }
	.dts-tile.tile-tailwind   { background: linear-gradient(135deg, #06b6d4 0%, #0e7490 100%); }
	.dts-tile.tile-axon       { background: linear-gradient(135deg, #475569 0%, #1e293b 100%); }
	.dts-tile.tile-truckbase  { background: linear-gradient(135deg, #7c3aed 0%, #5b21b6 100%); }
	.dts-tile.tile-roserocket { background: linear-gradient(135deg, #f43f5e 0%, #be123c 100%); }
	.dts-tile.tile-vektor     { background: linear-gradient(135deg, #10b981 0%, #047857 100%); }
	.dts-tile.tile-alvys      { background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%); }
	.dts-tile.tile-maven      { background: linear-gradient(135deg, #fb923c 0%, #c2410c 100%); }
	.dts-tile.tile-trucklogics{ background: linear-gradient(135deg, #4338ca 0%, #312e81 100%); }
	.dts-tile.tile-drdispatch { background: linear-gradient(135deg, #dc2626 0%, #991b1b 100%); }
	.dts-tile.tile-tpath      { background: linear-gradient(135deg, #2ecc71 0%, #1e8e4a 100%); }
	.dts-tile.tile-truckertls { background: linear-gradient(135deg, #ea580c 0%, #9a3412 100%); }
	.dts-tile.tile-optym      { background: linear-gradient(135deg, #0891b2 0%, #155e75 100%); }
	.dts-tile.tile-mercury    { background: linear-gradient(135deg, #b91c1c 0%, #7f1d1d 100%); }
	.dts-tile.tile-cargowise  { background: linear-gradient(135deg, #1e3a8a 0%, #172554 100%); }
	.dts-tile.tile-revenova   { background: linear-gradient(135deg, #00a1e0 0%, #0376a8 100%); }
	.dts-tile.tile-dat        { background: linear-gradient(135deg, #ff7a1a 0%, #d8590a 100%); }
	.dts-tile.tile-manhattan  { background: linear-gradient(135deg, #c4302b 0%, #8b1c19 100%); }
	.dts-tile.tile-oracle     { background: linear-gradient(135deg, #ea1b22 0%, #a8131a 100%); }
	.dts-tile.tile-sap        { background: linear-gradient(135deg, #0073e6 0%, #00408a 100%); }
	.dts-tile.tile-mandata    { background: linear-gradient(135deg, #1f4068 0%, #0d203a 100%); }
	.dts-tile.tile-gofreight  { background: linear-gradient(135deg, #f59e0b 0%, #b45309 100%); }
	.dts-tile.tile-openboxes  { background: linear-gradient(135deg, #475569 0%, #334155 100%); }
	.dts-tile.tile-motive     { background: linear-gradient(135deg, #1e40af 0%, #1e3a8a 100%); }
	.dts-tile.tile-samsara    { background: linear-gradient(135deg, #0d9488 0%, #115e59 100%); }
	.dts-tile.tile-tstopone   { background: linear-gradient(135deg, #e8332a 0%, #b3211a 100%); }

	/* ---------------- Category section (per type) ---------------- */
	.dts-cat-section { padding: 60px 0; border-bottom: 1px solid #e9ecef; }
	.dts-cat-section:nth-of-type(even) { background: #f8f9fa; }
	.dts-cat-head { margin-bottom: 2rem; max-width: 880px; }
	.dts-cat-num {
		display: inline-block;
		font-size: .72rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase;
		color: #0f766e; margin-bottom: .4rem;
	}
	.dts-cat-name { font-size: 1.85rem; font-weight: 800; letter-spacing: -.02em; line-height: 1.15; color: #1a1d22; margin: 0 0 .55rem; }
	.dts-cat-desc { color: #495057; font-size: 1rem; line-height: 1.6; margin: 0; }
	.dts-cat-desc a { color: #0f766e; font-weight: 600; text-decoration: none; border-bottom: 1px solid rgba(15,118,110,.3); }
	.dts-cat-desc a:hover { border-bottom-color: #0f766e; }

	/* ---------------- Featured pick card ---------------- */
	.dts-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 #14b8a6;
	}
	.dts-pick:hover { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(0,0,0,.08); border-color: #ced4da; border-left-color: #0f766e; }
	.dts-pick .pick-tag {
		display: inline-block;
		background: linear-gradient(135deg, #14b8a6 0%, #0f766e 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(20,184,166,.25);
	}
	.dts-pick .head { display: flex; align-items: center; gap: 1rem; margin-bottom: .9rem; }
	.dts-pick h3 { font-size: 1.3rem; font-weight: 800; letter-spacing: -.015em; margin: 0; color: #1a1d22; line-height: 1.15; }
	.dts-pick .meta { font-size: .8rem; color: #868e96; margin-top: .15rem; }
	.dts-pick p { color: #495057; font-size: .94rem; line-height: 1.6; margin: 0 0 1rem; }
	.dts-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;
	}
	.dts-pick .visit-btn:hover { background: #0f766e; color: #fff; }
	.dts-pick .price { font-size: .82rem; color: #6c757d; margin-top: .8rem; }

	/* ---------------- Mini cards (alternatives grid) ---------------- */
	.dts-alt-head {
		font-size: .72rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;
		color: #6c757d; margin: 1.6rem 0 .8rem;
	}
	.dts-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;
	}
	.dts-mini:hover { border-color: #14b8a6; transform: translateY(-1px); box-shadow: 0 6px 14px rgba(0,0,0,.05); color: inherit; }
	.dts-mini .name { font-weight: 700; line-height: 1.2; color: #1a1d22; font-size: .94rem; }
	.dts-mini .tag { font-size: .82rem; color: #6c757d; line-height: 1.35; margin-top: .15rem; }

	/* ---------------- Subgroups callout ---------------- */
	.dts-subgroups {
		background: #fff;
		border: 1px dashed #99f6e4;
		border-left: 3px solid #14b8a6;
		border-radius: 10px;
		padding: 1.2rem 1.4rem;
		margin-top: 2rem;
	}
	.dts-cat-section:nth-of-type(even) .dts-subgroups { background: #fff; }
	.dts-subgroups .label {
		font-size: .68rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;
		color: #0f766e; margin-bottom: .55rem;
	}
	.dts-subgroups h4 { font-size: 1rem; font-weight: 700; color: #1a1d22; margin: 0 0 .5rem; }
	.dts-subgroups ul { margin: 0; padding-left: 1.1rem; color: #495057; font-size: .92rem; line-height: 1.55; }
	.dts-subgroups ul li { margin-bottom: .3rem; }
	.dts-subgroups ul li strong { color: #1a1d22; }

	/* ---------------- Comparison matrix ---------------- */
	.dts-matrix-wrap { background: #f8f9fa; padding: 70px 0; border-top: 1px solid #e9ecef; border-bottom: 1px solid #e9ecef; }
	.dts-matrix-head { text-align: center; margin-bottom: 2.4rem; }
	.dts-matrix-head h2 { font-weight: 800; letter-spacing: -.015em; color: #1a1d22; }
	.dts-matrix-head .sub { color: #6c757d; max-width: 720px; margin: 0 auto; }
	.dts-matrix {
		background: #fff;
		border-radius: 14px;
		overflow: hidden;
		box-shadow: 0 8px 24px rgba(0,0,0,.06);
		border: 1px solid #e9ecef;
	}
	.dts-matrix table { width: 100%; margin: 0; border-collapse: collapse; }
	.dts-matrix thead th {
		background: #0f2b27; color: #ccfbf1;
		font-size: .76rem; font-weight: 700;
		text-transform: uppercase; letter-spacing: .1em;
		padding: 1rem 1.2rem; text-align: left; border: 0;
	}
	.dts-matrix thead th.center { text-align: center; }
	.dts-matrix tbody td {
		padding: 1rem 1.2rem;
		border-top: 1px solid #f1f3f5;
		font-size: .94rem; color: #495057;
		vertical-align: middle;
	}
	.dts-matrix tbody td.center { text-align: center; }
	.dts-matrix tbody tr:hover { background: #fafbfc; }
	.dts-matrix tbody tr.winner { background: linear-gradient(90deg, rgba(20,184,166,.10) 0%, rgba(20,184,166,.02) 100%); }
	.dts-matrix tbody tr.winner td { font-weight: 600; color: #1a1d22; }
	.dts-matrix .name-cell { display: flex; align-items: center; gap: .8rem; }
	.dts-matrix .name-cell .name { font-weight: 700; color: #1a1d22; line-height: 1.15; }
	.dts-matrix .name-cell .pick {
		display: inline-block;
		font-size: .65rem; font-weight: 800; letter-spacing: .08em;
		background: linear-gradient(135deg, #14b8a6 0%, #0f766e 100%);
		color: #fff;
		padding: .15rem .5rem;
		border-radius: 4px;
		margin-left: .35rem;
		text-transform: uppercase;
		vertical-align: middle;
	}
	.dts-stars { color: #14b8a6; font-size: 1rem; letter-spacing: .05em; white-space: nowrap; }
	.dts-stars .empty { color: #dee2e6; }
	.dts-stars .num { color: #6c757d; font-size: .8rem; font-weight: 600; margin-left: .35rem; vertical-align: middle; }
	.dts-matrix-mini-link { color: #0f766e; font-weight: 600; text-decoration: none; font-size: .88rem; }
	.dts-matrix-mini-link:hover { text-decoration: underline; }
	@media (max-width: 992px) {
		.dts-matrix { overflow-x: auto !important; -webkit-overflow-scrolling: touch; border-radius: 0; }
		.dts-matrix table { min-width: 820px; }
	}
	@media (max-width: 575.98px) {
		.dts-matrix thead th, .dts-matrix tbody td { padding: .7rem .85rem; font-size: .82rem; }
		.dts-matrix .name-cell .name { font-size: .9rem; }
	}

	/* ---------------- Criteria cards ---------------- */
	.dts-criteria { background: #fff; padding: 70px 0; border-bottom: 1px solid #e9ecef; }
	.dts-criteria-head { text-align: center; margin-bottom: 2.4rem; }
	.dts-criteria-head h2 { font-weight: 800; letter-spacing: -.015em; color: #1a1d22; }
	.dts-criteria-head .sub { color: #6c757d; max-width: 700px; margin: 0 auto; }
	.dts-criteria-card {
		background: #fff; border-radius: 12px; padding: 1.5rem;
		height: 100%; border: 1px solid #e9ecef;
		transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
	}
	.dts-criteria-card:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(0,0,0,.06); border-color: #99f6e4; }
	.dts-criteria-card .icon {
		width: 48px; height: 48px; border-radius: 10px;
		background: linear-gradient(135deg, #14b8a6 0%, #0f766e 100%);
		color: #fff; display: flex; align-items: center; justify-content: center;
		font-size: 1.4rem; font-weight: 800; margin-bottom: 1rem;
		box-shadow: 0 6px 14px rgba(20,184,166,.25);
	}
	.dts-criteria-card h4 { font-size: 1.05rem; font-weight: 700; margin-bottom: .4rem; color: #1a1d22; }
	.dts-criteria-card p { font-size: .9rem; color: #6c757d; margin: 0; line-height: 1.55; }

	/* ---------------- Pricing decoder ---------------- */
	.dts-pricing { padding: 70px 0; background: #f8f9fa; border-bottom: 1px solid #e9ecef; }
	.dts-pricing-head { text-align: center; margin-bottom: 2.4rem; }
	.dts-pricing-head h2 { font-weight: 800; letter-spacing: -.015em; color: #1a1d22; }
	.dts-pricing-head .sub { color: #6c757d; max-width: 720px; margin: 0 auto; }
	.dts-tier {
		background: #fff;
		border: 1px solid #e9ecef;
		border-top: 4px solid #14b8a6;
		border-radius: 12px;
		padding: 1.6rem;
		height: 100%;
	}
	.dts-tier:nth-child(2) { border-top-color: #0d9488; }
	.dts-tier:nth-child(3) { border-top-color: #0f766e; }
	.dts-tier .tier-label {
		font-size: .68rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;
		color: #0f766e; margin-bottom: .4rem;
	}
	.dts-tier h4 { font-size: 1.15rem; font-weight: 800; color: #1a1d22; margin: 0 0 .35rem; }
	.dts-tier .range {
		font-size: 1.6rem; font-weight: 800; letter-spacing: -.02em;
		color: #0f766e; line-height: 1.1; margin: .25rem 0 .8rem;
	}
	.dts-tier p { font-size: .9rem; color: #495057; line-height: 1.55; margin: 0 0 .5rem; }
	.dts-tier .gotchas {
		font-size: .82rem; color: #6c757d; line-height: 1.5;
		padding-top: .8rem; margin-top: .5rem; border-top: 1px dashed #e9ecef;
	}
	.dts-tier .gotchas strong { color: #1a1d22; }

	/* ---------------- Workflow integration diagram ---------------- */
	.dts-workflow {
		padding: 70px 0;
		background: linear-gradient(180deg, #ffffff 0%, #f0fdfa 100%);
		border-bottom: 1px solid #e9ecef;
	}
	.dts-workflow-head { text-align: center; margin-bottom: 2.5rem; }
	.dts-workflow-head h2 { font-weight: 800; letter-spacing: -.015em; color: #1a1d22; }
	.dts-workflow-head .sub { color: #6c757d; max-width: 720px; margin: 0 auto; }
	.dts-hub {
		position: relative;
		max-width: 720px;
		margin: 0 auto;
		min-height: 380px;
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		grid-template-rows: 1fr 1fr 1fr;
		gap: 1.2rem;
		align-items: center;
		justify-items: center;
	}
	.dts-hub-node {
		background: #fff;
		border: 1px solid #cffafe;
		border-radius: 12px;
		padding: .9rem 1rem;
		min-width: 130px;
		text-align: center;
		box-shadow: 0 6px 14px rgba(13,148,136,.06);
		transition: transform .15s ease, box-shadow .15s ease;
	}
	.dts-hub-node:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(13,148,136,.12); }
	.dts-hub-node .glyph { font-size: 1.4rem; line-height: 1; margin-bottom: .25rem; }
	.dts-hub-node .name { font-size: .82rem; font-weight: 700; color: #0f766e; }
	.dts-hub-node.center {
		background: linear-gradient(135deg, #14b8a6 0%, #0f766e 100%);
		border: 0; color: #fff;
		box-shadow: 0 12px 30px rgba(15,118,110,.32);
		transform: scale(1.1);
	}
	.dts-hub-node.center .name { color: #fff; font-size: .92rem; }
	.dts-hub-node.center .glyph { font-size: 1.6rem; }
	.dts-hub .pos-tl { grid-column: 1; grid-row: 1; }
	.dts-hub .pos-tc { grid-column: 2; grid-row: 1; }
	.dts-hub .pos-tr { grid-column: 3; grid-row: 1; }
	.dts-hub .pos-cl { grid-column: 1; grid-row: 2; }
	.dts-hub .pos-cc { grid-column: 2; grid-row: 2; }
	.dts-hub .pos-cr { grid-column: 3; grid-row: 2; }
	.dts-hub .pos-bl { grid-column: 1; grid-row: 3; }
	.dts-hub .pos-bc { grid-column: 2; grid-row: 3; }
	.dts-hub .pos-br { grid-column: 3; grid-row: 3; }
	.dts-hub-node { position: relative; z-index: 1; }
	@media (max-width: 768px) {
		.dts-hub { grid-template-columns: 1fr 1fr; grid-template-rows: auto; min-height: 0; }
		.dts-hub .pos-tl, .dts-hub .pos-tc, .dts-hub .pos-tr,
		.dts-hub .pos-cl, .dts-hub .pos-cc, .dts-hub .pos-cr,
		.dts-hub .pos-bl, .dts-hub .pos-bc, .dts-hub .pos-br { grid-column: auto; grid-row: auto; }
		.dts-hub-node.center { transform: none; }
	}

	/* ---------------- FAQ ---------------- */
	.dts-faq { padding: 70px 0; background: #fff; }
	.dts-faq-head { text-align: center; margin-bottom: 2.4rem; }
	.dts-faq-head h2 { font-weight: 800; letter-spacing: -.015em; color: #1a1d22; }
	.dts-faq-head .sub { color: #6c757d; max-width: 700px; margin: 0 auto; }
	.dts-faq-list { max-width: 880px; margin: 0 auto; }
	.dts-faq-item {
		background: #fff;
		border: 1px solid #e9ecef;
		border-radius: 12px;
		margin-bottom: .8rem;
		overflow: hidden;
		transition: border-color .15s ease;
	}
	.dts-faq-item:hover { border-color: #99f6e4; }
	.dts-faq-item summary {
		padding: 1.1rem 1.4rem;
		cursor: pointer;
		font-weight: 700; color: #1a1d22; font-size: 1.02rem;
		list-style: none;
		display: flex; align-items: center; justify-content: space-between;
		gap: 1rem;
	}
	.dts-faq-item summary::-webkit-details-marker { display: none; }
	.dts-faq-item summary::after {
		content: "+"; flex-shrink: 0;
		font-size: 1.4rem; font-weight: 700; color: #14b8a6;
		transition: transform .15s ease;
	}
	.dts-faq-item[open] summary::after { content: "−"; }
	.dts-faq-item .body {
		padding: 0 1.4rem 1.2rem;
		color: #495057; font-size: .96rem; line-height: 1.65;
	}
	.dts-faq-item .body a { color: #0f766e; font-weight: 600; }

	/* ---------------- Final NinjaTMS CTA ---------------- */
	.dts-cta-strip {
		background:
			radial-gradient(circle at 18% 18%, rgba(20,184,166,.18) 0%, transparent 38%),
			radial-gradient(circle at 82% 82%, rgba(99,102,241,.12) 0%, transparent 40%),
			linear-gradient(135deg, #07120f 0%, #0d2a25 50%, #122d36 100%);
		color: #f1f3f5;
		padding: 80px 0 90px;
		position: relative; overflow: hidden;
		border-top: 4px solid #14b8a6;
	}
	.dts-cta-strip::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;
	}
	.dts-cta-strip > .container { position: relative; z-index: 1; }
	.dts-cta-strip .pre { font-size: .82rem; text-transform: uppercase; letter-spacing: .14em; color: #5eead4; font-weight: 700; margin-bottom: .8rem; }
	.dts-cta-strip h2 {
		font-size: clamp(2rem, 5vw, 3.4rem); font-weight: 900; letter-spacing: -.025em; line-height: 1;
		margin-bottom: 1rem;
		background: linear-gradient(180deg, #ffffff 0%, #c0c8d0 100%);
		-webkit-background-clip: text; background-clip: text; color: transparent;
	}
	.dts-cta-strip .lead {
		font-size: 1.25rem; opacity: .92; max-width: 720px; margin-bottom: 1.2rem;
	}
	.dts-cta-strip .lead em { color: #5eead4; font-style: normal; font-weight: 600; }
	.dts-cta-strip .body { opacity: .82; max-width: 720px; line-height: 1.65; font-size: 1rem; }
	.dts-cta-bullets {
		display: grid; grid-template-columns: repeat(2, 1fr); gap: .5rem 1.6rem;
		margin: 1.6rem 0 .5rem; max-width: 760px;
		list-style: none; padding: 0;
	}
	.dts-cta-bullets li { display: flex; align-items: flex-start; gap: .55rem; padding: .35rem 0; font-size: .98rem; opacity: .92; }
	.dts-cta-bullets li::before {
		content: "→"; color: #2dd4bf; font-weight: 800; flex-shrink: 0;
	}
	.dts-cta-strip .cta-btn {
		display: inline-block;
		background: linear-gradient(135deg, #14b8a6 0%, #0f766e 100%);
		color: #fff;
		padding: 1.05rem 2.6rem;
		font-size: 1.15rem; font-weight: 800;
		border-radius: 10px; text-decoration: none;
		margin-top: 1.5rem;
		box-shadow: 0 8px 20px rgba(20,184,166,.30);
		transition: transform .15s ease, box-shadow .15s ease;
	}
	.dts-cta-strip .cta-btn:hover { color: #fff; transform: translateY(-2px); box-shadow: 0 14px 30px rgba(20,184,166,.42); }
	.dts-cta-strip .meta { font-size: .9rem; opacity: .65; margin-top: 1rem; }
	@media (max-width: 768px) { .dts-cta-bullets { grid-template-columns: 1fr; } }

	/* CTA right-column animated medallion */
	.dts-cta-medallion {
		position: relative;
		width: 100%; max-width: 360px;
		aspect-ratio: 1 / 1;
		margin: 0 auto;
		display: flex; align-items: center; justify-content: center;
	}
	.dts-cta-medallion .ring {
		position: absolute; inset: 0;
		border-radius: 50%;
		background:
			conic-gradient(from 220deg, #14b8a6 0deg, #5eead4 60deg, #14b8a6 120deg, #0f766e 200deg, #14b8a6 360deg);
		padding: 6px;
		box-shadow:
			0 0 0 1px rgba(20,184,166,.4),
			0 24px 60px rgba(20,184,166,.25),
			inset 0 0 80px rgba(20,184,166,.1);
		animation: dts-ring-spin 30s linear infinite;
	}
	.dts-cta-medallion .ring::before {
		content: "";
		position: absolute; inset: 6px;
		border-radius: 50%;
		background: radial-gradient(circle at 50% 35%, #122d36 0%, #07120f 100%);
	}
	.dts-cta-medallion .inner {
		position: relative; z-index: 1;
		width: 78%; height: 78%;
		border-radius: 50%;
		background: radial-gradient(circle at 50% 35%, #122d36 0%, #07120f 100%);
		border: 2px solid rgba(20,184,166,.4);
		display: flex; flex-direction: column; align-items: center; justify-content: center;
		text-align: center; padding: 1rem;
		box-shadow: inset 0 4px 14px rgba(0,0,0,.5);
	}
	.dts-cta-medallion .star-glyph {
		font-size: 3.6rem; line-height: 1;
		color: #2dd4bf;
		filter: drop-shadow(0 4px 14px rgba(20,184,166,.55));
		margin-bottom: .35rem;
	}
	.dts-cta-medallion .score {
		font-size: 2.4rem; font-weight: 900;
		color: #fff; letter-spacing: -.03em; line-height: 1;
		font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
	}
	.dts-cta-medallion .score sup { font-size: .9rem; font-weight: 600; opacity: .55; vertical-align: super; margin-left: .15rem; }
	.dts-cta-medallion .stars-row { color: #2dd4bf; font-size: .82rem; letter-spacing: .12em; margin: .5rem 0 .25rem; }
	.dts-cta-medallion .label-top {
		position: absolute;
		top: .9rem; left: 50%; transform: translateX(-50%);
		font-size: .58rem; font-weight: 800; letter-spacing: .22em; text-transform: uppercase;
		color: #2dd4bf; opacity: .9;
	}
	.dts-cta-medallion .label-bottom {
		position: absolute;
		bottom: .9rem; left: 50%; transform: translateX(-50%);
		font-size: .58rem; font-weight: 800; letter-spacing: .22em; text-transform: uppercase;
		color: #2dd4bf; opacity: .9;
	}
	.dts-cta-medallion .pick-band {
		font-size: .68rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;
		color: #5eead4;
		margin-top: .35rem;
	}
	.dts-cta-medallion .ribbon {
		position: absolute; bottom: -14px; left: 50%; transform: translateX(-50%);
		background: linear-gradient(135deg, #14b8a6 0%, #0f766e 100%);
		color: #fff;
		font-size: .72rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase;
		padding: .5rem 1.4rem;
		border-radius: 6px;
		white-space: nowrap;
		box-shadow: 0 8px 18px rgba(20,184,166,.35);
		z-index: 2;
	}
	@keyframes dts-ring-spin { to { transform: rotate(360deg); } }
	@media (max-width: 991px) {
		.dts-cta-medallion { margin-top: 3rem; max-width: 280px; }
	}

	/* ---------------- "Honest framing" callouts inside sections ---------------- */
	.dts-note {
		background: #fffbeb;
		border: 1px solid #fde68a;
		border-left: 3px solid #f59e0b;
		border-radius: 8px;
		padding: 1rem 1.2rem;
		margin-top: 1.4rem;
		font-size: .92rem;
		color: #78350f;
		line-height: 1.55;
	}
	.dts-note strong { color: #78350f; }

	
