@font-face {
  font-family: "Source Sans 3";
  src: url("/fonts/source-sans-3-400.woff2") format("woff2");
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
}

.lectera-cover,
.lectera-cover *,
.lectera-cover *::before,
.lectera-cover *::after {
  box-sizing: border-box;
}

.lectera-cover {
  position: relative;
  width: 100%;
  aspect-ratio: 1280 / 960;
  margin: 8px 0 28px;
  overflow: hidden;
  background:
    radial-gradient(80% 70% at 0% 0%, #f7f3ec 0%, transparent 46%),
    radial-gradient(70% 60% at 100% 0%, #f6ecee 0%, transparent 42%),
    radial-gradient(75% 55% at 100% 100%, #eef4fb 0%, transparent 48%),
    radial-gradient(65% 50% at 8% 100%, #f8f4ee 0%, transparent 44%),
    linear-gradient(165deg, #f7fafc 0%, #f4f7fb 42%, #f8f3f1 100%);
  pointer-events: none;
}
.lectera-cover::before,
.lectera-cover::after {
  content: "";
  position: absolute;
  z-index: 0;
  border-radius: 50%;
  pointer-events: none;
}
.lectera-cover::before {
  width: 62%;
  height: 150%;
  left: -18%;
  top: -40%;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.95) 0%, rgba(240, 246, 252, 0.72) 28%, rgba(240, 246, 252, 0) 64%);
  animation: lc-drift 12s ease-in-out infinite;
}
.lectera-cover::after {
  width: 48%;
  height: 120%;
  right: -16%;
  top: -20%;
  background: radial-gradient(circle, rgba(252, 243, 229, 0.95) 0%, rgba(245, 174, 176, 0.22) 32%, rgba(245, 174, 176, 0) 66%);
  animation: lc-drift-b 16s ease-in-out infinite;
}
@keyframes lc-drift {
  0% { transform: translate3d(0, 0, 0); }
  50% { transform: translate3d(115%, 18%, 0); }
  100% { transform: translate3d(0, 0, 0); }
}
@keyframes lc-drift-b {
  0% { transform: translate3d(0, 0, 0); }
  50% { transform: translate3d(-130%, 22%, 0); }
  100% { transform: translate3d(0, 0, 0); }
}
.lectera-screen {
  position: absolute;
  z-index: 1;
  top: 18px;
  right: 18px;
  bottom: 0;
  left: 18px;
  border-radius: 22px 22px 0 0;
  overflow: hidden;
  background: #f0f6fc;
  box-shadow: 0 0 18px rgba(31, 45, 71, 0.08);
}

.project-media.has-live {
  position: relative;
  width: 604px;
  height: auto;
  min-height: 0;
  aspect-ratio: auto;
  overflow: visible;
  background: transparent;
}
.project-media.has-lectera {
  width: 604px;
  min-height: 453px;
  aspect-ratio: 604 / 453;
  overflow: hidden;
}
@media (max-width: 1199.98px) {
  .project-media.has-live { width: 100%; }
  .project-media.has-lectera {
    width: 100%;
    min-height: 0;
    aspect-ratio: 400 / 300;
  }
}

.project-media .lectera-cover,
.project-media .lectera-cover-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  aspect-ratio: auto;
  object-fit: contain;
}

.project-media .lectera-stage {
  transition: none;
}

.lectera-stage {
  position: absolute;
  top: 0;
  left: 0;
  width: 1280px;
  height: 960px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: #f0f6fc;
  color: #1f2d47;
  font-family: "Source Sans 3", "Source Sans Pro", Inter, sans-serif;
  transform-origin: 0 0;
}

.lc-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 52px;
  padding: 0 60px;
  background: #f0f6fc;
  font-size: 16px;
  line-height: 16px;
  letter-spacing: -0.16px;
}
.lc-sticky {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 6;
  display: flex;
  align-items: center;
  height: 50px;
  padding: 0 60px;
  background: #fff;
  opacity: 0;
  visibility: hidden;
}
.lc-sticky p {
  margin: 0;
  width: 100%;
  color: #1f2d47;
  font-size: 18px;
  font-weight: 600;
  line-height: 18px;
  letter-spacing: -0.22px;
  text-align: center;
  white-space: nowrap;
}
.lectera-stage.is-stuck .lc-sticky {
  opacity: 1;
  visibility: visible;
  transition: opacity 160ms ease 460ms;
}
.lc-flow {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  transition: transform 620ms cubic-bezier(0.22, 0.8, 0.3, 1);
}
.lectera-stage.is-stuck .lc-flow {
  transform: translateY(calc(var(--pin, 268px) * -1));
}
.lc-back { display: flex; align-items: center; gap: 8px; }
.lc-back img { width: 20px; height: 20px; }
.lc-cats { display: flex; align-items: center; gap: 8px; color: #33425e; }

.lc-hero {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  padding: 40px 60px;
  flex: 0 0 auto;
  text-align: center;
}
.lc-kicker {
  margin: 0;
  padding: 4px 8px;
  background: #fcf3e5;
  border-radius: 4px;
  color: #fc9c00;
  font-size: 14px;
  line-height: 14px;
  letter-spacing: -0.14px;
}
.lc-title {
  margin: 0;
  width: 960px;
  font-size: 36px;
  font-weight: 700;
  line-height: 42px;
  letter-spacing: -0.65px;
}
.lc-sub {
  margin: 0;
  width: 540px;
  color: #68748b;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: -0.22px;
}

.lc-tabs {
  display: flex;
  justify-content: center;
  gap: 24px;
  background: #f0f6fc;
  border-bottom: 1px solid #dce0e9;
  position: relative;
  z-index: 4;
}
.lectera-stage.is-stuck .lc-tabs {
  background: #fff;
  box-shadow: none;
  transition: background 160ms ease 460ms;
}
.lc-tab {
  margin: 0;
  padding: 16px 0;
  border-bottom: 1px solid transparent;
  color: #33425e;
  font-size: 18px;
  line-height: 18px;
  letter-spacing: -0.22px;
  font-weight: 400;
}
.lc-tab.is-on {
  border-bottom-color: #e73439;
  font-weight: 600;
}
.lectera-stage:has(.panel-reviews.is-on) .lc-side,
.lectera-stage:has(.panel-notes.is-on) .lc-side { display: none; }

.lc-workspace {
  display: flex;
  gap: 24px;
  justify-content: center;
  align-items: flex-start;
  padding: 40px 60px 48px;
  height: auto;
}
.lc-body {
  position: relative;
  width: 720px;
  height: auto;
  flex: 0 0 auto;
}
.lc-panel { display: none; }
.lc-panel.is-on { display: block; }

.lc-lessons {
  width: 720px;
  background: #fff;
  border: 1px solid #dce0e9;
  border-radius: 4px;
  padding: 16px 0;
}
.lc-side {
  width: 416px;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.lectera-stage.is-cert .lc-side .lc-card:nth-child(2) { display: none; }
.lc-pill .when-done,
.lc-go .when-done { display: none; }
.lectera-stage.is-ready .lc-pill .when-idle,
.lectera-stage.is-cert .lc-pill .when-idle,
.lectera-stage.is-ready .lc-go .when-idle,
.lectera-stage.is-cert .lc-go .when-idle { display: none; }
.lectera-stage.is-ready .lc-pill .when-done,
.lectera-stage.is-cert .lc-pill .when-done,
.lectera-stage.is-ready .lc-go .when-done,
.lectera-stage.is-cert .lc-go .when-done { display: inline; }
.lc-card {
  background: #fff;
  border: 1px solid #dce0e9;
  border-radius: 4px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
}
.lc-card .lc-stack,
.lc-card .lc-cert { align-self: stretch; }

.lc-lesson { padding: 12px 24px; }
.lc-lesson-head { display: flex; flex-direction: column; gap: 8px; }
.lc-lesson-top { display: flex; align-items: flex-start; justify-content: space-between; }
.lc-badge {
  margin: 0;
  padding: 4px 8px;
  border: 1px solid #dce0e9;
  border-radius: 20px;
  color: #68748b;
  font-size: 12px;
  line-height: 14px;
  letter-spacing: -0.12px;
  transition: color 220ms ease, border-color 220ms ease;
}
.lc-badge.is-done { color: #1bb343; border-color: #1bb343; }
.lc-badge .when-done { display: none; }
.lc-badge.is-done .when-idle { display: none; }
.lc-badge.is-done .when-done { display: inline; }
.lc-chev { width: 20px; height: 20px; }
.lc-lesson h3 {
  margin: 0;
  color: #33425e;
  font-size: 18px;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: -0.22px;
}
.lc-blurb {
  margin: 12px 0 0;
  color: #68748b;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: -0.16px;
}
.lc-rule { height: 0; margin: 0; border: 0; border-top: 1px solid #dce0e9; }

.lc-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
}
.lc-mark { position: relative; width: 20px; height: 20px; flex: 0 0 auto; }
.lc-mark img {
  position: absolute;
  inset: 0;
  width: 20px;
  height: 20px;
}
.lc-mark .on {
  opacity: 0;
  transform: scale(0.5);
}
.lc-item.is-done .lc-mark .off { opacity: 0; }
.lc-item.is-done .lc-mark .on {
  opacity: 1;
  transform: scale(1);
  transition: transform 280ms cubic-bezier(0.2, 1.4, 0.4, 1), opacity 180ms ease;
}
.lc-item-copy { flex: 1 1 auto; min-width: 0; }
.lc-item-copy p { margin: 0; color: #33425e; font-size: 16px; line-height: 16px; letter-spacing: -0.16px; }
.lc-item-copy .meta { margin-top: 4px; color: #68748b; font-size: 14px; line-height: 14px; letter-spacing: -0.14px; }
.lc-item-ico { width: 16px; height: 16px; flex: 0 0 auto; }

.lc-row { display: flex; align-items: center; gap: 8px; }
.lc-row img { width: 20px; height: 20px; }
.lc-row strong { flex: 1; font-size: 18px; line-height: 24px; letter-spacing: -0.22px; }
.lc-pill {
  margin: 0;
  padding: 4px 8px;
  background: #f0f6fc;
  border-radius: 4px;
  color: #33425e;
  font-size: 14px;
  line-height: 14px;
  letter-spacing: -0.14px;
  font-weight: 400;
}
.lc-field {
  display: flex;
  align-items: center;
  height: 48px;
  padding: 0 16px;
  border: 1px solid #919aaa;
  border-radius: 4px;
  color: #33425e;
  font-size: 18px;
  letter-spacing: -0.22px;
}
.lc-field span { flex: 1; }
.lc-field img { width: 20px; height: 20px; }

.lc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 8px 16px;
  border-radius: 4px;
  border: 0;
  background: #e73439;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
}
.lc-btn.ghost {
  background: transparent;
  border: 1px solid #e73439;
  color: #e73439;
}
.lc-btn.soft { background: #f5aeb0; }
.lectera-stage.is-ready .lc-btn.soft,
.lectera-stage.is-cert .lc-btn.soft { background: #e73439; }
.lc-btn .when-cert { display: none; }
.lectera-stage.is-cert .lc-btn .when-idle { display: none; }
.lectera-stage.is-cert .lc-btn .when-cert { display: inline; }

.lc-days { display: flex; gap: 8px; }
.lc-day {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 8px 0;
  background: #f0f6fc;
  border-radius: 4px;
  color: #68748b;
  font-size: 16px;
  line-height: 16px;
}
.lc-day img { width: 24px; height: 24px; }
.lc-day.is-on { color: #33425e; }
.lc-card h4 { margin: 0; font-size: 18px; line-height: 24px; letter-spacing: -0.22px; }
.lc-card p { margin: 0; color: #68748b; font-size: 16px; line-height: 22px; letter-spacing: -0.16px; }
.lc-stack { display: flex; flex-direction: column; gap: 8px; }
.lc-cert-copy .when-cert { display: none; }
.lectera-stage.is-cert .lc-cert-copy .when-idle { display: none; }
.lectera-stage.is-cert .lc-cert-copy .when-cert { display: block; }
.lc-cert {
  display: grid;
  grid-template-rows: 0fr;
  min-width: 0;
  max-width: 100%;
  margin-top: -24px;
  transition: grid-template-rows 520ms ease, margin-top 520ms ease;
}
.lectera-stage.is-cert .lc-cert { margin-top: 0; }
.lectera-stage.is-cert .lc-cert { grid-template-rows: 1fr; }
.lc-cert-clip { overflow: hidden; min-width: 0; max-width: 100%; }
.lc-cert img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  opacity: 0;
  transform: translateY(12px);
}
.lectera-stage.is-cert .lc-cert img {
  opacity: 1;
  transform: none;
  transition: opacity 420ms ease 80ms, transform 520ms ease 80ms;
}

.lc-notes, .lc-reviews {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  padding: 0;
  box-sizing: border-box;
}
.lc-notes-col, .lc-reviews-col, .lc-rate, .lc-thanks, .lc-trust, .lc-avg, .lc-revs { width: 100%; }
.lc-notes-col { display: flex; flex-direction: column; gap: 24px; }
.lc-note-block { border-bottom: 1px solid #dce0e9; padding-bottom: 16px; }
.lc-note-head { display: flex; align-items: center; gap: 8px; padding: 12px 0; }
.lc-note-head span { flex: 1; }
.lc-note-head img { width: 20px; height: 20px; }
.lc-note-head p { margin: 0; color: #33425e; font-size: 16px; line-height: 16px; }
.lc-note-head .meta { margin-top: 4px; color: #68748b; font-size: 14px; line-height: 14px; }
.lc-note-card {
  background: #fff;
  border: 1px solid #dce0e9;
  border-radius: 4px;
  padding: 24px;
  margin-top: 16px;
}
.lc-note-card p { margin: 0; color: #33425e; font-size: 18px; line-height: 24px; letter-spacing: -0.22px; }
.lc-note-actions { display: flex; justify-content: flex-end; gap: 36px; margin-top: 24px; }
.lc-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #e73439;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
}
.lc-link img { width: 20px; height: 20px; }

.lc-rate, .lc-thanks, .lc-write {
  width: 720px;
  box-sizing: border-box;
  background: #fff;
  border: 1px solid #dce0e9;
  border-radius: 4px;
  padding: 40px 60px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  text-align: center;
}
.lc-write { display: none; }
.lectera-stage.is-write .lc-rate,
.lectera-stage.is-typed .lc-rate { display: none; }
.lectera-stage.is-write .lc-write,
.lectera-stage.is-typed .lc-write { display: flex; }
.lectera-stage.is-posted .lc-write,
.lectera-stage.is-published .lc-write { display: none; }
.lc-write-box {
  width: 100%;
  min-height: 128px;
  box-sizing: border-box;
  padding: 16px;
  background: #fff;
  border: 1px solid #919aaa;
  border-radius: 4px;
  text-align: left;
}
.lc-write-box p { margin: 0; font-size: 18px; line-height: 24px; letter-spacing: -0.22px; }
.lc-write-box .ph { color: #68748b; }
.lc-write-box .tx { display: none; color: #1f2d47; }
.lectera-stage.is-typed .lc-write-box .ph { display: none; }
.lectera-stage.is-typed .lc-write-box .tx { display: block; }
.lc-write-actions { display: flex; gap: 16px; }
.lc-rate h3, .lc-thanks h3, .lc-write h3 {
  margin: 0;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: -0.22px;
}
.lc-stars { display: flex; gap: 12px; }
.lc-big {
  position: relative;
  width: 40px;
  height: 40px;
}
.lc-big img { position: absolute; inset: 0; width: 40px; height: 40px; }
.lc-big .on { opacity: 0; transform: scale(0.6); }
.lc-big.is-on .off { opacity: 0; }
.lc-big.is-on .on {
  opacity: 1;
  transform: scale(1);
  transition: transform 260ms cubic-bezier(0.2, 1.3, 0.4, 1), opacity 160ms ease;
}
.lc-caption { margin: 0; color: #33425e; font-size: 16px; line-height: 22px; letter-spacing: -0.16px; }
.lc-caption .when-rated { display: none; }
.lectera-stage.is-rated .lc-caption .when-idle,
.lectera-stage.is-posted .lc-caption .when-idle { display: none; }
.lectera-stage.is-rated .lc-caption .when-rated,
.lectera-stage.is-posted .lc-caption .when-rated { display: inline; }
.lc-thanks { display: none; }
.lectera-stage.is-posted .lc-rate { display: none; }
.lectera-stage.is-posted .lc-thanks {
  display: flex;
  animation: lc-rise 420ms ease;
}
@keyframes lc-rise {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: none; }
}
.lc-status { display: flex; align-items: center; gap: 12px; font-size: 14px; }
.lc-status .pill {
  padding: 4px 8px;
  border: 1px solid #dce0e9;
  border-radius: 20px;
  color: #68748b;
}
.lc-status .when-pub { display: none; }
.lectera-stage.is-published .lc-status .when-mod { display: none; }
.lectera-stage.is-published .lc-status .when-pub { display: inline; }
.lectera-stage.is-published .lc-status .pill { border-color: #1bb343; color: #1bb343; }
.lc-thanks-review { width: 100%; text-align: left; border-top: 1px solid #dce0e9; padding-top: 16px; }
.lc-rev-top { display: flex; align-items: center; justify-content: space-between; }
.lc-rev-top strong { font-size: 18px; }
.lc-mini-stars { display: flex; align-items: center; gap: 8px; }
.lc-mini-stars img { width: 16px; height: 16px; }
.lc-mini-stars span { display: flex; gap: 4px; }
.lc-thanks-review p { margin: 16px 0 0; color: #68748b; font-size: 18px; line-height: 24px; letter-spacing: -0.22px; }

.lc-trust { display: flex; flex-direction: column; align-items: center; gap: 16px; width: 100%; margin-top: 80px; }
.lc-trust-logo { width: 140px; height: 35px; }
.lc-trust-stars { display: flex; }
.lc-trust-stars img { width: 36px; height: 36px; }
.lc-trust-stars img:last-child { clip-path: inset(0 50% 0 0); }
.lc-trust-score { margin: 0; color: #191919; font-size: 14px; line-height: 16px; }
.lc-quote {
  display: flex;
  align-items: center;
  gap: 28px;
  width: 100%;
}
.lc-quote img.arr { width: 40px; height: 40px; }
.lc-quote img.flip { transform: scaleX(-1); }
.lc-quote-card { flex: 1; color: #191919; font-size: 14px; line-height: 16px; }
.lc-quote-card strong { display: block; margin-bottom: 6px; }
.lc-quote-card p { margin: 0; }
.lc-quote-card .who { margin-top: 12px; color: rgba(0, 0, 0, 0.6); }
.lc-trust-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 15px;
  background: #fff;
  border: 1px solid #219653;
  font-size: 16px;
  line-height: 16px;
}
.lc-trust-btn img { height: 20px; width: auto; }

.lc-avg {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin-top: 24px;
  font-size: 18px;
  line-height: 18px;
}
.lc-avg-l { display: flex; align-items: center; gap: 8px; }
.lc-avg img { width: 20px; height: 20px; }
.lc-revs { width: 100%; margin-top: 16px; }
.lc-rev { padding: 16px 0; border-top: 1px solid #dce0e9; }
.lc-rev strong { font-size: 18px; }
.lc-rev p { margin: 8px 0 0; color: #68748b; font-size: 18px; line-height: 24px; }

.lc-foot {
  display: none;
  flex: 0 0 auto;
  flex-direction: column;
  gap: 24px;
  padding: 40px 60px;
  overflow: hidden;
}
.lc-foot-top { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; }
.lc-foot h5 { margin: 0 0 12px; font-size: 16px; line-height: 24px; }
.lc-foot h5.spaced { margin-top: 24px; }
.lc-foot ul { margin: 0; padding: 0; list-style: none; }
.lc-foot li { font-size: 14px; line-height: 20px; }
.lc-foot .dim { color: #919aaa; font-size: 12px; line-height: 16px; }
.lc-foot .dim li { margin-top: 8px; }
.lc-brand { position: relative; width: 80px; height: 28px; margin-bottom: 8px; }
.lc-brand .word { position: absolute; left: 0; bottom: 2px; width: 64px; height: 16px; }
.lc-brand .mark { position: absolute; right: 0; top: 0; width: 14px; height: 14px; }
.lc-help {
  display: inline-flex;
  margin-top: 8px;
  padding: 8px 16px;
  border: 1px solid #33425e;
  border-radius: 4px;
  color: #33425e;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
}
.lc-app { width: 247px; }
.lc-app p { margin: 0 0 12px; font-size: 12px; line-height: 20px; }
.lc-social { display: flex; gap: 8px; }
.lc-social img { width: 24px; height: 24px; }
.lc-qr { width: 88px; height: 88px; }
.lc-app-row { display: flex; gap: 24px; align-items: flex-start; }
.lc-foot-bot {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  padding-top: 8px;
  border-top: 1px solid #dce0e9;
  color: #919aaa;
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
}
.lc-foot-bot p { margin: 0; width: 247px; }

.lectera-stage.is-lesson .lc-flow,
.lectera-stage.is-lesson .lc-sticky {
  visibility: hidden;
}
.lc-player {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 8;
  display: flex;
  background: #f0f6fc;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
}
.lectera-stage.is-lesson .lc-player {
  opacity: 1;
  visibility: visible;
  transition: opacity 240ms ease;
}
.lc-rail {
  width: 300px;
  flex: 0 0 auto;
  padding: 16px 0 24px;
  overflow: hidden;
}
.lc-rail .lc-back { padding: 0 24px; }
.lc-rail-title {
  margin: 16px 24px;
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
  letter-spacing: -0.28px;
}
.lc-prog {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 0 24px 16px;
}
.lc-prog span {
  background: #e73439;
  color: #fff;
  border-radius: 4px;
  padding: 8px 12px;
  font-size: 16px;
  font-weight: 600;
  line-height: 16px;
}
.lc-prog i {
  display: block;
  width: 160px;
  height: 4px;
  background: #dce0e9;
  position: relative;
}
.lc-prog i::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 28px;
  height: 4px;
  background: #e73439;
}
.lc-rail-item {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 12px 24px;
  color: #33425e;
  font-size: 16px;
  line-height: 16px;
}
.lc-rail-item .meta { color: #68748b; font-size: 14px; line-height: 14px; }
.lc-rail-lesson {
  margin: 12px 24px 0;
  color: #33425e;
  font-size: 18px;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: -0.22px;
}
.lc-rail-item.is-active {
  background: rgba(220, 224, 233, 0.5);
  border-left: 4px solid #e73439;
  padding-left: 20px;
}
.lc-lesson-main {
  flex: 1 1 auto;
  min-width: 0;
  background: #fff;
  box-shadow: 0 8px 16px rgba(51, 66, 94, 0.12);
  padding: 8px 28px 24px;
  overflow: hidden;
}
.lc-lesson-bar {
  display: flex;
  justify-content: space-between;
  margin: 0 -28px 12px;
  padding: 14px 28px;
  border-bottom: 1px solid #dce0e9;
  color: #33425e;
  font-size: 16px;
  line-height: 16px;
}
.lc-of {
  margin: 8px auto 8px;
  width: fit-content;
  padding: 8px 12px;
  background: #f0f6fc;
  border-radius: 4px;
  color: #68748b;
  font-size: 14px;
  line-height: 14px;
}
.lc-lesson-main h3 {
  margin: 0 0 16px;
  text-align: center;
  font-size: 30px;
  line-height: 36px;
  letter-spacing: -0.54px;
}
.lc-auto {
  display: flex;
  align-items: center;
  gap: 16px;
  max-width: 720px;
  margin: 0 auto 16px;
  padding: 16px;
  background: #f0f6fc;
  border: 1px solid #dce0e9;
  border-radius: 4px;
  color: #33425e;
  font-size: 16px;
}
.lc-auto img { width: 32px; height: 16px; }
.lc-video {
  position: relative;
  width: 100%;
  max-width: 720px;
  height: 280px;
  margin: 0 auto 16px;
  overflow: hidden;
  background: #1f2d47;
}
.lc-video > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 20%;
}
.lc-controls {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 16px;
  background: rgba(31, 45, 71, 0.5);
  color: #f9fbfd;
  font-size: 18px;
  font-weight: 600;
}
.lc-controls img { width: 24px; height: 24px; }
.lc-controls span:last-child { margin-left: auto; }
.lc-leave {
  max-width: 720px;
  margin: 0 auto;
  padding: 20px 24px;
  background: #f0f6fc;
  border: 1px solid #dce0e9;
  border-radius: 4px;
}
.lc-leave h4 {
  margin: 0 0 16px;
  font-size: 24px;
  line-height: 32px;
  letter-spacing: -0.38px;
}
.lc-area {
  min-height: 96px;
  padding: 16px;
  background: #fff;
  border: 1px solid #919aaa;
  border-radius: 4px;
}
.lc-area p { margin: 0; font-size: 16px; line-height: 22px; letter-spacing: -0.16px; }
.lc-ph { color: #68748b; }
.lc-typed { display: none; color: #33425e; }
.lectera-stage.is-noted .lc-ph { display: none; }
.lectera-stage.is-noted .lc-typed {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.lc-save {
  margin-top: 16px;
  margin-left: auto;
  background: #f5aeb0;
}
.lc-leave { display: flex; flex-direction: column; align-items: stretch; }
.lc-save { align-self: flex-end; }
.lectera-stage.is-noted .lc-save { background: #e73439; }
.lc-more {
  max-width: 720px;
  margin: 24px auto 0;
}
.lc-more h4 {
  margin: 0 0 16px;
  font-size: 24px;
  line-height: 32px;
  letter-spacing: -0.38px;
}
.lc-more p {
  margin: 0;
  color: #33425e;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: -0.22px;
}
.lc-more p + p { margin-top: 16px; }
.lc-more strong { font-weight: 700; }

@media (prefers-reduced-motion: reduce) {
  .lc-panel, .lc-mark .on, .lc-big .on, .lc-cert, .lc-cert img, .lc-badge { transition: none; }
  .lectera-stage.is-posted .lc-thanks,
  .lectera-cover::before,
  .lectera-cover::after { animation: none; }
}
