/* Source-matched event pages use the established RegisRide secondary-page components. */
body.rr-event-page .rr-page-hero-intro { max-width:600px; margin:-4px 0 24px; color:rgba(0,0,0,.64); font-size:15.5px; line-height:1.65; font-weight:500; }
body.rr-event-page .rr-event-support { margin:0 0 20px; color:rgba(0,0,0,.64); line-height:1.65; }
body.rr-event-page .rr-event-actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin:22px 0; }
body.rr-event-page .split-widget-wrap { scroll-margin-top:90px; }
body.rr-event-page .rr-seo-section { padding:92px 22px; background:#fff; font-family:Inter,Arial,sans-serif; }
body.rr-event-page .rr-seo-soft { background:#f7f7f7; }
body.rr-event-page .rr-seo-shell { width:min(1180px,100%); margin:0 auto; }
body.rr-event-page .rr-seo-kicker { display:inline-flex; margin-bottom:16px; padding:8px 13px; border:1px solid rgba(0,0,0,.13); border-radius:999px; font-size:11px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
body.rr-event-page .rr-seo-section h2 { margin:0; font-family:'DM Serif Display',serif; font-size:clamp(34px,4.8vw,58px); font-weight:400; line-height:1.02; letter-spacing:-.035em; }
body.rr-event-page .rr-seo-section h3 { letter-spacing:-.025em; }
body.rr-event-page .rr-seo-lead { margin:20px 0 0; color:rgba(0,0,0,.64); font-size:17px; line-height:1.78; }
body.rr-event-page .rr-seo-heading { max-width:820px; margin:0 auto 42px; text-align:center; }
body.rr-event-page .rr-seo-card-grid { display:grid; gap:18px; margin-top:28px; }
body.rr-event-page .rr-grid-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
body.rr-event-page .rr-grid-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
body.rr-event-page .rr-seo-card { padding:28px; border:1px solid rgba(0,0,0,.09); border-radius:24px; background:#fff; box-shadow:0 14px 40px rgba(0,0,0,.045); }
body.rr-event-page .rr-seo-card h3 { margin:0 0 11px; font-size:21px; }
body.rr-event-page .rr-event-step-number { display:grid; width:38px; height:38px; margin-bottom:24px; place-items:center; border-radius:50%; background:#090909; color:#fff; font-size:11px; font-weight:900; }
body.rr-event-page .rr-seo-card p { margin:0; color:rgba(0,0,0,.62); line-height:1.7; }
body.rr-event-page .rr-seo-card .rr-event-capacity { margin-top:12px; font-weight:700; color:#090909; }
body.rr-event-page .rr-seo-link { display:inline-flex; margin-top:20px; color:#000; text-decoration:underline; text-underline-offset:4px; font-weight:800; line-height:1.5; }
body.rr-event-page .rr-event-links { display:flex; flex-wrap:wrap; gap:8px 24px; }
body.rr-event-page .rr-event-visitor-link { padding:0 22px 54px; display:flex; flex-wrap:wrap; gap:8px 24px; }
body.rr-event-page .rr-seo-faq { padding:92px 22px; background:#fff; }
body.rr-event-page .rr-seo-faq .rr-seo-heading h2 { font-family:'DM Serif Display',serif; font-size:clamp(34px,4.8vw,58px); font-weight:400; line-height:1.02; letter-spacing:-.035em; }
body.rr-event-page .rr-seo-faq-list { width:min(920px,100%); margin:40px auto 0; border-top:1px solid rgba(0,0,0,.12); }
body.rr-event-page .rr-seo-faq-item { border-bottom:1px solid rgba(0,0,0,.12); }
body.rr-event-page .rr-seo-faq-button { width:100%; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:22px 0; border:0; background:transparent; text-align:left; color:#090909; font:800 17px/1.4 Inter,Arial,sans-serif; cursor:pointer; }
body.rr-event-page .rr-seo-faq-button span:last-child { font-size:24px; font-weight:400; transition:.2s; }
body.rr-event-page .rr-seo-faq-item.open .rr-seo-faq-button span:last-child { transform:rotate(45deg); }
body.rr-event-page .rr-seo-faq-answer { display:none; padding:0 0 22px; color:rgba(0,0,0,.63); line-height:1.75; }
body.rr-event-page .rr-seo-faq-item.open .rr-seo-faq-answer { display:block; }
body.rr-event-page .rr-seo-final { padding:82px 22px; background:#f5f5f5; }
body.rr-event-page .rr-seo-final-inner { width:min(1100px,100%); margin:0 auto; padding:48px; border-radius:30px; background:#090909; color:#fff; display:flex; align-items:center; justify-content:space-between; gap:30px; }
body.rr-event-page .rr-seo-final h2 { margin:0; font-family:'DM Serif Display',serif; font-size:clamp(32px,4vw,52px); font-weight:400; }
body.rr-event-page .rr-seo-final p { margin:12px 0 0; color:rgba(255,255,255,.66); line-height:1.7; }
body.rr-event-page .rr-seo-final a { flex:0 0 auto; padding:15px 22px; border-radius:999px; background:#fff; color:#000; text-decoration:none; font-weight:900; }
body.rr-event-page .rr-seo-final .rr-event-actions { flex-direction:column; align-items:stretch; min-width:185px; }
body.rr-event-page a:focus-visible, body.rr-event-page button:focus-visible { outline:3px solid #a67524; outline-offset:4px; }
@media(max-width:980px) {
  body.rr-event-page .rr-grid-4 { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:640px) {
  body.rr-event-page .rr-page-hero-intro { font-size:14px; margin-bottom:20px; }
  body.rr-event-page .rr-seo-section, body.rr-event-page .rr-seo-faq { padding:68px 18px; }
  body.rr-event-page .rr-seo-section h2, body.rr-event-page .rr-seo-faq .rr-seo-heading h2 { font-size:36px; }
  body.rr-event-page .rr-grid-4, body.rr-event-page .rr-grid-3 { grid-template-columns:1fr; }
  body.rr-event-page .rr-seo-final { padding:58px 16px; }
  body.rr-event-page .rr-seo-final-inner { padding:34px 24px; display:block; }
  body.rr-event-page .rr-seo-final a { display:inline-flex; margin-top:12px; }
  body.rr-event-page .rr-seo-final .rr-event-actions { align-items:flex-start; }
}
