/* ---- Published / Last updated dates ---- */
.rapyder-dates{display:flex;flex-wrap:wrap;align-items:center;gap:8px;
	font-family:inherit;font-size:14px;line-height:1.4;margin:10px 0;color:#fff}
.rapyder-dates__item{display:inline-flex;align-items:center;gap:6px}
.rapyder-dates__label{font-weight:600}
.rapyder-dates svg{width:15px;height:15px;flex:none;fill:none;stroke:currentColor;
	stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.rapyder-dates time{white-space:nowrap}
.rapyder-dates__sep{opacity:.55}

/* ---- FAQ accordion ---- */
.rap-faq{max-width:1180px;margin:40px auto;padding:0 20px;font-family:inherit;text-align:center}
.rap-faq__pill{display:inline-block;background:#ff2029;color:#fff;font-size:13px;font-weight:600;
	padding:5px 14px;border-radius:999px;letter-spacing:.2px}
.rap-faq__title{font-size:44px;line-height:1.1;font-weight:800;color:#111;margin:14px 0 34px}
.rap-faq__list{text-align:left}
.rap-faq .faq-item{background:#f6f6f6;border-radius:12px;margin-bottom:16px;overflow:hidden;
	transition:background .2s ease}
.rap-faq .faq-item.is-open{background:#f1f1f1}
.rap-faq .faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;
	background:none;border:0;cursor:pointer;text-align:left;padding:20px 26px;
	font-size:17px;font-weight:700;color:#111;font-family:inherit;line-height:1.35}
.rap-faq .faq-ic{width:22px;height:22px;flex:none;fill:none;stroke:#111;stroke-width:2.4;
	stroke-linecap:round;stroke-linejoin:round;transition:transform .25s ease}
.rap-faq .faq-item.is-open .faq-ic{transform:rotate(180deg)}
.rap-faq .faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.rap-faq .faq-a p{margin:0;padding:0 26px 22px;font-size:17px;line-height:1.6;color:#222;font-weight:400}

/* ---- Expert reviewed by box ---- */
.rapyder-review{display:inline-block;padding:16px 24px;background:#fff;border:1px solid #ff2029;
	border-left:5px solid #ff2029;border-radius:10px;font-family:inherit;
	box-shadow:0 8px 25px rgba(0,0,0,.08);margin:24px 0}
.rapyder-review span{display:block;color:#ff2029;font-size:13px;font-weight:600;margin-bottom:8px}
.rapyder-review strong{display:block;color:#111;font-size:17px;font-weight:700;margin-bottom:5px}
.rapyder-review strong a{color:#111;text-decoration:none}
.rapyder-review strong a:hover{color:#ff2029;text-decoration:underline}
.rapyder-review p{margin:0;color:#555;font-size:14px}

/* Right-aligned variant — same card, mirrored to sit on the right side
   of its container with the accent bar flipped to match. display:block
   + margin-left:auto is what actually pushes a non-full-width box to the
   right; the original .rapyder-review is inline-block, which margin:auto
   doesn't affect the same way. */
.rapyder-review--right{
	display:block;
	margin-left:auto;
	margin-right:0;
	width:fit-content;
	max-width:100%;
	border-left:none;
	border-right:5px solid #ff2029;
}
.rapyder-review--right span,
.rapyder-review--right strong,
.rapyder-review--right p{
	text-align:right;
}

/* ---- External references ---- */
.rapyder-links{padding:18px 24px;background:#fff;border:1px solid #ff2029;border-left:5px solid #ff2029;
	border-radius:10px;font-family:inherit;box-shadow:0 8px 25px rgba(0,0,0,.08);margin:24px 0}
.rapyder-links span{display:block;color:#ff2029;font-size:13px;font-weight:600;margin-bottom:10px}
.rapyder-links ul{margin:0;padding-left:18px}
.rapyder-links li{margin:0 0 6px}
.rapyder-links a{color:#111;text-decoration:underline;font-size:15px}
.rapyder-links a:hover{color:#ff2029}

@media (max-width:600px){
	.rap-faq__title{font-size:30px}
	.rap-faq .faq-q{font-size:15px;padding:16px 18px}
	.rap-faq .faq-a p{font-size:15px;padding:0 18px 18px}
}

/* ---- Client testimonials ---- */
.rap-testimonials{max-width:1180px;margin:40px auto;padding:0 20px;font-family:inherit}
.rap-testimonials__grid{display:grid;grid-template-columns:repeat(var(--rap-tcols,3),1fr);gap:20px}
.rap-testimonial{position:relative;background:#fff;border:1px solid #eee;border-left:5px solid #ff2029;
	border-radius:10px;padding:26px 24px 22px;box-shadow:0 8px 25px rgba(0,0,0,.06);
	display:flex;flex-direction:column;height:100%}
.rap-testimonial__quote-mark{font-size:42px;line-height:1;color:#ff2029;font-weight:800;margin-bottom:4px}
.rap-testimonial__quote{margin:0 0 18px;font-size:15px;line-height:1.6;color:#333;flex-grow:1}
.rap-testimonial__attribution{border-top:1px solid #f0f0f0;padding-top:12px}
.rap-testimonial__attribution strong{display:block;color:#111;font-size:15px;font-weight:700}
.rap-testimonial__title{display:block;color:#555;font-size:13px;margin-top:2px}
.rap-testimonial__company{display:block;color:#ff2029;font-size:13px;font-weight:600;margin-top:2px}
.rap-testimonials__cta{text-align:center;margin-top:32px}
.rap-testimonials__cta a{display:inline-block;color:#ff2029;font-weight:700;font-size:16px;
	text-decoration:none;border-bottom:2px solid #ff2029;padding-bottom:2px;transition:opacity .2s ease}
.rap-testimonials__cta a:hover{opacity:.75}

@media (max-width:900px){
	.rap-testimonials__grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px){
	.rap-testimonials__grid{grid-template-columns:1fr}
	.rap-testimonial__quote{font-size:14px}
}
