/* ============================================================
   WP Quiz Stack — Vendor public styles
   Editorial aesthetic, matched to the sales page.
   Fraunces + DM Sans + JetBrains Mono.
============================================================ */

/* ============================================================
   TOKENS + RESET
============================================================ */
.wpqsv-page,
.wpqsv-page * {
	box-sizing: border-box;
}

.wpqsv-page {
	--ink:        #0a0a0a;
	--paper:      #f7f5ee;
	--paper-2:    #efece2;
	--paper-3:    #faf8f1;
	--muted:      #3a3833;
	--quiet:      #6f6c64;
	--rule:       #1a1a1a;
	--saffron:    #e7660d;
	--saffron-soft: #fbe9d4;
	--plum:       #3b2456;
	--display:    'Fraunces', Georgia, serif;
	--body:       'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
	--mono:       'JetBrains Mono', ui-monospace, Menlo, monospace;
	--radius:     14px;

	font-family: var(--body);
	color: var(--ink);
	line-height: 1.6;
	font-size: 17px;
	max-width: 1100px;
	margin: 0 auto;
	padding: 32px 24px;
}

.wpqsv-page h1, .wpqsv-page h2, .wpqsv-page h3, .wpqsv-page h4 {
	font-family: var(--display);
	font-weight: 500;
	letter-spacing: -0.01em;
	line-height: 1.15;
	margin: 0;
}
.wpqsv-page p { margin: 0; }

/* ============================================================
   CARDS (basic shell, used by login/register/dashboard/checkout)
============================================================ */
.wpqsv-card {
	background: #fff;
	border: 1px solid #e6e3dc;
	border-radius: var(--radius);
	padding: 36px 32px;
	box-shadow: 0 1px 2px rgba(10,10,10,0.03), 0 12px 32px -20px rgba(10,10,10,0.1);
	position: relative;
}
.wpqsv-card::before {
	content: ''; position: absolute;
	top: 0; left: 0; right: 0; height: 3px;
	background: var(--saffron);
	border-radius: var(--radius) var(--radius) 0 0;
}
.wpqsv-card h2 { font-size: 28px; margin-bottom: 6px; }
.wpqsv-card h3 { font-size: 22px; margin-bottom: 6px; }
.wpqsv-card .wpqsv-sub {
	font-family: var(--display);
	font-style: italic;
	color: var(--muted);
	font-size: 16px;
	margin-bottom: 24px;
}

/* ============================================================
   TWO-COLUMN LAYOUT (form + sidebar of "why buy")
============================================================ */
.wpqsv-two-col {
	display: grid;
	grid-template-columns: 7fr 5fr;
	gap: 40px;
	align-items: start;
}
@media (max-width: 880px) {
	.wpqsv-two-col { grid-template-columns: 1fr; }
}

.wpqsv-sidebar {
	background: var(--paper-3);
	border-radius: var(--radius);
	padding: 32px 28px;
	border: 1px solid var(--paper-2);
}
.wpqsv-sidebar .wpqsv-eyebrow {
	font-family: var(--mono);
	font-size: 11px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--saffron);
	margin-bottom: 14px;
	font-weight: 500;
}
.wpqsv-sidebar h3 {
	font-size: 24px;
	margin-bottom: 18px;
	line-height: 1.15;
}
.wpqsv-sidebar h3 em { font-style: italic; color: var(--saffron); }
.wpqsv-sidebar ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.wpqsv-sidebar li {
	padding: 10px 0;
	border-bottom: 1px dashed #d2cebf;
	display: flex;
	gap: 12px;
	font-size: 15.5px;
	color: var(--muted);
	line-height: 1.5;
}
.wpqsv-sidebar li:last-child { border-bottom: none; }
.wpqsv-sidebar li::before {
	content: '→';
	color: var(--saffron);
	font-family: var(--display);
	flex-shrink: 0;
}
.wpqsv-sidebar li strong { color: var(--ink); font-weight: 600; }

.wpqsv-sidebar .wpqsv-sidebar-foot {
	margin-top: 20px;
	padding-top: 18px;
	border-top: 1px solid #d2cebf;
	font-style: italic;
	color: var(--quiet);
	font-size: 14px;
	font-family: var(--display);
}

