.webinar-join-page { background: #f7f8fc; padding: 32px 0 64px; color: #222744; }
.webinar-page-container { width: min(1120px, calc(100% - 40px)); margin: 0 auto; }
.webinar-event-nav { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.webinar-kicker { font-size: 11px; font-weight: 750; letter-spacing: .12em; color: #676987; }
.webinar-event-nav > div { display: flex; flex-wrap: wrap; gap: 12px; }
.webinar-event-nav a { display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: auto; min-height: 45px; padding: 9px 16px; border: 2px solid transparent; border-radius: 10px; color: #fff; font-size: 15px; line-height: 1.4; font-weight: 700; text-align: center; box-shadow: 0 3px 8px rgba(35,32,79,.12); }
.webinar-event-nav a i { font-size: 18px; flex-shrink: 0; }
.webinar-event-nav a:hover { color: #fff; }
.webinar-join-page .webinar-event-nav a:focus-visible { outline: 3px solid #252044; outline-offset: 4px; }
.webinar-event-card { background: #fff; border: 1px solid #e4e5f0; border-radius: 20px; box-shadow: 0 8px 26px rgba(35,32,79,.04); }
.webinar-event-overview { display: grid; grid-template-columns: minmax(0, 1fr) 286px; gap: 36px; padding: 28px 30px; align-items: center; }
.webinar-event-status { display: inline-flex; align-items: center; gap: 7px; padding: 5px 10px; border-radius: 20px; background: #f0edff; color: #6251b5; font-size: 12.65px; font-weight: 750; letter-spacing: .04em; text-transform: uppercase; }
.webinar-event-status > span { width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.webinar-event-status.is-live { color: #14835c; background: #e9f7f0; }
.webinar-event-status.is-live > span { position: relative; }
.webinar-event-status.is-live > span::after { content: ''; position: absolute; inset: -3px; border: 1px solid currentColor; border-radius: 50%; animation: webinar-live-pulse 1.8s ease-out infinite; }
@keyframes webinar-live-pulse {
  0% { transform: scale(.5); opacity: .65; }
  80%, 100% { transform: scale(1.5); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .webinar-event-status.is-live > span::after { animation: none; opacity: 0; }
}
.webinar-event-copy h1 { font-size: clamp(29.9px, 3.45vw, 41.4px); line-height: 1.18; letter-spacing: -.025em; margin: 12px 0; color: #252044; overflow-wrap: anywhere; }
.webinar-event-meta { display: flex; gap: 10px 18px; flex-wrap: wrap; }
.webinar-event-meta > span { display: inline-flex; gap: 6px; align-items: center; font-size: 13.8px; color: #646780; }
.webinar-event-meta i { color: #7566b3; }
.webinar-event-summary { margin: 15px 0 0; color: #606479; font-size: 16.1px; line-height: 1.6; }
.webinar-countdown-panel { background: #f5f3fc; border: 1px solid #e9e4f7; padding: 18px; border-radius: 14px; text-align: center; }
.webinar-countdown-panel p { margin: 0 0 12px; font-size: 13.8px; font-weight: 700; color: #625981; }
.webinar-countdown { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.webinar-countdown > div { display: flex; flex-direction: column; gap: 3px; }
.webinar-countdown strong { font-size: 31.05px; line-height: 1.2; font-variant-numeric: tabular-nums; color: #43357a; }
.webinar-countdown span { font-size: 11.5px; text-transform: uppercase; letter-spacing: .06em; color: #777089; }
.webinar-countdown-panel small { display: block; margin-top: 15px; font-size: 11.5px; color: #777089; }
.webinar-live-panel { display: flex; flex-direction: column; gap: 7px; align-items: center; text-align: center; background: #f0f9f5; padding: 22px; border-radius: 14px; color: #258260; }
.webinar-live-panel i { font-size: 25px; }
.webinar-live-panel strong { font-size: 17.25px; }
.webinar-live-panel span { font-size: 13.8px; line-height: 1.5; }
.webinar-event-details { border-top: 1px solid #ececf4; }
.webinar-event-details summary { display: flex; align-items: center; justify-content: space-between; cursor: pointer; list-style: none; padding: 13px 30px; color: #625393; font-size: 14.95px; font-weight: 650; }
.webinar-event-details summary::-webkit-details-marker { display: none; }
.webinar-event-details[open] summary i { transform: rotate(180deg); }
.webinar-event-details > div { padding: 0 30px 24px; white-space: pre-line; overflow-wrap: anywhere; font-size: 16.1px; line-height: 1.7; color: #606479; }
.webinar-signup-section { max-width: 860px; margin: 26px auto 0; }
.webinar-registration #free-registration-popup { backdrop-filter: none; overflow: visible; }
.webinar-registration #free-register-popup { width: 100%; max-width: none; min-height: 0; margin: 0; padding: 0; }
.webinar-registration #free-register-popup .modal-content { border: 1px solid #e4e5f0; border-radius: 20px; box-shadow: 0 8px 28px rgba(35,32,79,.05); animation: none; }
.webinar-registration #free-register-popup .free-reg-header { background: #fff; padding: 28px 32px 0; }
.webinar-registration #free-register-popup .free-reg-badge { display: none; }
.webinar-registration #free-register-popup .free-reg-hero { max-width: none; }
.webinar-registration #free-register-popup .free-reg-header .modal-title { color: #252044; font-size: 28px; }
.webinar-registration #free-register-popup .free-reg-subtitle { color: #6b6c80; font-size: 14px; }
.webinar-registration #free-register-popup .modal-body { padding: 22px 32px 28px; }
.webinar-login-reminder { display: flex; align-items: center; gap: 12px; padding: 15px 18px; background: #f4f2fb; border: 1px solid #e7e1f6; border-radius: 12px; margin-bottom: 22px; color: #646078; font-size: 12px; line-height: 1.5; }
.webinar-login-reminder > i { font-size: 22px; color: #7560b1; }
.webinar-login-reminder strong { font-size: 14px; color: #39304f; }
.webinar-login-reminder a { margin-left: auto; flex-shrink: 0; font-weight: 700; color: #58409c; text-decoration: underline; }
.webinar-account-choice { padding: 0; margin: 0 0 20px; border: 0; }
.webinar-account-choice legend { float: none; width: auto; margin-bottom: 10px; font-size: 14px; font-weight: 650; color: #34344a; }
.webinar-account-options { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.webinar-account-option { display: flex; align-items: center; gap: 10px; padding: 13px 15px; border: 1px solid #dddde9; border-radius: 12px; cursor: pointer; margin: 0; }
.webinar-account-option.is-selected { border-color: #8b72d3; background: #f8f5ff; box-shadow: 0 0 0 1px #8b72d3; }
.webinar-account-option input[type="radio"] { opacity: 1; position: static; width: 16px; height: 16px; margin: 0; accent-color: #7553b8; flex-shrink: 0; }
.webinar-account-option strong { display: block; font-size: 14px; color: #302943; }
.webinar-account-option small { display: block; font-size: 12px; line-height: 1.5; font-weight: 400; color: #717085; }
.webinar-account-choice .webinar-affiliate-note { margin: 12px 0 0; font-size: 12px; line-height: 1.5; color: #726782; }
.webinar-account-ready { padding: 36px; border: 1px solid #e4e5f0; border-radius: 20px; text-align: center; background: #fff; }
.webinar-account-ready h2 { margin: 12px 0; font-size: 28px; }
.webinar-account-ready p { font-size: 15px; color: #68687c; }
.webinar-registration .rbt-btn { height: auto; min-height: 50px; line-height: 1.5; padding: 12px 20px; }
.webinar-join-page a:focus-visible, .webinar-join-page summary:focus-visible, .webinar-account-option:focus-within { outline: 3px solid #9775df; outline-offset: 3px; }
body:has(.webinar-join-page) .side-join-newsletter { display: none; }
@media (max-width: 767px) {
  .webinar-join-page { padding: 22px 0 40px; }
  .webinar-page-container { width: calc(100% - 28px); }
  .webinar-event-nav { flex-wrap: wrap; gap: 10px; }
  .webinar-event-nav > div { width: 100%; }
  .webinar-event-nav a { flex: 1 1 200px; }
  .webinar-event-overview { grid-template-columns: 1fr; gap: 20px; padding: 22px; }
  .webinar-countdown-panel { max-width: 360px; width: 100%; }
  .webinar-live-panel { align-items: flex-start; text-align: left; }
  .webinar-live-panel i { display: none; }
  .webinar-event-details summary { padding: 13px 22px; }
  .webinar-event-details > div { padding: 0 22px 22px; }
  .webinar-registration #free-register-popup .free-reg-header { padding: 24px 20px 0; }
  .webinar-registration #free-register-popup .free-reg-header .modal-title { font-size: 24px; }
  .webinar-registration #free-register-popup .modal-body { padding: 20px; }
  .webinar-login-reminder { flex-wrap: wrap; }
  .webinar-login-reminder > div { flex: 1; }
  .webinar-login-reminder a { margin-left: 34px; }
}
@media (max-width: 440px) {
  .webinar-account-options { grid-template-columns: 1fr; }
}
