.nova-seminer { --nova-brand-gradient: linear-gradient(135deg, var(--color-dark-red, #bd2544), var(--color-orange, #dd6b2b)); --nova-card-surface: linear-gradient(135deg, rgba(26,35,126,.3), rgba(189,37,68,.08)); --nova-card-border: rgba(221,107,43,.22); scroll-margin-top: 90px; padding: 80px 0; }
.nova-seminer-layout { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(28px, 5vw, 68px); align-items: start; max-width: 1040px; margin: auto; }
.nova-seminer-symbols { position: absolute; width: 0; height: 0; overflow: hidden; pointer-events: none; }
.nova-seminer-icon { width: 20px; height: 20px; flex: 0 0 20px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.nova-seminer-hero { text-align: center; max-width: 1040px; margin: 0 auto 46px; }
.nova-seminer-live-badge { display: inline-flex; align-items: center; gap: 9px; padding: 10px 18px; border: 1px solid #dd6b2b55; border-radius: 30px; background: var(--nova-brand-gradient); box-shadow: 0 6px 22px #dd6b2b18; color: #fff; font: 700 12px/1.2 'League Spartan', sans-serif; letter-spacing: 1px; }
.nova-seminer-live-badge > span { width: 6px; height: 6px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 4px #ffffff15; }
.nova-seminer-live-badge i { font-style: normal; opacity: .5; }
.nova-seminer .nova-seminer-hero h2 { max-width: 960px; margin: 24px auto 19px; font-size: clamp(35px, 4.1vw, 56px); font-weight: 800; line-height: 1.08; letter-spacing: -1.4px; }
.nova-seminer-hero h2 > span, .nova-seminer-hero h2 > strong { display: block; font: inherit !important; color: #f3f4f6; }
.nova-seminer-hero h2 > strong { color: var(--color-orange, #dd6b2b); }
.nova-seminer .nova-seminer-hero .nova-seminer-description { max-width: 740px; margin: 0 auto; color: #c2c8d4 !important; font-size: 15px; line-height: 1.9; }
.nova-seminer-proof { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); margin: 30px auto 0; padding: 22px 0; border-top: 1px solid #ffffff16; border-bottom: 1px solid #ffffff16; max-width: 850px; }
.nova-seminer-proof > div { display: flex; flex-direction: column; gap: 7px; justify-content: center; padding: 0 16px; }
.nova-seminer-proof > div + div { border-left: 1px solid #ffffff1a; }
.nova-seminer-proof strong, .nova-seminer-proof strong span, .nova-seminer-proof strong b { color: #f0b387; font: 700 30px/1.1 'League Spartan', sans-serif !important; font-variant-numeric: tabular-nums; }
.nova-seminer-proof strong span { font-size: 22px !important; }
.nova-seminer-proof > div > span { color: #adb6c8; font: 400 13px/1.4 'League Spartan', sans-serif !important; }
.nova-seminer-proof .nova-proof-exams { font-size: 19px !important; line-height: 1.1 !important; }
.nova-seminer-intro { padding: 5px 0 0; min-width: 0; }
.nova-seminer-speaker { display: flex; align-items: center; gap: 14px; margin-bottom: 24px; }
.nova-seminer-speaker img { flex-shrink: 0; width: 56px; height: 56px; object-fit: cover; object-position: top; border: 1px solid #e39b6955; border-radius: 50%; background: #252d40; }
.nova-seminer-speaker div { display: grid; gap: 4px; }
.nova-seminer-speaker span { color: #e7a575; font: 600 10px/1.2 'League Spartan', sans-serif !important; letter-spacing: 1.3px; }
.nova-seminer-speaker strong { color: #f4f5f8; font: 700 22px/1.1 'League Spartan', sans-serif; }
.nova-seminer-speaker small { color: #a9b2c5; font: 400 14px/1.2 'League Spartan', sans-serif; }
.nova-attendance { padding: 23px 24px 20px; background: var(--nova-card-surface); border: 1px solid var(--nova-card-border); border-radius: 16px; }
.nova-attendance-top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; }
.nova-attendance-top > span:first-child { display: inline-flex; align-items: center; gap: 8px; color: #c5cede; font: 500 13px/1.3 'League Spartan', sans-serif !important; }
.nova-attendance-top .nova-seminer-icon { color: #a8b5cf; width: 17px; height: 17px; flex-basis: 17px; }
.nova-attendee-identity { display: grid; gap: 7px; min-width: 0; }
.nova-attendee-avatars { display: flex; align-items: center; min-height: 34px; padding-left: 0; }
.nova-attendee-avatar { display: inline-grid; place-items: center; position: relative; flex: 0 0 34px; width: 34px; height: 34px; border: 2px solid #1b2438; border-radius: 50%; overflow: hidden; box-shadow: 0 2px 5px #0002; }
.nova-attendee-avatar + .nova-attendee-avatar { margin-left: -9px; }
.nova-attendee-avatar svg { width: 100%; height: 100%; display: block; }
.nova-seminer .nova-attendee-avatar-0 { background: #d3a088; color: #754d40; }
.nova-seminer .nova-attendee-avatar-1 { background: #a0b8ad; color: #41695d; }
.nova-seminer .nova-attendee-avatar-2 { background: #b9afd2; color: #675a8e; }
.nova-seminer .nova-attendee-avatar-3 { background: #d9be8a; color: #8a6737; }
.nova-seminer .nova-attendee-avatar-4 { background: #a1b6d5; color: #4c688e; }
.nova-seminer .nova-attendee-extra { flex-basis: auto; width: auto; min-width: 34px; padding: 0 7px; background: #303e57; color: #e0e7f3; font: 600 10px/1 'League Spartan', sans-serif !important; z-index: 1; font-variant-numeric: tabular-nums; }
.nova-seminer .nova-attendee-empty { margin-left: 0; background: #ffffff06; color: #acb7cb; border: 1px solid #ffffff25; box-shadow: none; }
.nova-attendee-empty svg { width: 27px; height: 27px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.nova-seminer .nova-attendee-caption { color: #a9b6cb; font: 400 11px/1.3 'League Spartan', sans-serif !important; }
.nova-registration-label { display: inline-flex; align-items: center; gap: 6px; color: #84cfaf; font: 500 11px/1.3 'League Spartan', sans-serif !important; white-space: nowrap; }
.nova-registration-label::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
.nova-registration-label.is-closed { color: #e8b68c; }
.nova-attendance-total { display: flex; align-items: center; gap: 13px; margin: 21px 0 18px; }
.nova-attendance-total > strong { color: #f6f8fc; font: 800 52px/.95 'League Spartan', sans-serif; letter-spacing: -1.5px; font-variant-numeric: tabular-nums; }
.nova-attendance-total > div { color: #d0d7e5; font: 500 15px/1.35 'League Spartan', sans-serif; }
.nova-attendance-total span { display: block; color: #a1aec7; font: 400 12px/1.4 'League Spartan', sans-serif !important; margin-top: 2px; }
.nova-attendance-track { width: 100%; height: 5px; border-radius: 5px; overflow: hidden; background: #ffffff12; }
.nova-attendance-track > span { display: block; height: 100%; border-radius: inherit; background: var(--nova-brand-gradient); transition: width .6s ease; }
.nova-attendance-footer { display: flex; justify-content: space-between; gap: 10px; margin-top: 10px; }
.nova-attendance-footer > span { color: #96a5bf; font: 400 12px/1.4 'League Spartan', sans-serif !important; }
.nova-attendance-footer > strong { color: #efb080; font: 500 12px/1.4 'League Spartan', sans-serif; }
.nova-countdown-area { margin: 25px 0 22px; }
.nova-countdown-caption { display: block; font: 500 10px/1.3 'League Spartan', sans-serif !important; letter-spacing: 1.6px; color: #9faac0; margin-bottom: 10px; }
.nova-countdown { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 9px; max-width: 350px; }
.nova-countdown > div { padding: 13px 4px 10px; text-align: center; border: 1px solid var(--nova-card-border); border-radius: 12px; background: rgba(26,35,126,.12); }
.nova-countdown strong { display: block; color: #f3f5fa; font: 700 29px/1 'League Spartan', sans-serif; font-variant-numeric: tabular-nums; }
.nova-countdown div > span { display: block; color: #96a2b9; font: 500 9px/1.3 'League Spartan', sans-serif !important; letter-spacing: 1px; margin-top: 5px; }
.nova-seminer-details { display: flex; flex-wrap: wrap; gap: 14px 24px; margin-bottom: 21px; }
.nova-seminer-details > div { display: flex; align-items: center; gap: 8px; }
.nova-seminer-details .nova-seminer-icon { color: #dc996b; width: 17px; height: 17px; flex-basis: 17px; }
.nova-seminer-details span { color: #d0d6e2; font: 500 13px/1.4 'League Spartan', sans-serif !important; }
.nova-seminer-details small { display: block; color: #97a4bc; font-size: 11px; }
.nova-event-cta { display: flex; align-items: center; justify-content: space-between; padding: 16px 20px; min-height: 54px; border-radius: 12px; background: var(--nova-brand-gradient); color: #fff; font: 700 17px/1.3 'League Spartan', sans-serif !important; }
.nova-event-cta:hover { color: #fff; filter: brightness(1.1); }
.nova-event-cta:focus { color: #fff; }
.nova-event-cta:focus-visible { outline: 2px solid #f5b783; outline-offset: 4px; }
.nova-seminer-closed { padding: 35px 0; }
.nova-seminer-closed h3 { font-size: 32px; line-height: 1.15; margin-bottom: 16px; }
.nova-seminer-closed p { font: 400 16px/1.7 'League Spartan', sans-serif !important; color: #b8c3d6 !important; }
.nova-seminer-eyebrow { display: block; color: #f3ac73 !important; font: 700 13px/1.5 'League Spartan', sans-serif !important; letter-spacing: 2px; margin-bottom: 22px; }
.nova-seminer h2 { font-size: clamp(34px, 3.4vw, 52px); line-height: 1.08; margin-bottom: 22px; max-width: 520px; }
.nova-seminer-description { font-size: 16px; line-height: 1.9; max-width: 490px; margin-bottom: 30px; }
.nova-seminer-topics { border-top: 1px solid #ffffff1a; margin-bottom: 28px; }
.nova-seminer-topics > div { display: flex; align-items: center; gap: 18px; padding: 17px 0; border-bottom: 1px solid #ffffff1a; }
.nova-seminer-topics span { font: 500 17px/1.5 'League Spartan', sans-serif !important; }
.nova-seminer-topics .nova-topic-no { color: #ed985d; font-size: 13px !important; letter-spacing: 1px; }
.nova-seminer-note { display: flex; align-items: flex-start; gap: 12px; padding: 18px; background: #dd6b2b0d; border: 1px solid #dd6b2b40; border-radius: 14px; }
.nova-seminer-note p, .nova-seminer-footnote { font: 400 14px/1.7 'League Spartan', sans-serif !important; margin: 0; }
.nova-seminer-dot { flex: 0 0 8px; height: 8px; border-radius: 100%; background: #dd6b2b; margin-top: 7px; }
.nova-seminer-footnote { color: #a7afc0 !important; padding-top: 18px; }
.nova-seminer-card { padding: clamp(24px, 3vw, 36px); background: var(--nova-card-surface); border: 1px solid var(--nova-card-border); border-radius: 16px; box-shadow: 0 16px 40px #0002; min-width: 0; scroll-margin-top: 100px; }
.nova-seminer [hidden] { display: none !important; }
.nova-form-heading { display: flex; justify-content: space-between; gap: 15px; margin-bottom: 15px; }
.nova-form-heading span { font: 600 12px/1.4 'League Spartan', sans-serif !important; letter-spacing: 1.5px; color: #aab3c6; }
.nova-form-heading span:last-child { color: #f4ac79; }
.nova-form-progress { display: flex; gap: 7px; margin-bottom: 30px; }
.nova-form-progress span { position: relative; width: 25%; height: 4px; border-radius: 4px; background: #ffffff1a; overflow: hidden; }
.nova-form-progress span::after { content: ''; position: absolute; inset: 0; border-radius: inherit; background: var(--nova-brand-gradient); transform: scaleX(0); transform-origin: left; transition: transform .34s cubic-bezier(.22,1,.36,1); }
.nova-form-progress .is-active::after { transform: scaleX(1); }
.nova-form-viewport { position: relative; }
.nova-form-viewport.is-animating { overflow: hidden; overflow: clip; }
.nova-form-step { display: flow-root; }
.nova-form-step fieldset { padding: 0; margin: 0; border: 0; min-width: 0; }
.nova-form-step legend, .nova-field-label { display: block; color: #f8fafc; font: 700 26px/1.2 'League Spartan', sans-serif !important; margin-bottom: 10px; float: none; width: 100%; }
.nova-field-hint { color: #b5bed0 !important; font: 400 15px/1.6 'League Spartan', sans-serif !important; margin-bottom: 20px; }
.nova-level-options { display: grid; gap: 10px; }
.nova-level-option { display: flex; position: relative; align-items: center; padding: 17px 18px; min-height: 56px; border: 1px solid #ffffff24; border-radius: 12px; cursor: pointer; background: #ffffff03; }
.nova-level-option > span:first-of-type { font: 500 17px/1.3 'League Spartan', sans-serif !important; color: #e5eaf3; }
.nova-level-option input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.nova-seminer .nova-level-option { margin: 0; }
.nova-seminer .nova-level-option input[type="radio"] { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.nova-radio-mark { width: 18px; height: 18px; border: 1px solid #758099; border-radius: 50%; margin-left: auto; flex-shrink: 0; }
.nova-level-option:has(input:checked) { border-color: #e5884c; background: #dd6b2b12; }
.nova-level-option input:checked ~ .nova-radio-mark { border: 5px solid #e5884c; background: #fff; }
.nova-level-option:focus-within { outline: 2px solid #f5b783; outline-offset: 3px; }
.nova-seminer .nova-form-input { width: 100%; height: 56px; padding: 14px 16px; margin: 0; color: #f5f7fc; background: #0d1423; border: 1px solid #ffffff30; border-radius: 10px; font: 400 17px/1.4 'League Spartan', sans-serif; box-shadow: none; }
.nova-form-input::placeholder { color: #8894ab; opacity: 1; }
.nova-form-input:focus { outline: 2px solid #e79a66; outline-offset: 2px; }
.nova-form-input[aria-invalid="true"] { border-color: #ffb4b4; }
.nova-phone-row { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 10px; }
.nova-seminer select.nova-form-input { padding: 10px; }
.nova-seminer .nova-form-next { display: flex; justify-content: space-between; align-items: center; gap: 12px; width: 100%; min-height: 56px; padding: 17px 20px; margin-top: 22px; border: 0; border-radius: 12px; background: var(--nova-brand-gradient); color: #fff; font: 700 17px/1.3 'League Spartan', sans-serif !important; cursor: pointer; text-decoration: none; text-transform: none; letter-spacing: 0; transition: filter .2s; }
.nova-form-next span { color: #fff !important; font: inherit !important; font-size: 22px !important; }
.nova-seminer .nova-form-next, .nova-seminer .nova-form-back { overflow: hidden !important; }
.nova-form-next:hover { filter: brightness(1.12); }
.nova-form-next:focus-visible, .nova-form-back:focus-visible { outline: 2px solid #f5b783; outline-offset: 4px; }
.nova-form-next:disabled { opacity: .65; cursor: wait; }
.nova-seminer .nova-form-back { display: block; margin: 16px auto 0; padding: 6px 10px; border: 0; background: transparent; color: #bbc4d6; font: 400 14px/1.5 'League Spartan', sans-serif !important; text-transform: none; letter-spacing: 0; }
.nova-field-error { color: #ffb7b7 !important; font: 400 14px/1.5 'League Spartan', sans-serif !important; margin: 7px 0 0; }
.nova-field-error:empty { display: none; }
.nova-data-notice { margin: 20px 0 14px; color: #c5ccda; font: 400 13px/1.6 'League Spartan', sans-serif; }
.nova-data-notice summary { text-decoration: underline; cursor: pointer; }
.nova-data-notice p { font: inherit !important; padding-top: 10px; }
.nova-data-notice a { color: #f4ac79; }
.nova-consent { display: flex; align-items: flex-start; gap: 10px; margin: 14px 0 0; cursor: pointer; }
.nova-seminer .nova-consent input[type="checkbox"] { position: static; opacity: 1; flex: 0 0 17px; width: 17px; height: 17px; margin: 3px 0 0; accent-color: #dd6b2b; appearance: auto; }
.nova-consent span { font: 400 13px/1.6 'League Spartan', sans-serif !important; color: #d2d9e6; }
.nova-consent small { display: block; color: #a3afc4; font-size: 12px; }
.nova-form-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.nova-form-message { background: #852c2c30; color: #ffcccc; padding: 12px; border-radius: 10px; margin-top: 18px; font: 400 15px/1.5 'League Spartan', sans-serif; }
.nova-form-reassurance { margin: 23px 0 0; text-align: center; font: 400 13px/1.5 'League Spartan', sans-serif !important; color: #aab4c8 !important; }
.nova-seminer-success { text-align: center; padding: 28px 0; }
.nova-success-mark { width: 64px; height: 64px; display: grid; place-items: center; margin: 0 auto 25px; border: 1px solid #dd6b2b66; background: #dd6b2b1a; border-radius: 50%; color: #f4ac79; font-size: 30px; }
.nova-seminer-success h3 { font-size: 36px; margin-bottom: 18px; }
.nova-seminer-success p { font: 400 16px/1.8 'League Spartan', sans-serif !important; }
.nova-success-courses { display: inline-block; color: #f4ac79; margin-top: 22px; font-size: 16px; }
@media (max-width: 800px) {
    .nova-seminer { padding: 55px 0; scroll-margin-top: 90px; }
    .nova-seminer-layout { grid-template-columns: 1fr; gap: 30px; max-width: 500px; }
    .nova-seminer-hero { margin-bottom: 30px; }
    .nova-seminer .nova-seminer-hero h2 { font-size: clamp(31px,6.3vw,43px); line-height: 1.1; letter-spacing: -.7px; margin-top: 21px; }
    .nova-seminer .nova-seminer-hero .nova-seminer-description { font-size: 14px; line-height: 1.8; max-width: 560px; }
    .nova-seminer-proof { grid-template-columns: repeat(2,minmax(0,1fr)); max-width: 500px; padding: 0; margin-top: 24px; }
    .nova-seminer-proof > div { padding: 19px 8px; }
    .nova-seminer-proof > div:nth-child(3) { border-left: 0; }
    .nova-seminer-proof > div:nth-child(n+3) { border-top: 1px solid #ffffff16; }
    .nova-seminer-proof strong, .nova-seminer-proof strong b { font-size: 27px !important; }
    .nova-seminer-proof > div > span { font-size: 12px !important; }
    .nova-seminer-proof .nova-proof-exams { font-size: 18px !important; }
    .nova-seminer-speaker strong { font-size: 21px; }
    .nova-attendance { padding: 21px; }
    .nova-attendee-avatar { width: 30px; height: 30px; flex-basis: 30px; }
    .nova-attendee-avatar + .nova-attendee-avatar { margin-left: -8px; }
    .nova-countdown { max-width: none; }
    .nova-seminer-live-badge { font-size: 10px; letter-spacing: .6px; gap: 7px; padding: 8px 12px; }
    .nova-seminer h2 { max-width: none; }
    .nova-seminer-description { max-width: none; font-size: 15px; }
    .nova-seminer-eyebrow { font-size: 11px !important; letter-spacing: 1.5px; }
    .nova-form-step legend, .nova-field-label { font-size: 24px !important; }
    .nova-seminer-card { padding: 25px 20px; }
}
@media (prefers-reduced-motion: reduce) { .nova-seminer *, .nova-form-progress span::after { scroll-behavior: auto !important; transition: none !important; } }