/* ============================================================
   FORMS
============================================================ */
.wpqsv-form { display: flex; flex-direction: column; gap: 16px; margin-top: 8px; }
.wpqsv-form label {
	display: flex; flex-direction: column;
	font-size: 13px; font-weight: 500;
	color: var(--muted);
	gap: 6px;
}
.wpqsv-form label.wpqsv-inline {
	flex-direction: row; align-items: center; gap: 8px;
	font-weight: 400; color: var(--muted);
}
.wpqsv-form input[type=text],
.wpqsv-form input[type=email],
.wpqsv-form input[type=password] {
	border: 1px solid #cfccbf;
	border-radius: 8px;
	padding: 12px 14px;
	font-size: 16px;
	font-family: inherit;
	background: #fff;
	color: var(--ink);
	transition: border-color 0.2s;
}
.wpqsv-form input:focus {
	outline: 2px solid var(--saffron);
	outline-offset: 1px;
	border-color: var(--ink);
}

/* ============================================================
   BUTTONS
============================================================ */
.wpqsv-btn {
	display: inline-flex; align-items: center; justify-content: center;
	gap: 8px;
	background: var(--ink);
	color: var(--paper);
	border: 0;
	border-radius: 100px;
	padding: 14px 26px;
	font: 600 14px/1 var(--body);
	letter-spacing: 0.02em;
	text-decoration: none;
	cursor: pointer;
	transition: transform 0.15s, background 0.2s, color 0.2s, box-shadow 0.2s;
	margin-top: 8px;
}
.wpqsv-btn:hover {
	transform: translateY(-2px);
	background: var(--saffron);
	color: var(--ink);
	box-shadow: 0 16px 32px -14px rgba(231,102,13,0.45);
}
.wpqsv-btn-ghost {
	background: transparent;
	color: var(--muted);
	border: 1px solid var(--muted);
	border-radius: 100px;
	padding: 10px 18px;
	font: 500 13px/1 var(--body);
	cursor: pointer;
	transition: background 0.2s, color 0.2s;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}
.wpqsv-btn-ghost:hover { background: var(--ink); color: var(--paper); }

/* ============================================================
   META TEXT + BANNERS
============================================================ */
.wpqsv-meta { margin-top: 18px; font-size: 14px; color: var(--quiet); }
.wpqsv-meta a {
	color: var(--saffron); text-decoration: none;
	border-bottom: 1px solid currentColor; padding-bottom: 1px;
}
.wpqsv-meta a:hover { color: var(--ink); }

