/* RFM Reviews thank-you states. Brand by overriding --rfmrev-* in your theme. */
.rfmrev-thanks {
	max-width: 620px;
	margin: 0 auto;
	font-family: var(--rfmrev-font, inherit);
	color: var(--rfmrev-text, #2C353B);
	text-align: center;
}
.rfmrev-title {
	font-family: var(--rfmrev-display-font, inherit);
	font-size: clamp(1.7rem, 4vw, 2.6rem);
	line-height: 1.15;
	margin: 0 0 14px;
	color: var(--rfmrev-text, #2C353B);
}
.rfmrev-body {
	font-size: 1.1rem;
	line-height: 1.6;
	margin: 0 auto 22px;
	max-width: 540px;
}
.rfmrev-soft {
	font-size: 0.95rem;
	opacity: 0.85;
	margin: 18px 0 0;
}
.rfmrev-soft a { color: var(--rfmrev-accent, #A56A3C); }

.rfmrev-copybox {
	background: var(--rfmrev-surface, #FAF8F4);
	border: 1.5px solid var(--rfmrev-border, #ece5d8);
	border-radius: 14px;
	padding: 18px;
	margin: 0 auto 18px;
	max-width: 540px;
	text-align: left;
}
.rfmrev-copylabel {
	display: block;
	font-weight: 600;
	font-size: 0.85rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	opacity: 0.7;
	margin: 0 0 8px;
}
.rfmrev-comment {
	width: 100%;
	min-height: 92px;
	border: 1.5px solid var(--rfmrev-border, #ddd3c2);
	border-radius: 10px;
	padding: 12px 14px;
	font: inherit;
	font-size: 1rem;
	line-height: 1.5;
	background: #fff;
	color: var(--rfmrev-text, #2C353B);
	box-sizing: border-box;
	resize: vertical;
}
.rfmrev-copy {
	margin-top: 12px;
	background: transparent;
	color: var(--rfmrev-accent, #A56A3C);
	border: 1.5px solid var(--rfmrev-accent, #A56A3C);
	border-radius: 10px;
	padding: 10px 18px;
	font: inherit;
	font-weight: 600;
	cursor: pointer;
	transition: background 0.15s, color 0.15s;
}
.rfmrev-copy:hover { background: var(--rfmrev-accent, #A56A3C); color: #fff; }
.rfmrev-copy.is-copied { background: var(--rfmrev-accent, #A56A3C); color: #fff; }

.rfmrev-google-btn {
	display: inline-block;
	background: var(--rfmrev-accent, #A56A3C);
	color: #fff;
	text-decoration: none;
	border-radius: 10px;
	padding: 14px 28px;
	font-weight: 600;
	font-size: 1.05rem;
}
.rfmrev-google-btn:hover { filter: brightness(0.94); color: #fff; }

@media (max-width: 600px) {
	.rfmrev-google-btn { display: block; }
}

/* ============================================================
   Premium review funnel — v0.3.0
   One wrapper, premium out of the gate. A client brands the whole
   funnel by setting a single var: --rfmrev-accent (their brand color).
   ============================================================ */
.rfm-review-funnel {
	--rfmrev-accent: #A56A3C;
	--rfmrev-ink: #2C353B;
	--rfmrev-muted: #5d6168;
	--rfmrev-page: #FAF8F4;
	--rfmrev-surface: #ffffff;
	--rfmrev-border: #ece5d8;
	--rfm-form-rating: var(--rfmrev-accent);
	--rfm-form-rating-empty: #e3dbcc;
	--rfm-form-accent: var(--rfmrev-accent);
	--rfm-form-accent-faint: rgba(44, 53, 59, 0.10);
	padding: 72px 20px 90px;
	background: var(--rfmrev-page);
}
.rfm-review-card {
	max-width: 680px;
	margin: 0 auto;
	background: var(--rfmrev-surface);
	border: 1px solid var(--rfmrev-border);
	border-radius: 18px;
	padding: 50px 46px;
	box-shadow: 0 22px 55px -30px rgba(44, 53, 59, 0.40);
}
.rfm-review-giveaway {
	background: var(--rfmrev-accent);
	color: #fff;
	border-radius: 12px;
	padding: 14px 18px;
	text-align: center;
	font-weight: 600;
	margin: 0 0 26px;
}
.rfm-review-hero { text-align: center; margin-bottom: 32px; }
.rfm-review-title {
	font-family: var(--rfmrev-display-font, 'Barlow Condensed', sans-serif);
	font-weight: 600;
	font-size: clamp(1.9rem, 4.2vw, 2.8rem);
	line-height: 1.08;
	margin: 0 0 14px;
	color: var(--rfmrev-ink);
}
.rfm-review-sub { font-size: 1.08rem; line-height: 1.62; color: var(--rfmrev-muted); margin: 0 auto 10px; max-width: 540px; }
.rfm-review-social { font-size: 0.95rem; color: var(--rfmrev-ink); margin: 8px 0; }
.rfm-review-stars { color: var(--rfmrev-accent); letter-spacing: 2px; }
.rfm-review-trust { font-size: 0.9rem; color: var(--rfmrev-accent); font-weight: 600; letter-spacing: 0.03em; margin-top: 8px; }
.rfm-review-card .rfm-form { max-width: none; }
.rfm-review-card .rfm-form-field { margin-bottom: 22px; }
.rfm-review-card .rfm-form-label { font-size: 0.78rem; letter-spacing: 0.07em; text-transform: uppercase; color: #39434A; font-weight: 600; margin-bottom: 8px; }
.rfm-review-card .rfm-form-field input,
.rfm-review-card .rfm-form-field textarea { border: 1.5px solid #ddd3c2; border-radius: 12px; padding: 15px 16px; background: #fff; font-size: 1rem; color: var(--rfmrev-ink); }
.rfm-review-card .rfm-form-field input:focus,
.rfm-review-card .rfm-form-field textarea:focus { border-color: var(--rfmrev-accent); box-shadow: 0 0 0 3px var(--rfm-form-accent-faint); outline: none; }
.rfm-review-card .rfmf-rating { gap: 18px; }
.rfm-review-card .rfmf-rating-star { font-size: 2.6rem; }
.rfm-review-card .rfmf-rating-readout { color: var(--rfmrev-accent); }
.rfm-review-card .rfm-form-actions { margin-top: 12px; text-align: center; }
.rfm-review-card button.rfm-form-submit {
	background: var(--rfmrev-accent);
	color: #fff;
	border: none;
	border-radius: 10px;
	padding: 16px 46px;
	font-family: var(--rfmrev-display-font, 'Barlow Condensed', sans-serif);
	font-weight: 600;
	font-size: 1.15rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	cursor: pointer;
	transition: filter 0.15s, transform 0.05s;
}
.rfm-review-card button.rfm-form-submit:hover { filter: brightness(0.93); }
.rfm-review-card button.rfm-form-submit:active { transform: scale(0.99); }
.rfm-review-card.rfmrev-thanks { text-align: center; max-width: 680px; }
@media (max-width: 600px) {
	.rfm-review-funnel { padding: 46px 14px 64px; }
	.rfm-review-card { padding: 32px 22px; border-radius: 14px; }
	.rfm-review-card .rfmf-rating-star { font-size: 2.2rem; }
}
