/* Real Vision Events - SEO content blocks (long-form copy + FAQ accordion) */
.rv-content { overflow: hidden; } /* clearfix: contain floated figures */
.rv-content h2 { font-size: 28px; line-height: 38px; font-weight: 700; color: #012546; margin: 8px 0 14px; clear: both; }
.rv-content h3 { font-size: 21px; line-height: 30px; font-weight: 600; color: #012546; margin: 26px 0 10px; clear: both; }
.rv-content p { color: #4d5661; margin-bottom: 14px; text-align: justify; }
.rv-content ul.rv-list { list-style: none; padding: 0; margin: 0 0 18px; }
.rv-content ul.rv-list li { position: relative; padding: 0 0 8px 26px; color: #4d5661; }
.rv-content ul.rv-list li:before { content: "\2713"; position: absolute; left: 0; top: 0; color: #fd226a; font-weight: 700; }
.rv-content a { color: #fd226a; }
.rv-content a:hover { color: #012546; }
.rv-content .rv-figure { float: right; width: 42%; margin: 6px 0 20px 26px; clear: right; }
.rv-content .rv-figure img { width: 100%; height: auto; border-radius: 3px; display: block; }

/* H1 self-link: keep the page-title look, just make it clickable */
h1.title a.rv-h1-link,
.page-title-heading h1.title a.rv-h1-link { color: inherit; text-decoration: none; }
h1.title a.rv-h1-link:hover,
.page-title-heading h1.title a.rv-h1-link:hover { color: inherit; text-decoration: underline; }

/* FAQ block + right-side image */
.rv-faq-layout { display: flex; align-items: flex-start; gap: 26px; margin: 30px 0 10px; }
.rv-faq-layout .rv-faq { flex: 1 1 0%; margin: 0; }
.rv-faq-layout .rv-faq-media { flex: 0 0 32%; max-width: 32%; align-self: stretch; }
.rv-faq-layout .rv-faq-media img { width: 100%; height: 100%; min-height: 260px; object-fit: cover; border-radius: 4px; box-shadow: 0 0 14px rgba(0, 0, 0, .07); }
.rv-faq-layout:not(.has-media) .rv-faq { flex: 1 1 100%; }
.rv-content .rv-cta { background: #012546; color: #fff; padding: 22px 26px; margin: 26px 0 8px; border-radius: 3px; }
.rv-content .rv-cta p { color: #fff; margin: 0 0 6px; text-align: left; }
.rv-content .rv-cta a { color: #fff; font-weight: 700; text-decoration: underline; }
.rv-content .rv-table { width: 100%; border-collapse: collapse; margin: 6px 0 20px; font-size: 14px; }
.rv-content .rv-table th, .rv-content .rv-table td { border: 1px solid #e3e6ea; padding: 9px 12px; vertical-align: top; color: #4d5661; }
.rv-content .rv-table th { background: #f2f4f7; color: #012546; text-align: left; }

.rv-faq { background: #fff; padding: 30px 30px 18px; box-shadow: 0 0 14px rgba(0, 0, 0, .07); }
.rv-faq h2 { font-size: 28px; line-height: 38px; font-weight: 700; color: #012546; margin: 0 0 8px; }
.rv-faq .rv-faq-intro { color: #4d5661; margin-bottom: 18px; }
.rv-faq details { border: 1px solid #e3e6ea; border-radius: 3px; margin-bottom: 10px; background: #fff; }
.rv-faq summary { cursor: pointer; padding: 13px 44px 13px 18px; font-weight: 600; color: #012546; list-style: none; position: relative; line-height: 24px; }
.rv-faq summary::-webkit-details-marker { display: none; }
.rv-faq summary:after { content: "+"; position: absolute; right: 18px; top: 10px; font-size: 22px; color: #fd226a; }
.rv-faq details[open] summary { border-bottom: 1px solid #e3e6ea; }
.rv-faq details[open] summary:after { content: "\2212"; }
.rv-faq .rv-faq-answer { padding: 12px 18px 4px; }
.rv-faq .rv-faq-answer p { color: #4d5661; margin: 0 0 10px; text-align: left; }
.rv-faq .rv-faq-answer a { color: #fd226a; }

@media (max-width: 767px) {
    .rv-content h2, .rv-faq h2 { font-size: 23px; line-height: 32px; }
    .rv-faq { padding: 20px 16px 10px; }
    .rv-content p { text-align: left; }
    .rv-content .rv-table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .rv-content .rv-cta { padding: 18px; }
    .rv-content .rv-figure { float: none; width: 100%; margin: 6px 0 18px; }
    .rv-faq-layout { flex-direction: column; }
    .rv-faq-layout .rv-faq-media { width: 100%; max-width: 100%; order: 2; }
    .rv-faq-layout .rv-faq-media img { width: 100%; height: 220px; min-height: 0; max-height: 220px; }
}

@media (max-width: 991px) and (min-width: 768px) {
    .rv-content .rv-figure { width: 48%; }
}