.wpqsv-banner {
	padding: 14px 18px;
	border-radius: 8px;
	font-size: 15px;
	margin-bottom: 18px;
	border-left: 3px solid;
}
.wpqsv-banner-success { background: #e7f3ec; color: #1f4d2c; border-color: #1f7a3e; }
.wpqsv-banner-error,
.wpqsv-banner-failed   { background: #fdecec; color: #7a1f1f; border-color: #b91c1c; }
.wpqsv-banner-info     { background: #fff7e6; color: #6b4500; border-color: var(--saffron); }
.wpqsv-banner-cancelled{ background: #f4f1ea; color: var(--muted); border-color: var(--quiet); }

/* ============================================================
   CHECKOUT
============================================================ */
.wpqsv-price-box {
	background: var(--paper-3);
	border: 1px dashed #cfccbf;
	border-radius: 10px;
	padding: 28px;
	text-align: center;
	margin: 0 0 24px;
}
.wpqsv-price-main {
	font-family: var(--display);
	font-size: 56px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: -0.03em;
}
.wpqsv-price-sub {
	font-family: var(--display);
	font-style: italic;
	color: var(--muted);
	font-size: 16px;
	margin-top: 10px;
}
.wpqsv-gateways {
	border: 0; padding: 0;
	display: flex; flex-direction: column;
	gap: 12px;
}
.wpqsv-gateways legend {
	font-size: 12px;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: var(--muted);
	margin-bottom: 12px;
	font-weight: 500;
}
.wpqsv-gateway {
	display: flex; gap: 14px; align-items: center;
	border: 1px solid #cfccbf;
	border-radius: 10px;
	padding: 14px 16px;
	cursor: pointer;
	transition: border-color 0.2s, background 0.2s;
}
.wpqsv-gateway:hover { border-color: var(--ink); }
.wpqsv-gateway:has(input:checked) { border-color: var(--ink); background: var(--paper-3); }
.wpqsv-gateway-body { display: flex; flex-direction: column; gap: 4px; }
.wpqsv-gateway-body strong { font-size: 15px; }
.wpqsv-gateway-body small { font-size: 13px; color: var(--muted); }

/* ============================================================
   DASHBOARD
============================================================ */
.wpqsv-dash-head {
	display: flex; justify-content: space-between; align-items: flex-start;
	gap: 24px; margin-bottom: 32px;
}
.wpqsv-dash-head h1 {
	font-size: 44px;
	font-weight: 400;
	letter-spacing: -0.02em;
	line-height: 1.05;
}
.wpqsv-dash-head h1 em { font-style: italic; color: var(--saffron); }
.wpqsv-dash-head .wpqsv-sub {
	font-family: var(--display);
	font-style: italic;
	color: var(--muted);
	margin: 6px 0 0;
	font-size: 16px;
}

.wpqsv-dash-grid {
	display: grid;
	grid-template-columns: 7fr 5fr;
	gap: 28px;
}
@media (max-width: 880px) { .wpqsv-dash-grid { grid-template-columns: 1fr; } }
.wpqsv-dash-grid > div { display: flex; flex-direction: column; gap: 24px; }

.wpqsv-license-card { padding: 32px 28px; }
.wpqsv-license-card .wpqsv-license-meta {
	display: flex; justify-content: space-between; align-items: center;
	margin-bottom: 18px;
}
.wpqsv-license-status {
	font-family: var(--mono);
	letter-spacing: 0.18em;
	padding: 5px 12px; border-radius: 100px;
	font-weight: 600; font-size: 11px;
}
.wpqsv-license-card.is-active .wpqsv-license-status { background: #e7f3ec; color: #1f7a3e; }
.wpqsv-license-card.is-inactive .wpqsv-license-status { background: #fdecec; color: #b91c1c; }
.wpqsv-license-expiry {
	color: var(--muted);
	font-size: 14px;
	font-family: var(--display);
	font-style: italic;
}
.wpqsv-license-key {
	display: block;
	font-family: var(--mono);
	font-size: 18px;
	background: var(--paper-3);
	border: 1px solid #cfccbf;
	border-radius: 8px;
	padding: 16px 18px;
	margin: 12px 0 14px;
	color: var(--ink);
	user-select: all;
	letter-spacing: 0.02em;
}

.wpqsv-renewal-callout {
	background: #fff7e6;
	border-radius: 10px;
	border-left: 3px solid var(--saffron);
	padding: 14px 18px;
	margin: 8px 0 14px;
	font-size: 14.5px;
	color: var(--muted);
}
.wpqsv-renewal-callout strong { color: var(--ink); }

.wpqsv-checklist { display: flex; flex-direction: column; gap: 12px; margin-top: 12px; }
.wpqsv-checklist-item {
	display: grid;
	grid-template-columns: 32px 1fr auto;
	gap: 14px; align-items: center;
	padding: 14px 16px;
	background: var(--paper-3);
	border: 1px solid var(--paper-2);
	border-radius: 10px;
}
.wpqsv-checklist-item.done { opacity: 0.7; }
.wpqsv-checklist-item.done .wpqsv-checklist-text { text-decoration: line-through; }
.wpqsv-checklist-circle {
	width: 28px; height: 28px;
	border: 1.5px solid #cfccbf;
	border-radius: 50%;
	display: grid; place-items: center;
	font-family: var(--display);
	font-weight: 500; font-size: 13px;
	color: var(--quiet);
	background: #fff;
}
.wpqsv-checklist-item.done .wpqsv-checklist-circle {
	background: var(--saffron); color: #fff; border-color: var(--saffron);
}
.wpqsv-checklist-text { font-size: 15px; font-weight: 500; color: var(--ink); }
.wpqsv-checklist-text small {
	display: block; font-weight: 400; color: var(--quiet);
	font-size: 13px; margin-top: 2px;
}
.wpqsv-checklist-action {
	font-size: 13px; color: var(--saffron);
	text-decoration: none;
	border-bottom: 1px solid currentColor;
	padding-bottom: 1px; white-space: nowrap;
}
.wpqsv-checklist-action:hover { color: var(--ink); border-color: var(--ink); }

/* Tables */
.wpqsv-table {
	width: 100%; border-collapse: collapse; font-size: 14px;
}
.wpqsv-table th, .wpqsv-table td {
	text-align: left; padding: 12px 8px;
	border-bottom: 1px solid #efece2;
}
.wpqsv-table th {
	font-family: var(--mono);
	font-size: 10.5px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--muted);
	font-weight: 500;
}
.wpqsv-table code {
	font-family: var(--mono);
	font-size: 12.5px;
	background: var(--paper-3);
	padding: 2px 8px;
	border-radius: 4px;
}

.wpqsv-pill {
	display: inline-block;
	padding: 3px 12px;
	border-radius: 100px;
	font-family: var(--mono);
	font-size: 10.5px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-weight: 600;
}
.wpqsv-pill-paid    { background: #e7f3ec; color: #1f7a3e; }
.wpqsv-pill-pending { background: #fff7e6; color: #6b4500; }
.wpqsv-pill-failed  { background: #fdecec; color: #b91c1c; }

.wpqsv-resources ul { list-style: none; padding: 0; margin: 12px 0 0; }
.wpqsv-resources li {
	padding: 10px 0; display: flex; gap: 12px;
	border-bottom: 1px dashed #d2cebf;
}
.wpqsv-resources li:last-child { border-bottom: none; }
.wpqsv-resources li::before {
	content: '→'; color: var(--saffron);
	font-family: var(--display); flex-shrink: 0;
}
.wpqsv-resources a {
	color: var(--ink); text-decoration: none;
	border-bottom: 1px solid #cfccbf;
}
.wpqsv-resources a:hover { color: var(--saffron); border-color: var(--saffron); }

.wpqsv-whatsnew-version {
	font-family: var(--mono);
	font-size: 12px;
	background: var(--ink); color: var(--paper);
	padding: 4px 10px; border-radius: 100px;
	letter-spacing: 0.08em;
	display: inline-block; margin-bottom: 12px;
}
.wpqsv-whatsnew-body { font-size: 14.5px; color: var(--muted); line-height: 1.6; }
.wpqsv-whatsnew-body p { margin: 0 0 10px; }

/* ============================================================
   DEMOS GALLERY (public)
============================================================ */
.wpqsv-demos { padding: 60px 0 40px; }
.wpqsv-demos-head { text-align: center; margin-bottom: 48px; }
.wpqsv-demos-eyebrow {
	font-family: var(--mono);
	font-size: 11px;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--muted);
	margin-bottom: 16px;
}
.wpqsv-demos-title {
	font-family: var(--display);
	font-weight: 400;
	font-size: clamp(36px, 5.5vw, 64px);
	line-height: 1.05;
	letter-spacing: -0.025em;
	max-width: 20ch;
	margin: 0 auto 16px;
}
.wpqsv-demos-title em { font-style: italic; color: var(--saffron); }
.wpqsv-demos-sub {
	font-family: var(--display);
	font-style: italic;
	font-size: 20px;
	color: var(--muted);
	max-width: 52ch;
	margin: 0 auto;
	line-height: 1.4;
}
.wpqsv-demos-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 24px;
	margin: 48px 0;
}
@media (max-width: 720px) { .wpqsv-demos-grid { grid-template-columns: 1fr; } }

.wpqsv-demo-card {
	background: #fff;
	border: 1px solid #e6e3dc;
	border-radius: var(--radius);
	padding: 32px 28px;
	display: flex;
	flex-direction: column;
	gap: 12px;
	position: relative;
	transition: transform 0.2s, box-shadow 0.2s;
}
.wpqsv-demo-card::before {
	content: ''; position: absolute;
	top: 0; left: 0;
	width: 56px; height: 3px;
	background: var(--saffron);
}
.wpqsv-demo-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 20px 40px -20px rgba(10,10,10,0.18);
}
.wpqsv-demo-industry {
	font-family: var(--mono);
	font-size: 11px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--saffron);
	font-weight: 500;
}
.wpqsv-demo-card-title {
	font-family: var(--display);
	font-size: 26px;
	font-weight: 500;
	line-height: 1.15;
	letter-spacing: -0.01em;
	margin: 0;
}
.wpqsv-demo-intro {
	font-size: 15px;
	color: var(--muted);
	line-height: 1.55;
}
.wpqsv-demo-meta {
	display: flex;
	gap: 18px;
	font-size: 12px;
	color: var(--quiet);
	font-family: var(--mono);
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
.wpqsv-demo-meta span::before {
	content: '·';
	color: var(--saffron);
	font-weight: 700;
	margin-right: 6px;
}

.wpqsv-demos-cta {
	background: var(--ink);
	color: var(--paper);
	padding: 48px 36px;
	border-radius: var(--radius);
	text-align: center;
	margin: 48px 0 0;
}
.wpqsv-demos-cta h3 {
	font-family: var(--display);
	font-size: 36px;
	margin-bottom: 12px;
	color: var(--paper);
}
.wpqsv-demos-cta p {
	font-size: 16px;
	color: rgba(247,245,238,0.78);
	max-width: 52ch;
	margin: 0 auto 20px;
}
.wpqsv-demos-cta .wpqsv-btn { background: var(--saffron); color: var(--ink); }
.wpqsv-demos-cta .wpqsv-btn:hover { background: var(--paper); }

/* ============================================================
   DEMO PLAYER (lightweight inline player)
============================================================ */
.wpqsv-demo-player-mount { margin-top: 16px; }
.wpqsv-dp {
	background: var(--paper-3);
	border: 1px solid #e6e3dc;
	border-radius: 12px;
	padding: 24px 22px;
	margin-top: 16px;
}
.wpqsv-dp-eyebrow {
	font-family: var(--mono);
	font-size: 10.5px;
	letter-spacing: 0.2em;
	color: var(--saffron);
	font-weight: 500;
	margin-bottom: 12px;
}
.wpqsv-dp-intro h3 {
	font-family: var(--display);
	font-size: 24px;
	font-weight: 500;
	margin: 0 0 10px;
	line-height: 1.15;
}
.wpqsv-dp-intro p {
	color: var(--muted);
	margin: 0 0 16px;
	font-size: 15px;
}
.wpqsv-dp-question {
	font-family: var(--display);
	font-size: 22px;
	font-weight: 500;
	margin: 0 0 20px;
	line-height: 1.2;
	letter-spacing: -0.01em;
}
.wpqsv-dp-progress { margin-bottom: 18px; }
.wpqsv-dp-progress-meta {
	display: flex; justify-content: space-between;
	font-family: var(--mono);
	font-size: 10.5px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--quiet);
	margin-bottom: 8px;
}
.wpqsv-dp-progress-bar { height: 2px; background: #e6e3dc; }
.wpqsv-dp-progress-fill { height: 100%; background: var(--ink); transition: width 0.4s; }
.wpqsv-dp-answers { display: flex; flex-direction: column; gap: 8px; }
.wpqsv-dp-answer {
	display: flex; align-items: center; gap: 12px;
	padding: 12px 14px;
	background: #fff;
	border: 1px solid #e6e3dc;
	border-radius: 10px;
	font-family: inherit;
	font-size: 15px;
	color: var(--ink);
	cursor: pointer;
	text-align: left;
	width: 100%;
	transition: border-color 0.18s, transform 0.18s, box-shadow 0.18s;
}
.wpqsv-dp-answer:hover { border-color: var(--ink); transform: translateY(-1px); }
.wpqsv-dp-answer.is-correct { border-color: #1f7a3e; background: #e7f3ec; }
.wpqsv-dp-answer.is-wrong { border-color: #b91c1c; background: #fdecec; }
.wpqsv-dp-answer.is-dim { opacity: 0.45; }
.wpqsv-dp-badge {
	width: 22px; height: 22px;
	border: 1.5px solid #cfccbf;
	border-radius: 50%;
	display: grid; place-items: center;
	font-family: var(--display);
	font-size: 12px;
	color: var(--quiet);
	font-weight: 500;
	flex-shrink: 0;
}
.wpqsv-dp-answer.is-correct .wpqsv-dp-badge { background: #1f7a3e; border-color: #1f7a3e; color: #fff; }
.wpqsv-dp-answer.is-wrong .wpqsv-dp-badge { background: #b91c1c; border-color: #b91c1c; color: #fff; }
.wpqsv-dp-feedback {
	margin: 14px 0;
	padding: 14px 16px;
	background: #fff;
	border: 1px solid #e6e3dc;
	border-radius: 8px;
	font-size: 14.5px;
	color: var(--muted);
}
.wpqsv-dp-feedback strong { color: var(--ink); display: block; margin-bottom: 4px; }
.wpqsv-dp-feedback p { margin: 0; }
.wpqsv-dp-flip-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}
@media (min-width: 600px) { .wpqsv-dp-flip-grid { grid-template-columns: 1fr 1fr; } }
.wpqsv-dp-flip {
	background: #fff;
	border: 1px solid #e6e3dc;
	border-radius: 10px;
	padding: 18px 20px;
	min-height: 80px;
	cursor: pointer;
	transition: background 0.3s, border-color 0.2s;
}
.wpqsv-dp-flip:hover { border-color: var(--ink); }
.wpqsv-dp-flip.is-flipped { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.wpqsv-dp-flip-num {
	font-family: var(--mono);
	font-size: 10.5px;
	letter-spacing: 0.18em;
	color: var(--saffron);
	margin-bottom: 6px;
}
.wpqsv-dp-flip-face {
	font-family: var(--display);
	font-size: 17px;
	font-weight: 500;
	line-height: 1.3;
}
.wpqsv-dp-list { display: flex; flex-direction: column; gap: 10px; }
.wpqsv-dp-list-item {
	display: grid;
	grid-template-columns: 56px 1fr;
	gap: 16px;
	align-items: center;
	padding: 12px 16px;
	background: #fff;
	border: 1px solid #e6e3dc;
	border-radius: 10px;
}
.wpqsv-dp-list-num {
	font-family: var(--display);
	font-style: italic;
	font-size: 36px;
	line-height: 1;
	font-weight: 400;
	color: var(--saffron);
	letter-spacing: -0.04em;
}
.wpqsv-dp-list-body h4 { font-family: var(--display); font-size: 17px; font-weight: 500; margin: 0 0 4px; }
.wpqsv-dp-list-body p { font-size: 13.5px; color: var(--muted); margin: 0; }
.wpqsv-dp-spinner-stage { text-align: center; padding: 24px 0; }
.wpqsv-dp-spinner {
	width: 80px; height: 80px;
	border: 3px solid var(--paper-2);
	border-top-color: var(--saffron);
	border-radius: 50%;
	margin: 0 auto 16px;
	animation: wpqsv-dp-spin 0.9s linear infinite;
}
@keyframes wpqsv-dp-spin { to { transform: rotate(360deg); } }
.wpqsv-dp-unsupported {
	background: #fff;
	border: 1px dashed #cfccbf;
	border-radius: 10px;
	padding: 24px;
	text-align: center;
}
.wpqsv-dp-unsupported h4 {
	font-family: var(--display);
	font-size: 18px;
	margin: 0 0 10px;
	color: var(--ink);
}
.wpqsv-dp-unsupported p {
	color: var(--muted);
	font-size: 14.5px;
	margin: 0 auto 16px;
	max-width: 48ch;
}
.wpqsv-dp-score {
	font-family: var(--display);
	font-size: 56px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: -0.03em;
	margin: 8px 0;
}
.wpqsv-dp-result h3 {
	font-family: var(--display);
	font-size: 26px;
	font-weight: 500;
	margin: 0 0 6px;
	line-height: 1.15;
}
.wpqsv-dp-result-sub {
	font-family: var(--display);
	font-style: italic;
	color: var(--muted);
	margin: 0 0 12px;
	font-size: 17px;
}
.wpqsv-dp-result-desc {
	color: var(--muted);
	font-size: 14.5px;
	margin: 0 0 16px;
}
.wpqsv-dp-cta {
	background: var(--paper);
	border-radius: 10px;
	padding: 18px 20px;
	margin: 18px 0;
	border-left: 3px solid var(--saffron);
}
.wpqsv-dp-cta p {
	margin: 0 0 14px;
	font-size: 14.5px;
	color: var(--muted);
}
.wpqsv-dp-cta strong { color: var(--ink); }
.wpqsv-demos-empty {
	text-align: center;
	padding: 40px;
	color: var(--muted);
	font-style: italic;
	font-family: var(--display);
}
.wpqsv-single-demo h2 {
	font-family: var(--display);
	font-size: 32px;
	font-weight: 500;
	letter-spacing: -0.02em;
	margin: 0 0 24px;
}
