/* FR Motors — blocs d'articles (site + éditeur) */
.frm-intro { font-size: 1.25em; line-height: 1.6; color: #0b0b0c; font-weight: 500; }

.frm-label { font-family: "Open Sans", sans-serif; font-size: 12px !important; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #DC425E; margin: 0 0 10px !important; }

/* Verdict */
.frm-verdict { background: #000; color: rgba(255, 255, 255, .72); border-radius: 24px; padding: 36px 40px !important; margin: 2.4em 0 !important; position: relative; overflow: hidden; }
.frm-verdict::after { content: ""; position: absolute; right: -40px; top: -40px; width: 200px; height: 200px; background: radial-gradient(closest-side, rgba(220, 66, 94, .45), transparent); pointer-events: none; }
.frm-verdict h3, .frm-verdict .wp-block-heading { color: #fff !important; font-size: 30px !important; line-height: 1.1 !important; margin: 0 0 12px !important; }
.frm-verdict p { margin: 0 !important; }
.frm-verdict .frm-label { margin-bottom: 12px !important; }

/* Pour / contre */
.frm-proscons { gap: 16px !important; margin: 2.2em 0 !important; }
.frm-pros, .frm-cons { border-radius: 20px; padding: 24px 26px !important; }
.frm-pros { background: #faf3f1; border: 1px solid #f0e0dc; }
.frm-cons { background: #f6f6f7; border: 1px solid #ebebed; }
.frm-cons .frm-label { color: #5e5e66; }
.frm-proscons ul { list-style: none; padding: 0 !important; margin: 0 !important; }
.frm-proscons li { position: relative; padding-left: 28px; margin: 0 0 10px !important; font-size: 16.5px; line-height: 1.5; }
.frm-proscons li::before { position: absolute; left: 0; top: 2px; width: 19px; height: 19px; border-radius: 50%; display: grid; place-items: center; font-size: 11px; font-weight: 700; }
.frm-pros li::before { content: "✓"; background: #DC425E; color: #fff; }
.frm-cons li::before { content: "–"; background: #fff; color: #5e5e66; border: 1px solid #e2e2e5; }

/* Fiche technique */
.frm-specs { border: 1px solid #ebebed; border-radius: 22px; padding: 28px 30px 18px !important; margin: 2.2em 0 !important; background: #fff; }
.frm-specs h3, .frm-specs .wp-block-heading { font-size: 26px !important; margin: 0 0 14px !important; }
.frm-specs .wp-block-table { margin: 0 !important; }
.frm-specs table { width: 100%; border-collapse: collapse; font-size: 16px; border: 0 !important; }
.frm-specs td { padding: 13px 0 !important; border: 0 !important; border-top: 1px solid #ebebed !important; background: none !important; }
.frm-specs td:first-child { color: #5e5e66; width: 45%; }
.frm-specs td:last-child { font-weight: 600; color: #000; text-align: right; }

/* Chiffres clés */
.frm-stats { gap: 12px !important; margin: 2.2em 0 !important; }
.frm-stats > .wp-block-column { background: #f6f6f7; border: 1px solid #ebebed; border-radius: 18px; padding: 22px !important; }
.frm-stat-value { font-family: "League Spartan", sans-serif; font-weight: 700; font-size: 40px !important; line-height: 1 !important; letter-spacing: -0.03em; color: #000; margin: 0 0 8px !important; }
.frm-stats > .wp-block-column:nth-child(2) .frm-stat-value { color: #DC425E; }
.frm-stat-label { font-size: 14.5px !important; line-height: 1.45 !important; color: #5e5e66; margin: 0 !important; }

/* Encadrés */
.frm-callout { border-radius: 18px; padding: 22px 26px !important; margin: 2em 0 !important; border-left: 4px solid; }
.frm-callout p { margin: 0 !important; }
.frm-callout .frm-label { margin-bottom: 8px !important; }
.frm-callout--warn { background: #fdf1f3; border-color: #DC425E; }
.frm-callout--tip { background: #faf3f1; border-color: #000; }
.frm-callout--tip .frm-label { color: #000; }

/* Punchline */
.frm-punch { font-family: "League Spartan", sans-serif; font-weight: 700; font-size: clamp(30px, 4vw, 44px) !important; line-height: 1.02 !important; letter-spacing: -0.03em; color: #000; margin: 1.6em 0 !important; }
.frm-punch strong { color: #DC425E; font-weight: 700; }

/* Appel à l'action */
.frm-cta-box { background: #000 radial-gradient(70% 120% at 100% 0%, rgba(220, 66, 94, .4), transparent 60%); color: rgba(255, 255, 255, .7); border-radius: 24px; padding: 36px 40px !important; margin: 2.4em 0 !important; }
.frm-cta-box h3, .frm-cta-box .wp-block-heading { color: #fff !important; font-size: 30px !important; margin: 0 0 10px !important; }
.frm-cta-box p { margin: 0 0 22px !important; }
.frm-cta-box .wp-block-button__link { background: #DC425E !important; color: #fff !important; border-radius: 999px !important; padding: 14px 26px !important; font-weight: 600; font-size: 15px; text-decoration: none !important; }
.frm-cta-box .wp-block-button__link:hover { background: #c12f4b !important; }

@media (max-width: 600px) {
	.frm-verdict, .frm-cta-box { padding: 28px 24px !important; }
	.frm-verdict h3, .frm-cta-box h3 { font-size: 25px !important; }
	.frm-stats { flex-direction: column; }
}
