/* BSIL Lecture Series pages. Loaded only on the Lecture Series hub and lecture pages. */
.lec{--lec-ring:rgba(233,217,168,.16);--lec-card:rgba(255,255,255,.07);--lec-hdr:var(--hdr-h,80px)}
.lec :where(ul,ol){list-style:none;margin:0;padding:0}
.lec :where(blockquote,figure,dl,dd){margin:0;padding:0;border:0}
.lec [id]{scroll-margin-top:calc(var(--lec-hdr) + 16px)}
.lec h2{font-size:clamp(28px,3.2vw,40px)}

/* ---------- Hero ---------- */
.lec-hero{position:relative;overflow:hidden;isolation:isolate;color:#D6E3DA;padding:clamp(44px,6vw,84px) 0 clamp(52px,7vw,92px);background:radial-gradient(900px 480px at 88% 0%,rgba(179,138,38,.22),transparent 62%),radial-gradient(700px 520px at 0% 100%,rgba(221,233,225,.10),transparent 60%),linear-gradient(140deg,var(--c-primary-deep) 0%,#0A4C2D 45%,var(--c-primary) 100%);border-bottom:4px solid var(--c-accent)}
.lec-hero-bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
.lec-rings{position:absolute;right:-140px;top:50%;width:min(720px,80vw);height:auto;transform:translateY(-50%);fill:none;stroke:var(--lec-ring);stroke-width:1;animation:lecSpin 90s linear infinite}
.lec-glow{position:absolute;width:420px;height:420px;right:8%;top:-120px;border-radius:50%;background:radial-gradient(circle,rgba(233,217,168,.18),transparent 65%);animation:lecFloat 9s ease-in-out infinite alternate}
.lec-hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:clamp(28px,5vw,64px);align-items:center}
.lec-crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:14px;margin-bottom:22px;color:rgba(214,227,218,.8)}
.lec-crumbs a{color:var(--c-gold-soft);text-decoration:none}
.lec-crumbs a:hover{color:#fff;text-decoration:underline}
.lec-kicker{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--c-gold-soft);margin-bottom:16px}
.lec-no{display:inline-grid;place-items:center;min-width:44px;height:44px;padding:0 8px;border:1px solid rgba(233,217,168,.55);border-radius:var(--radius);font-family:var(--f-head);font-size:19px;letter-spacing:0;color:#fff;background:rgba(179,138,38,.18)}
.lec-title{color:#fff;font-size:clamp(36px,5.4vw,66px);line-height:1.08;max-width:16ch}
.lec-title em{font-style:italic;color:var(--c-gold-soft)}
.lec-sub{margin-top:18px;font-family:var(--f-head);font-style:italic;font-size:clamp(18px,1.9vw,22px);line-height:1.5;color:#E3ECE6;max-width:46ch}
.lec-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.lec-meta li{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:var(--lec-card);border:1px solid rgba(255,255,255,.14);font-weight:600;font-size:15px;color:#fff}
.lec-meta .ic{color:var(--c-gold-soft)}
.lec-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.lec-shine{position:relative;overflow:hidden}
.lec-shine::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);animation:lecShine 3.6s ease-in-out infinite}
.lec-shine .ic{transition:transform .2s}
.lec-shine:hover .ic{transform:translateX(4px)}

/* Hero entrance (CSS only, ends visible) */
.lec-hero-copy>*,.lec-count-card{animation:lecUp .8s cubic-bezier(.2,.7,.2,1) both}
.lec-hero-copy>:nth-child(2){animation-delay:.06s}.lec-hero-copy>:nth-child(3){animation-delay:.12s}.lec-hero-copy>:nth-child(4){animation-delay:.18s}.lec-hero-copy>:nth-child(5){animation-delay:.24s}.lec-hero-copy>:nth-child(6){animation-delay:.3s}
.lec-count-card{animation-delay:.25s}

/* Countdown card */
.lec-count-card{background:linear-gradient(160deg,rgba(255,255,255,.12),rgba(255,255,255,.04));border:1px solid rgba(233,217,168,.35);border-radius:calc(var(--radius) * 2);padding:26px;box-shadow:0 24px 60px -24px rgba(0,0,0,.45);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.lec-count-h{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-gold-soft);margin-bottom:14px}
.lec-live-dot{width:9px;height:9px;border-radius:50%;background:var(--c-accent);box-shadow:0 0 0 0 rgba(179,138,38,.7);animation:lecPulse 1.8s ease-out infinite}
.lec-count{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.lec-unit{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 4px 10px;border-radius:var(--radius);background:rgba(8,63,37,.55);border:1px solid rgba(255,255,255,.08)}
.lec-digit{font-family:var(--f-head);font-weight:700;font-size:clamp(26px,3vw,38px);line-height:1;color:#fff;font-variant-numeric:tabular-nums;display:inline-block}
.lec-digit.flip{animation:lecFlip .45s ease}
.lec-ulabel{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(214,227,218,.75)}
.lec-count-note{margin-top:14px;font-size:15px;color:#D6E3DA}
.lec-count-note strong{color:#fff}
.lec-people-mini{display:flex;align-items:center;margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,255,255,.12);font-size:15px;color:#fff;line-height:1.35}
.lec-people-mini img{width:42px;height:42px;border-radius:50%;object-fit:cover;border:2px solid var(--c-primary-deep);box-shadow:0 0 0 1px rgba(233,217,168,.6)}
.lec-people-mini img+img{margin-left:-12px}
.lec-people-mini span{margin-left:12px}
.lec-people-mini small{color:rgba(214,227,218,.8);font-size:13px}

/* ---------- Stats ---------- */
.lec-stats{background:#fff;border-bottom:1px solid var(--c-line)}
.lec-stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.lec-stat{display:flex;flex-direction:column;gap:6px;padding:30px 22px;border-left:1px solid var(--c-line)}
.lec-stat:first-child{border-left:0;padding-left:0}
.lec-num{font-family:var(--f-head);font-weight:700;font-size:clamp(28px,3vw,38px);line-height:1.1;color:var(--c-primary-deep);font-variant-numeric:tabular-nums}
.lec-stat-t{font-size:15px;line-height:1.45;color:var(--c-muted)}

/* ---------- Sections ---------- */
.lec-section{padding:clamp(56px,7vw,96px) 0}
.lec-surface{background:var(--c-surface)}
.lec-dark{background:linear-gradient(140deg,var(--c-primary-deep),var(--c-primary));color:#D6E3DA}
.lec-dark h2,.lec-dark h3{color:#fff}
.lec-head{max-width:720px;margin-bottom:40px}
.lec-head-p{margin-top:12px;font-size:18px;color:var(--c-muted)}

/* About */
.lec-about{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.9fr);gap:clamp(28px,5vw,64px);align-items:start}
.lec-prose h2{margin-bottom:20px}
.lec-prose p{margin-bottom:18px}
.lec-lead{font-size:20px;line-height:1.6;color:var(--c-ink)}
.lec-quote{position:relative;margin-top:28px!important;padding:24px 26px 22px 30px!important;background:var(--c-surface);border-left:4px solid var(--c-accent)!important;border-radius:0 var(--radius) var(--radius) 0;font-family:var(--f-head);font-size:19px;line-height:1.55;color:var(--c-primary-deep)}
.lec-quote cite{display:block;margin-top:12px;font-family:var(--f-body);font-style:normal;font-size:14px;font-weight:600;color:var(--c-gold-text)}
.lec-glance{position:sticky;top:calc(var(--lec-hdr) + 20px);background:#fff;border:1px solid var(--c-line);border-top:4px solid var(--c-primary);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}
.lec-glance-h{font-family:var(--f-head);font-weight:700;font-size:21px;color:var(--c-primary-deep);margin-bottom:12px}
.lec-glance dl>div{display:grid;gap:2px;padding:11px 0;border-bottom:1px dashed var(--c-line)}
.lec-glance dt{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-muted)}
.lec-glance dd{font-weight:600}
.lec-glance-q{margin-top:14px;font-size:15px;color:var(--c-muted)}

/* Timeline */
.lec-tl{position:relative;max-width:980px;margin:0 auto;--p:0}
.lec-tl::before,.lec-tl::after{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;margin-left:-1px;background:var(--c-line)}
.lec-tl::after{background:linear-gradient(var(--c-accent),var(--c-primary));transform-origin:top;transform:scaleY(var(--p))}
.lec-tl-item{position:relative;width:50%;padding:0 44px 34px 0}
.lec-tl-item:nth-child(even){margin-left:50%;padding:0 0 34px 44px}
.lec-tl-dot{position:absolute;top:22px;right:-9px;width:18px;height:18px;border-radius:50%;background:#fff;border:3px solid var(--c-line);z-index:1;transition:border-color .4s,background .4s,transform .4s}
.lec-tl-item:nth-child(even) .lec-tl-dot{right:auto;left:-9px}
.lec-tl-item.lit .lec-tl-dot{border-color:var(--c-accent);background:var(--c-primary);transform:scale(1.15)}
.lec-tl-card{background:#fff;border:1px solid var(--c-line);border-radius:var(--radius);padding:20px 22px;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s}
.lec-tl-card:hover{transform:translateY(-3px);box-shadow:0 2px 4px rgba(8,63,37,.06),0 18px 36px -12px rgba(8,63,37,.22)}
.lec-tl-date{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-gold-text);margin-bottom:6px}
.lec-tl-card h3{font-size:19px;margin-bottom:6px}
.lec-tl-card p:last-child{color:var(--c-muted);font-size:16px}

/* Tracks */
.lec-tracks{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:22px}
.lec-track{position:relative;display:flex;flex-direction:column;gap:10px;padding:28px;border:1px solid var(--c-line);border-radius:var(--radius);background:#fff;overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s}
.lec-track::before{content:"";position:absolute;left:0;top:0;height:4px;width:100%;background:linear-gradient(90deg,var(--c-primary),var(--c-accent));transform:scaleX(0);transform-origin:left;transition:transform .45s ease}
.lec-track:hover{transform:translateY(-4px);box-shadow:0 18px 40px -16px rgba(8,63,37,.28);border-color:transparent}
.lec-track:hover::before{transform:scaleX(1)}
.lec-track-main{background:linear-gradient(160deg,var(--c-surface),#fff)}
.lec-track-ic{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--c-mint);color:var(--c-primary-deep)}
.lec-track-k{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-gold-text)}
.lec-track h3{font-size:22px}
.lec-track p:last-child{color:var(--c-muted)}
.lec-gaps{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:26px;padding:18px 22px;border-radius:var(--radius);background:#FBF6E7;border:1px solid var(--c-gold-soft)}
.lec-gaps-h{font-weight:700;color:var(--c-gold-text)}
.lec-gaps ul{display:flex;flex-wrap:wrap;gap:10px}
.lec-gaps li{padding:6px 14px;border-radius:999px;background:#fff;border:1px solid var(--c-gold-soft);font-weight:600;font-size:15px}

/* Objectives */
.lec-objectives{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:none}
.lec-objectives li{position:relative;padding:26px 22px;border-radius:var(--radius);background:var(--lec-card);border:1px solid rgba(255,255,255,.12);transition:background .25s,transform .25s}
.lec-objectives li:hover{background:rgba(255,255,255,.12);transform:translateY(-3px)}
.lec-objectives span{display:block;font-family:var(--f-head);font-size:40px;line-height:1;color:var(--c-gold-soft);margin-bottom:14px}
.lec-objectives p{font-size:18px;line-height:1.45;color:#fff;font-weight:600}

/* People */
.lec-people{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.lec-person{display:flex;flex-direction:column;gap:14px;padding:30px;border:1px solid var(--c-line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}
.lec-person-top{display:flex;align-items:center;gap:20px;margin-bottom:4px}
.lec-avatar{flex:none;width:112px;height:112px;border-radius:50%;padding:4px;background:conic-gradient(from 140deg,var(--c-accent),var(--c-primary),var(--c-accent))}
.lec-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:center 25%;border:3px solid #fff}
.lec-role{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:4px;background:var(--c-accent);color:#fff;margin-bottom:8px}
.lec-role-alt{background:var(--c-primary)}
.lec-person h3{font-size:23px}
.lec-aff{margin-top:4px;font-size:15px;line-height:1.45;color:var(--c-muted)}
.lec-person>p{color:var(--c-ink);font-size:16.5px}

/* Registration */
.lec-register{background:radial-gradient(700px 400px at 0% 0%,rgba(179,138,38,.18),transparent 60%),linear-gradient(140deg,var(--c-primary-deep),var(--c-primary));color:#D6E3DA}
.lec-register h2{color:#fff}
.lec-reg-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);gap:clamp(28px,5vw,60px);align-items:start}
.lec-reg-info{position:sticky;top:calc(var(--lec-hdr) + 20px)}
.lec-reg-info>p{margin-top:14px;font-size:18px}
.lec-reg-info strong{color:#fff}
.lec-steps{display:grid;gap:12px;margin:24px 0 26px}
.lec-steps li{display:flex;align-items:center;gap:14px;font-weight:600;color:#fff}
.lec-steps span{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--c-gold-soft);color:var(--c-gold-soft);font-family:var(--f-head)}
.lec-reg-count p{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-gold-soft);margin-bottom:10px}
.lec-reg-count .lec-unit{background:rgba(255,255,255,.08)}
.lec-reg-count .lec-digit{font-size:28px}
.lec-reg-q{display:flex;align-items:center;gap:8px;margin-top:22px!important;font-size:16px!important}
.lec-reg-q a{color:var(--c-gold-soft)}
.lec-reg-q a:hover{color:#fff}
.lec-form-card{background:#fff;color:var(--c-ink);border-radius:calc(var(--radius) * 2);padding:clamp(22px,3.5vw,38px);box-shadow:0 30px 70px -30px rgba(0,0,0,.55);border-top:4px solid var(--c-accent)}
.lec-form-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--c-line)}
.lec-form-head h3{font-size:24px}
.lec-form-head span{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--c-muted)}
.lec-closed{text-align:center;padding:30px 10px;display:grid;justify-items:center;gap:12px;color:var(--c-muted)}
.lec-closed .ic{color:var(--c-primary)}

/* Forminator form, restyled to the BSIL look */
.lec-form .forminator-ui.forminator-custom-form{margin:0!important;font-family:var(--f-body)!important}
.lec-form .forminator-row{display:flex;flex-wrap:wrap;gap:0 18px;margin:0 0 18px!important}
.lec-form .forminator-row.forminator-hidden{display:none!important}
.lec-form .forminator-col{flex:1 1 0;min-width:0;padding:0!important}
.lec-form .forminator-col-12{flex-basis:100%}
.lec-form .forminator-field{display:flex;flex-direction:column;gap:7px}
.lec-form .forminator-label{display:block!important;font-weight:600!important;font-size:15px!important;color:var(--c-ink)!important;margin:0!important;padding:0!important}
.lec-form .forminator-required{color:var(--c-alert)!important}
.lec-form .forminator-description{display:block;font-size:13.5px!important;color:var(--c-muted)!important;margin:0!important}
.lec-form .forminator-field-textarea .forminator-description{order:3;text-align:right}
.lec-form input.forminator-input,.lec-form textarea.forminator-textarea,.lec-form select{width:100%!important;font:inherit!important;font-size:16px!important;padding:12px 14px!important;border:1px solid #BFCCC4!important;border-radius:var(--radius)!important;background:#FBFCFB!important;color:var(--c-ink)!important;box-shadow:none!important;transition:border-color .15s,box-shadow .15s,background .15s;height:auto!important;line-height:1.4!important}
.lec-form textarea.forminator-textarea{min-height:130px;resize:vertical}
.lec-form input.forminator-input:focus,.lec-form textarea.forminator-textarea:focus,.lec-form select:focus{outline:none!important;border-color:var(--c-primary)!important;background:#fff!important;box-shadow:0 0 0 3px rgba(12,90,53,.15)!important}
.lec-form input::placeholder,.lec-form textarea::placeholder{color:#8A988F}
/* select2 dropdowns */
.lec-form .select2-container{width:100%!important}
.lec-form .select2-container .select2-selection--single{height:auto!important;min-height:48px;display:flex!important;align-items:center;padding:0 40px 0 14px!important;border:1px solid #BFCCC4!important;border-radius:var(--radius)!important;background:#FBFCFB!important}
.lec-form .select2-container--open .select2-selection--single,.lec-form .select2-container--focus .select2-selection--single{border-color:var(--c-primary)!important;box-shadow:0 0 0 3px rgba(12,90,53,.15)!important}
.lec-form .select2-selection__rendered{padding:0!important;line-height:1.4!important;font-size:16px!important;color:var(--c-ink)!important}
.lec-form .select2-selection__placeholder{color:#8A988F!important}
.lec-form .select2-selection__arrow{height:100%!important;right:10px!important;top:0!important}
.lec-page .select2-dropdown{border:1px solid var(--c-primary)!important;border-radius:var(--radius)!important;box-shadow:0 18px 40px -16px rgba(8,63,37,.35)!important;font-family:var(--f-body)!important;overflow:hidden}
.lec-page .select2-results__option{padding:10px 14px!important;font-size:15.5px!important;color:var(--c-ink)!important}
.lec-page .select2-results__option--highlighted,.lec-page .select2-results__option[aria-selected="true"]{background:var(--c-mint)!important;color:var(--c-primary-deep)!important}
/* consent */
.lec-form .forminator-field-consent .forminator-label{display:none!important}
.lec-form .forminator-checkbox__wrapper{display:flex!important;align-items:flex-start;gap:12px;padding:14px 16px;background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius)}
.lec-form .forminator-checkbox{position:relative;flex:none;margin:2px 0 0!important;padding:0!important}
.lec-form .forminator-checkbox input{position:absolute;opacity:0;width:22px;height:22px;margin:0;cursor:pointer;z-index:1}
.lec-form .forminator-checkbox-box{display:block!important;width:22px!important;height:22px!important;border:2px solid #9DB0A5!important;border-radius:5px!important;background:#fff!important;position:relative!important;transition:background .15s,border-color .15s}
.lec-form .forminator-checkbox input:checked+.forminator-checkbox-box{background:var(--c-primary)!important;border-color:var(--c-primary)!important}
.lec-form .forminator-checkbox input:checked+.forminator-checkbox-box::after{content:"";position:absolute;left:6px;top:2px;width:6px;height:11px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.lec-form .forminator-checkbox input:focus-visible+.forminator-checkbox-box{outline:3px solid var(--c-accent);outline-offset:2px}
.lec-form .forminator-checkbox__label{font-size:15px!important;line-height:1.5!important;color:var(--c-ink)!important;margin:0!important;padding:0!important}
/* optional email-updates checkbox */
.lec-form .forminator-field-checkbox .forminator-checkbox{display:flex!important;align-items:flex-start;gap:12px;flex:1 1 auto;margin:0!important;padding:14px 16px!important;background:#FBF6E7;border:1px solid var(--c-gold-soft);border-radius:var(--radius);cursor:pointer;transition:border-color .15s,background .15s}
.lec-form .forminator-field-checkbox .forminator-checkbox:hover{border-color:var(--c-accent)}
.lec-form .forminator-field-checkbox .forminator-checkbox input{left:16px;top:16px}
.lec-form .forminator-field-checkbox .forminator-checkbox-box{flex:none;margin-top:1px}
.lec-form .forminator-checkbox-label{font-size:15px!important;line-height:1.5!important;color:var(--c-ink)!important;margin:0!important;padding:0!important}

/* errors and messages */
.lec-form .forminator-error-message{display:block;margin-top:6px!important;padding:0!important;background:none!important;color:var(--c-alert)!important;font-size:14px!important;font-weight:600}
.lec-form .forminator-has_error input.forminator-input,.lec-form .forminator-has_error textarea,.lec-form .forminator-has_error .select2-selection--single{border-color:var(--c-alert)!important;background:#FFF8F8!important}
.lec-form .forminator-response-message{margin:0 0 18px!important;padding:14px 16px!important;border-radius:var(--radius)!important;font-weight:600;font-size:15.5px;border:0!important}
.lec-form .forminator-response-message:empty,.lec-form .forminator-response-message[aria-hidden="true"]{display:none!important}
.lec-form .forminator-response-message.forminator-success{background:var(--c-mint)!important;color:var(--c-primary-deep)!important;padding:20px 22px!important;font-size:17px;line-height:1.55;border-left:4px solid var(--c-primary)!important;animation:lecUp .5s ease both}
.lec-form .forminator-response-message.forminator-error{background:#FBE9E9!important;color:var(--c-alert)!important}
.lec-form .forminator-response-message p{margin:0;color:inherit!important}
.lec-form .forminator-response-message ul{margin:6px 0 0 18px;list-style:disc}
/* submit */
.lec-form .forminator-row-last{margin:6px 0 0!important}
.lec-form .forminator-button-submit{width:100%;display:inline-flex!important;align-items:center;justify-content:center;gap:8px;padding:15px 22px!important;border-radius:var(--radius)!important;border:2px solid var(--c-primary)!important;background:var(--c-primary)!important;color:#fff!important;font:600 17px/1.2 var(--f-body)!important;cursor:pointer;box-shadow:0 10px 24px -12px rgba(12,90,53,.7)!important;transition:background .15s,transform .15s,box-shadow .15s}
.lec-form .forminator-button-submit:hover{background:var(--c-primary-deep)!important;border-color:var(--c-primary-deep)!important;transform:translateY(-1px)}
.lec-form .forminator-button-submit:disabled{opacity:.7;cursor:progress}
.lec-form .forminator-edit-module{margin-top:12px;font-size:13px}

/* Next / CTA band */
.lec-next{padding:clamp(44px,5vw,64px) 0}
.lec-next-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:30px 34px;border:1px solid var(--c-line);border-radius:var(--radius);background:linear-gradient(120deg,var(--c-surface),#fff)}
.lec-next-in h2{font-size:clamp(24px,2.6vw,30px);margin-bottom:6px}
.lec-next-in p:last-child{color:var(--c-muted)}

/* ---------- Hub ---------- */
.lec-hero-hub .lec-title{max-width:14ch}
.lec-feature{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);border:1px solid var(--c-line);border-radius:calc(var(--radius) * 2);overflow:hidden;background:#fff;box-shadow:var(--shadow);transition:box-shadow .3s,transform .3s}
.lec-feature:hover{transform:translateY(-3px);box-shadow:0 26px 60px -26px rgba(8,63,37,.4)}
.lec-feature-art{position:relative;display:grid;place-items:center;min-height:280px;overflow:hidden;text-decoration:none;background:radial-gradient(circle at 70% 20%,rgba(179,138,38,.4),transparent 55%),linear-gradient(150deg,var(--c-primary-deep),var(--c-primary))}
.lec-feature-art::before{content:"";position:absolute;width:360px;height:360px;border-radius:50%;border:1px solid var(--lec-ring);box-shadow:0 0 0 50px rgba(233,217,168,.04),0 0 0 100px rgba(233,217,168,.03);animation:lecSpin 60s linear infinite}
.lec-feature-no{position:relative;font-family:var(--f-head);font-weight:700;font-size:clamp(96px,12vw,150px);line-height:1;color:#fff;transition:transform .4s}
.lec-feature:hover .lec-feature-no{transform:scale(1.06)}
.lec-feature-tag{position:absolute;left:22px;top:20px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--c-gold-soft)}
.lec-feature-body{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:clamp(24px,3.5vw,40px)}
.lec-feature-body h3{font-size:clamp(24px,2.6vw,32px);line-height:1.2}
.lec-feature-body h3 a{color:var(--c-primary-deep);text-decoration:none}
.lec-feature-body h3 a:hover{text-decoration:underline}
.lec-feature-sub{font-family:var(--f-head);font-style:italic;font-size:18px;color:var(--c-muted)}
.lec-meta-dark{margin-top:6px}
.lec-meta-dark li{background:var(--c-surface);border-color:var(--c-line);color:var(--c-ink)}
.lec-meta-dark .ic{color:var(--c-primary)}
.lec-feature .lec-actions{margin-top:8px}

.lec-list{display:grid;gap:14px}
.lec-row{display:grid;grid-template-columns:64px 160px minmax(0,1fr) 44px;align-items:center;gap:20px;padding:14px 18px 14px 14px;background:#fff;border:1px solid var(--c-line);border-radius:var(--radius);text-decoration:none;color:var(--c-ink);transition:transform .25s,box-shadow .25s,border-color .25s}
.lec-row:hover{transform:translateX(4px);border-color:var(--c-primary);box-shadow:0 14px 30px -16px rgba(8,63,37,.35);color:var(--c-ink)}
.lec-row-no{font-family:var(--f-head);font-weight:700;font-size:34px;color:var(--c-accent);text-align:center}
.lec-row-img{display:block;width:160px;aspect-ratio:16/10;border-radius:4px;overflow:hidden;background:var(--c-mint)}
.lec-row-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.lec-row:hover .lec-row-img img{transform:scale(1.06)}
.lec-row-ph{display:grid;place-items:center;width:100%;height:100%;color:var(--c-primary);background:linear-gradient(150deg,var(--c-mint),var(--c-surface))}
.lec-row-body{display:grid;gap:6px}
.lec-row-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;color:var(--c-muted)}
.lec-row-t{font-family:var(--f-head);font-weight:700;font-size:19px;line-height:1.35;color:var(--c-primary-deep)}
.lec-row-go{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--c-surface);color:var(--c-primary);transition:background .25s,color .25s,transform .25s}
.lec-row:hover .lec-row-go{background:var(--c-primary);color:#fff;transform:rotate(-30deg)}

.lec-why{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr);gap:clamp(28px,5vw,64px);align-items:start}
.lec-why-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.lec-why-list>div{padding:24px 20px;border-radius:var(--radius);background:var(--lec-card);border:1px solid rgba(255,255,255,.12)}
.lec-why-list span{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:rgba(233,217,168,.16);color:var(--c-gold-soft);margin-bottom:12px}
.lec-why-list h3{font-size:19px;margin-bottom:6px}
.lec-why-list p{font-size:15.5px;color:#D6E3DA}

/* ---------- Scroll reveal (only below-the-fold items are hidden, and only with JS) ---------- */
.lec-js .lec [data-rv].rv-wait{opacity:0;transform:translateY(26px)}
.lec-js .lec [data-rv].rv-wait.in{opacity:1;transform:none;transition:opacity .7s ease var(--d,0s),transform .8s cubic-bezier(.2,.7,.2,1) var(--d,0s)}

@keyframes lecUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes lecSpin{to{transform:translateY(-50%) rotate(360deg)}}
.lec-feature-art::before{animation-name:lecSpin2}
@keyframes lecSpin2{to{transform:rotate(360deg)}}
@keyframes lecFloat{from{transform:translate(0,0)}to{transform:translate(-40px,30px)}}
@keyframes lecShine{0%,60%{left:-60%}100%{left:130%}}
@keyframes lecPulse{0%{box-shadow:0 0 0 0 rgba(179,138,38,.7)}100%{box-shadow:0 0 0 12px rgba(179,138,38,0)}}
@keyframes lecFlip{0%{transform:translateY(-35%);opacity:.2}100%{transform:none;opacity:1}}

/* ---------- Responsive ---------- */
@media (max-width:1000px){
	.lec-hero-grid,.lec-about,.lec-reg-grid,.lec-why{grid-template-columns:1fr}
	.lec-glance,.lec-reg-info{position:static}
	.lec-stats-grid{grid-template-columns:1fr 1fr}
	.lec-stat:nth-child(3){border-left:0;padding-left:0}
	.lec-stat:nth-child(n+3){border-top:1px solid var(--c-line)}
	.lec-tracks{grid-template-columns:1fr}
	.lec-objectives{grid-template-columns:1fr 1fr}
	.lec-people{grid-template-columns:1fr}
	.lec-why-list{grid-template-columns:1fr}
	.lec-count-card{max-width:520px}
}
@media (max-width:760px){
	.lec-tl::before,.lec-tl::after{left:9px}
	.lec-tl-item,.lec-tl-item:nth-child(even){width:auto;margin-left:0;padding:0 0 22px 38px}
	.lec-tl-dot,.lec-tl-item:nth-child(even) .lec-tl-dot{left:0;right:auto}
	.lec-feature{grid-template-columns:1fr}
	.lec-feature-art{min-height:180px}
	.lec-row{grid-template-columns:44px minmax(0,1fr);gap:12px}
	.lec-row-img,.lec-row-go{display:none}
	.lec-row-no{font-size:26px}
	.lec-row-t{font-size:17px}
}
@media (max-width:600px){
	.lec-form .forminator-row{flex-direction:column;gap:18px}
	.lec-stats-grid{grid-template-columns:1fr}
	.lec-stat,.lec-stat:nth-child(3){border-left:0;padding:20px 0;border-top:1px solid var(--c-line)}
	.lec-stat:first-child{border-top:0}
	.lec-objectives{grid-template-columns:1fr}
	.lec-person{padding:22px}
	.lec-person-top{flex-direction:column;align-items:flex-start}
	.lec-avatar{width:96px;height:96px}
	.lec-count{gap:6px}
	.lec-unit{padding:12px 2px 8px}
	.lec-next-in{padding:24px}
	.lec-meta li{font-size:14px}
}

@media (prefers-reduced-motion:reduce){
	.lec *,.lec *::before,.lec *::after{animation:none!important;transition:none!important}
	.lec-js .lec [data-rv].rv-wait{opacity:1;transform:none}
	.lec-tl::after{transform:scaleY(1)}
}
@media print{
	.lec [data-rv]{opacity:1!important;transform:none!important}
	.lec-hero-bg,.lec-count-card{display:none}
}
