/* Course orientation only; legacy course item pages retain their own styles. */
.lc-page { --lc-accent:#339b9c; --lc-text:#216c6e; --fd-accent:#216c6e; }
.lc-page main { min-width:0; }
.lc-page main a:not(.fd-button):not(.fd-card-link):not(.course-mode-navitem):not(.course-chapter-action) { text-underline-offset:4px; }
.lc-page :focus-visible { outline:3px solid #216c6e; outline-offset:4px; }
.lc-page [hidden] { display:none!important; }
.lc-page .lc-navigation { padding-top:16px; padding-bottom:16px; display:flex; flex-wrap:wrap; justify-content:space-between; gap:14px 24px; }
.lc-page .lc-navigation .fd-breadcrumb { padding:0; display:flex; flex-wrap:wrap; gap:12px; }
.lc-page .lc-local-nav { display:flex; flex-wrap:wrap; gap:12px 24px; font-size:15px; }
.lc-page .lc-local-nav [aria-current] { color:var(--lc-text); border-bottom:2px solid var(--lc-accent); }
.lc-page .lc-opening { --fd-section-color:var(--lc-accent); --fd-accent:var(--lc-text); display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:64px; padding-top:24px; padding-bottom:64px; }
.lc-page .lc-opening p { font-size:20px; }
.lc-page .lc-opening .fd-eyebrow { font-size:13px; color:var(--lc-text); margin:0 0 14px; }
.lc-page .lc-opening>img { width:100%; height:360px; object-fit:cover; border-radius:16px; }
.lc-page .lc-opening-no-image { grid-template-columns:minmax(0,1fr); }
@media(max-width:1023px) {
  .lc-page .lc-opening { gap:32px; }
}
@media(max-width:767px) {
  .lc-page .lc-opening { grid-template-columns:minmax(0,1fr); gap:24px; padding-bottom:36px; }
  .lc-page .lc-opening>img { height:230px; }
  .lc-page .lc-opening p:not(.fd-eyebrow) { font-size:18px; }
}
.lc-page .lc-resume { padding-top:44px; padding-bottom:44px; display:flex; align-items:center; justify-content:space-between; gap:30px; border-bottom:1px solid var(--fd-line); }
.lc-page .lc-resume h2 { font-size:26px; margin:0 0 12px; }
.lc-page .lc-resume p { margin:0 0 8px; }
.lc-page .lc-resume .fd-button { flex-shrink:0; }
.lc-page .lc-chapters { padding-top:64px; padding-bottom:64px; }
.lc-page .lc-open { display:flex; justify-content:space-between; color:var(--lc-text); font-weight:600; margin-top:20px; }
.lc-page .lc-status { font-size:15px; font-weight:600; color:var(--lc-text); }
.lc-page .lc-page-range { text-align:center; color:var(--fd-muted); font-size:15px; margin:36px 0 16px; }
.lc-page .lc-pagination { display:flex; justify-content:center; flex-wrap:wrap; gap:8px; }
.lc-page .lc-pagination a { min-width:44px; padding:10px 16px; text-align:center; border:1px solid var(--fd-line); border-radius:8px; }
.lc-page .lc-pagination [aria-current] { background:var(--lc-text); color:#fff; border-color:var(--lc-text); }
.lc-page .course-page-inner,.lc-page .container { width:100%; max-width:1256px; margin:0 auto; padding-left:28px; padding-right:28px; }
.lc-page .course-section { padding:64px 0; }
.lc-page .course-section + .course-section { border-top:1px solid var(--fd-line); }
.lc-page .course-section-header { margin-bottom:30px; }
.lc-page .course-section h2 { font-size:34px; line-height:1.2; margin:0 0 24px; }
.lc-page .course-section h3 { font-size:21px; line-height:1.35; margin:0 0 16px; }
.lc-page .course-section p { margin:0 0 20px; max-width:80ch; }
.lc-page .course-section a,.lc-page .course-mode-intro a,.lc-page .course-mode-sidebar-copy a { color:var(--lc-text); text-decoration:underline; }
.lc-page .course-story-row { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:64px; }
.lc-page .course-story-copy { min-width:0; }
.lc-page .course-image-placeholder img { display:block; width:100%; height:auto; border-radius:14px; }
.lc-page .course-decision-grid,.lc-page .course-include-grid,.lc-page .course-faq-grid { display:grid; grid-template-columns:1fr 1fr; gap:36px 64px; }
.lc-page .course-skill-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:32px; }
.lc-page .course-include-grid { margin-top:36px; }
.lc-page .course-section ul { padding-left:22px; }
.lc-page .course-section li { padding-bottom:8px; }
.lc-page .course-table-wrap { overflow-x:auto; max-width:100%; }
.lc-page .course-comparison-table { border-collapse:collapse; min-width:720px; width:100%; text-align:left; font-size:16px; }
.lc-page .course-comparison-table th,.lc-page .course-comparison-table td { padding:18px 20px; border-bottom:1px solid var(--fd-line); vertical-align:top; }
.lc-page .course-comparison-table th { background:#edf7f6; }
.lc-page .course-trust-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; padding:20px 0 32px; }
.lc-page .course-trust-item strong { display:block; font-family:Montserrat,sans-serif; font-size:42px; color:var(--lc-text); }
.lc-page .course-trust-item span { display:block; max-width:25ch; }
.lc-page .course-trust-note { color:var(--fd-muted); font-size:15px; }
.lc-page .course-faq-hero { padding:40px 0 48px; }
.lc-page .course-faq-hero h1 { font-size:clamp(32px,4vw,52px); line-height:1.15; margin:12px 0 28px; }
.lc-page .course-faq-hero p { max-width:none; font-size:20px; }
.lc-page .course-program-intro h1,.lc-page .course-program-intro p { max-width:none; }
.lc-page .course-faq-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px 26px; margin-top:24px; }
.lc-page .course-primary-link,.lc-page .course-mode-btn-primary { background:var(--lc-text); color:#fff!important; border:1px solid var(--lc-text); }
.lc-page .course-primary-link,.lc-page .course-secondary-link,.lc-page .course-mode-btn { display:inline-flex; align-items:center; justify-content:center; padding:12px 20px; border-radius:8px; font-family:Montserrat,sans-serif; font-size:13px; font-weight:600; text-decoration:none!important; cursor:pointer; }
.lc-page .course-secondary-link,.lc-page .course-mode-btn-secondary { color:var(--lc-text); border:1px solid var(--fd-line); background:#fff; }
.lc-page .lc-toc { margin-bottom:56px; border-top:1px solid var(--fd-line); border-bottom:1px solid var(--fd-line); padding:28px 0; }
.lc-page .lc-toc h2 { font-size:22px; }
.lc-page .lc-toc>div { display:grid; grid-template-columns:1fr 1fr; gap:12px 40px; font-size:16px; }
.lc-page .lc-toc a { text-decoration:none; }
.lc-page .course-program-list { display:grid; grid-template-columns:1fr 1fr; gap:48px 64px; }
.lc-page .course-program-card { border-top:1px solid var(--fd-line); padding:28px 0 0; min-width:0; }
.lc-page .course-program-card h2 { font-size:28px; }
.lc-page .course-program-card h3 { font-size:18px; margin-top:26px; }
.lc-page .course-program-meta { display:flex; gap:20px; font-size:14px; color:var(--lc-text); margin-bottom:18px; font-weight:600; }
.lc-page .course-program-open { display:inline-block; margin:12px 0; font-weight:600; }
.lc-page .lc-faq-topics { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:20px; }
.lc-page .lc-faq-topics a { padding:10px 16px; border:1px solid var(--fd-line); border-radius:var(--fd-control-radius); font-size:15px; text-decoration:none; }
.lc-page .lc-faq-topics a:hover { background:#edf7f6; border-color:var(--lc-accent); }
.lc-page .lc-faq-hint { color:var(--fd-muted); font-size:15px; margin-bottom:36px; }
.lc-page .lc-faq-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:40px 48px; align-items:start; }
.lc-page .lc-faq-group { min-width:0; border-top:1px solid var(--fd-line); padding-top:22px; }
.lc-page .lc-faq-group h2 { font-size:24px; margin-bottom:14px; }
.lc-page .lc-faq-item { border-bottom:1px solid var(--fd-line); }
.lc-page .lc-faq-item summary { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 0; cursor:pointer; font-size:17px; font-weight:600; line-height:1.5; list-style:none; }
.lc-page .lc-faq-item summary::-webkit-details-marker { display:none; }
.lc-page .lc-faq-item summary::after { content:'+'; color:var(--lc-text); font-size:24px; font-weight:400; flex-shrink:0; width:24px; text-align:center; }
.lc-page .lc-faq-item[open] summary::after { content:'\2212'; }
.lc-page .lc-faq-item summary:hover,.lc-page .lc-faq-item[open] summary { color:var(--lc-text); }
.lc-page .lc-faq-answer { padding:0 28px 20px 0; font-size:16px; line-height:1.7; }
.lc-page .lc-faq-answer p { margin:0; }
@media(max-width:767px) {
  .lc-page .lc-faq-groups { grid-template-columns:1fr; gap:32px; }
  .lc-page .lc-faq-topics a { font-size:14px; padding:8px 12px; }
  .lc-page .lc-faq-group h2 { font-size:22px; }
}
.lc-page .course-faq-end-panel { max-width:800px; margin:auto; }
.lc-page [id] { scroll-margin-top:110px; }
.lc-page .course-mode-hero { padding-top:32px; padding-bottom:56px; }
.lc-page .course-mode-hero>.row { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:64px; align-items:start; }
.lc-page .course-mode-eyebrow,.lc-page .course-mode-type { font-size:13px; text-transform:uppercase; letter-spacing:.1em; font-weight:600; color:var(--lc-text); margin-bottom:16px; }
.lc-page .course-mode-title { font-size:clamp(32px,4vw,52px); line-height:1.15; margin:0 0 28px; }
.lc-page .course-mode-intro { font-size:20px; overflow-wrap:anywhere; }
.lc-page .course-mode-intro p { text-align:left!important; font:inherit; }
.lc-page .course-mode-intro img { max-width:100%!important; height:auto!important; border-radius:12px; }
.lc-page .course-mode-intro iframe { max-width:100%; }
.lc-page .course-mode-intro table { display:block; overflow-x:auto; max-width:100%; }
.lc-page .course-mode-statbar { display:flex; gap:24px; margin:28px 0; }
.lc-page .course-mode-stat-label { display:block; font-size:13px; color:var(--fd-muted); }
.lc-page .course-mode-stat-value { display:block; font-weight:600; font-size:24px; }
.lc-page .course-mode-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-top:24px; }
.lc-page .course-chapter-cover-image { width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; border-radius:16px; display:block; }
.lc-page .course-chapter-cover-copy { padding:24px 0 0; }
.lc-page .course-mode-sidebar-copy { margin:0 0 16px; font-size:17px; }
.lc-page .course-mode-layout { padding-bottom:64px; }
.lc-page .course-mode-layout>.row { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:64px; }
.lc-page .course-mode-layout>.row>* { min-width:0; }
.lc-page .course-chapter-background-card { border-top:1px solid var(--fd-line); padding:32px 0; }
.lc-page .course-chapter-background-card h2 { font-size:28px; }
.lc-page .course-chapter-list-card { padding-top:28px; }
.lc-page .course-chapter-mobile-tip { color:var(--fd-muted); font-size:15px; margin-bottom:24px; }
.lc-page .course-chapter-list { display:flex; flex-direction:column; }
.lc-page .course-chapter-item { display:block; padding:24px 0; border-top:1px solid var(--fd-line); }
.lc-page .course-chapter-item:last-child { border-bottom:1px solid var(--fd-line); }
.lc-page .course-chapter-item:hover strong { color:var(--lc-text); text-decoration:underline; }
.lc-page .course-chapter-item-top { display:flex; gap:12px; justify-content:space-between; flex-wrap:wrap; margin-bottom:12px; }
.lc-page .course-mode-navmeta { display:flex; flex-wrap:wrap; gap:12px; color:var(--fd-muted); font-size:13px; }
.lc-page .course-mode-status { color:var(--lc-text); font-weight:700; }
.lc-page .course-chapter-item strong { font:600 22px Montserrat,sans-serif; }
.lc-page .course-chapter-item p { margin:10px 0; }
.lc-page .course-chapter-item-action { color:var(--lc-text); font-weight:600; font-size:15px; }
.lc-page .course-chapter-item-badge { font-size:12px; font-weight:600; padding:3px 9px; border-radius:5px; background:#e7f3f2; color:#197866; }
.lc-page .course-chapter-item-badge--article,.lc-page .course-chapter-item-badge--words { color:#225b65; background:#e3f5f8; }
.lc-page .course-chapter-item-badge--exercise { color:#006494; background:#e5f2f8; }
.lc-page .course-chapter-item-badge--reading { color:#854219; background:#fff1e5; }
.lc-page .course-chapter-item-badge--chat { color:#843955; background:#faeaf0; }
.lc-page .course-chapter-completion { padding:20px 0; color:var(--lc-text); }
.lc-page .course-mode-sidebar-card:not(.course-chapter-cover-card) { border-top:1px solid var(--fd-line); padding:28px 0; }
.lc-page .course-mode-sidebar-title { font-size:22px; line-height:1.3; margin:0 0 16px; }
.lc-page .course-chapter-action-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.lc-page .course-chapter-action { display:block; text-align:left; border:0; background:none; padding:0; font:inherit; cursor:pointer; color:inherit; }
.lc-page .course-chapter-action-label { display:block; font-size:16px; font-weight:600; color:var(--lc-text); }
.lc-page .course-chapter-action-copy { display:block; font-size:14px; line-height:1.5; margin-top:6px; }
.lc-page .course-sidebar-promo-image { width:100%; height:auto; max-height:280px; object-fit:contain; }
.lc-page .course-feedback-actions { display:flex; flex-wrap:wrap; gap:10px; }
.lc-page .course-feedback-thumb { background:white; border:1px solid var(--fd-line); border-radius:8px; padding:12px 14px; cursor:pointer; font:600 14px 'Source Sans 3',sans-serif; }
.lc-page .course-feedback-thumb.is-selected { border-color:var(--lc-text); background:#edf7f6; }
.lc-page button:disabled { cursor:wait; opacity:.65; }
.lc-page .course-toggle { display:flex; align-items:center; gap:12px; cursor:pointer; font-size:16px; }
.lc-page .course-toggle input { width:22px; height:22px; accent-color:var(--lc-text); }
.lc-page .course-toggle-slider { display:none; }
.lc-page .course-email-feedback,.lc-page .course-feedback-status { font-size:15px; margin:16px 0 0; }
.lc-page .is-success { color:var(--lc-text); }
.lc-page .is-error { color:#9b293b; }
.lc-page .lc-notice { padding-top:16px; padding-bottom:16px; color:#854219; font-size:16px; }
.lc-page .lc-chapter-picker { position:relative; font-size:14px; }
.lc-page .lc-chapter-picker summary { cursor:pointer; padding:12px; border:1px solid var(--fd-line); border-radius:8px; }
.lc-page .lc-chapter-picker nav { position:absolute; z-index:10; top:100%; left:0; width:230px; max-height:320px; overflow:auto; padding:12px; border:1px solid var(--fd-line); background:#fff; border-radius:8px; box-shadow:0 10px 30px #172b2e1a; }
.lc-page .lc-chapter-picker a { display:block; padding:8px; }
.lc-page .lc-chapter-picker [aria-current] { font-weight:700; color:var(--lc-text); }
.lc-page .course-tutorial-backdrop { position:fixed; inset:0; background:#172b2e66; z-index:1100; }
.lc-page .course-tutorial-card { position:fixed; z-index:1102; width:min(420px,calc(100% - 40px)); right:28px; bottom:28px; max-height:calc(100dvh - 48px); overflow:auto; padding:28px; background:white; border-radius:14px; box-shadow:0 10px 40px #172b2e33; }
.lc-page .course-tutorial-highlight { position:relative; z-index:1101; background:#fff; box-shadow:0 0 0 8px #fff; border-radius:8px; }
.lc-page .course-tutorial-step { font-size:13px; color:var(--fd-muted); }
.lc-page .lc-error { padding-top:72px; padding-bottom:100px; min-height:50vh; }
@media(max-width:1023px) {
  .lc-page .course-story-row,.lc-page .course-mode-hero>.row { gap:32px; }
  .lc-page .course-mode-layout>.row { gap:32px; grid-template-columns:minmax(0,1.6fr) minmax(0,1fr); }
  .lc-page .course-skill-grid { grid-template-columns:1fr 1fr; }
  .lc-page .course-chapter-action-grid { grid-template-columns:1fr; }
}
@media(max-width:767px) {
  .lc-page .course-page-inner,.lc-page .container { padding-left:20px; padding-right:20px; }
  .lc-page .lc-resume { flex-direction:column; align-items:flex-start; padding-top:32px; padding-bottom:32px; }
  .lc-page .lc-chapters,.lc-page .course-section { padding-top:44px; padding-bottom:44px; }
  .lc-page .course-section h2 { font-size:28px; }
  .lc-page .course-story-row,.lc-page .course-decision-grid,.lc-page .course-include-grid,.lc-page .course-faq-grid,.lc-page .course-program-list,.lc-page .course-mode-hero>.row,.lc-page .course-mode-layout>.row { grid-template-columns:1fr; gap:28px; }
  .lc-page .course-trust-grid { grid-template-columns:1fr; gap:20px; }
  .lc-page .course-trust-item span { max-width:none; }
  .lc-page .lc-toc>div { grid-template-columns:1fr; }
  .lc-page .course-mode-hero { padding-top:20px; padding-bottom:32px; }
  .lc-page .course-mode-intro { font-size:18px; }
  .lc-page .course-faq-hero { padding-top:24px; padding-bottom:24px; }
  .lc-page .course-faq-hero p { font-size:18px; }
  .lc-page .course-chapter-action-grid { grid-template-columns:1fr 1fr; }
  .lc-page .course-tutorial-card { right:20px; bottom:20px; }
}
@media(max-width:420px) { .lc-page .course-skill-grid { grid-template-columns:1fr; } .lc-page .course-chapter-item strong { font-size:19px; } }
@media(prefers-reduced-motion:reduce) { .lc-page * { scroll-behavior:auto!important; } }

/* The study environment has its own navigation and layout, using Falo colours.
   Scope this to chapters and lessons: the public course overview is unchanged. */
.lc-chapter-page,.lc-item-page {
  --fd-accent:#216c6e;
  --lc-text:var(--fd-accent);
  --lc-accent:#8fcbcc;
  --li-accent:var(--fd-accent);
  --li-ink:var(--fd-ink);
  --li-line:var(--fd-line);
  --li-tint:#f5f5f5;
  background:#fff;
}
:is(.lc-chapter-page,.lc-item-page) :focus-visible { outline-color:var(--lc-text); }
:is(.lc-chapter-page,.lc-item-page) .course-mode-btn { border-radius:6px; min-height:44px; }
:is(.lc-chapter-page,.lc-item-page) .course-mode-btn-primary:hover { filter:brightness(.9); }
:is(.lc-chapter-page,.lc-item-page) .course-mode-btn-secondary:hover { border-color:var(--lc-text); }
.lc-chapter-page .lc-navigation { border-bottom:1px solid var(--fd-line); }
.lc-chapter-page .course-chapter-shell { background:#fff; }
.lc-chapter-page .lc-chapter-layout { padding-top:36px; }
.lc-chapter-page .course-mode-hero { padding-top:0; padding-bottom:24px; }
.lc-chapter-page .lc-chapter-visual { margin-bottom:32px; }
.lc-chapter-page .course-mode-title { font-size:clamp(32px,3.5vw,44px); margin-bottom:18px; }
.lc-chapter-page .course-mode-eyebrow,.lc-chapter-page .course-mode-type { font-size:11px; letter-spacing:.09em; }
.lc-chapter-page .lc-hero-no-image .course-chapter-cover-card { display:none; }
.lc-chapter-page .lc-hero-no-image .lc-learning-panel { margin-top:0; }
.lc-chapter-page .course-mode-intro { font-size:18px; line-height:1.65; }
.lc-chapter-page .lc-learning-panel { margin-top:24px; padding:20px 0 0; border-top:1px solid var(--fd-line); }
.lc-chapter-page .lc-learning-panel .course-mode-type { margin-bottom:8px; }
.lc-chapter-page .lc-learning-panel p { color:var(--fd-ink); margin-bottom:0; font-size:16px; }
.lc-chapter-page .lc-learning-panel .course-mode-actions { margin-top:16px; }
.lc-chapter-page .lc-progress-track { height:4px; margin-top:16px; background:var(--fd-line); overflow:hidden; }
.lc-chapter-page .lc-progress-track span { display:block; height:100%; background:var(--lc-accent); }
.lc-chapter-page .course-chapter-hero .course-mode-intro > :last-child { margin-bottom:0; }
.lc-chapter-page .lc-chapter-meta { margin:6px 0 18px; font-size:16px; font-weight:600; color:var(--lc-text); }
.lc-chapter-page .lc-background-link { font-size:14px; color:var(--lc-text); text-decoration:underline; }
.lc-chapter-page .course-chapter-hero-actions { gap:10px; margin-top:18px; }
.lc-chapter-page .course-chapter-hero-actions .course-mode-btn { font-family:'Source Sans 3',sans-serif; font-size:14px; padding:8px 12px; }
.lc-chapter-page .course-chapter-hero-actions summary { box-sizing:border-box; min-height:44px; padding:8px 12px; line-height:26px; border-radius:6px; }
.lc-chapter-page .course-chapter-cover-card { padding:0; margin:0; }
.lc-chapter-page .course-chapter-cover-image { aspect-ratio:4/3; border-radius:10px; }
.lc-chapter-page .course-mode-layout>.row { grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:56px; }
.lc-chapter-page .course-mode-card,.lc-chapter-page .course-mode-sidebar-card:not(.course-chapter-cover-card) { border:0; border-top:1px solid var(--fd-line); border-radius:0; padding:24px 0; margin-bottom:16px; background:transparent; }
/* Keep highlighted cards opaque above the tutorial backdrop. */
.lc-chapter-page .course-mode-card.course-tutorial-highlight { background:#fff; border-radius:8px; }
.lc-chapter-page .course-chapter-list-card h2 { font-size:26px; margin-bottom:12px; }
.lc-chapter-page .course-chapter-mobile-tip { margin-bottom:20px; }
.lc-chapter-page .course-chapter-list { gap:0; }
.lc-chapter-page .course-chapter-item { display:grid; grid-template-columns:32px minmax(0,1fr) auto; gap:16px; align-items:start; padding:20px 12px; border:0; border-top:1px solid var(--fd-line); border-left:3px solid transparent; border-radius:0; }
.lc-chapter-page .course-chapter-item:last-child { border-bottom:1px solid var(--fd-line); }
.lc-chapter-page .course-chapter-item.is-next { border-left-color:var(--lc-text); }
.lc-chapter-page .course-chapter-item:hover { background:#f5f5f5; }
.lc-chapter-page .course-chapter-item-copy { min-width:0; overflow-wrap:anywhere; }
.lc-chapter-page .course-chapter-item-top { margin:0 0 8px; }
.lc-chapter-page .course-mode-navmeta { align-items:baseline; }
.lc-chapter-page .course-chapter-item strong { display:block; font-size:19px; line-height:1.4; }
.lc-chapter-page .course-chapter-item p { font-size:16px; line-height:1.5; margin:6px 0 0; }
.lc-chapter-page .course-chapter-item-badge { padding:0; border-radius:0; background:transparent; color:var(--fd-muted); font-size:12px; font-weight:400; }
.lc-chapter-page .course-chapter-item-action { font-size:13px; white-space:nowrap; padding-top:30px; }
.lc-chapter-page .lc-item-number { font-family:Montserrat,Arial,sans-serif; font-size:15px; color:var(--fd-muted); padding-top:27px; font-variant-numeric:tabular-nums; }
.lc-chapter-page .is-next .lc-item-number,.lc-chapter-page .lc-next-label { color:var(--lc-text); font-weight:600; }
.lc-chapter-page .course-chapter-background-card h2 { font-size:26px; }
.lc-chapter-page .course-chapter-background-card .course-mode-intro { max-width:68ch; }
.lc-chapter-page .course-chapter-sidebar .course-mode-type { margin-bottom:16px; }
.lc-chapter-page .course-chapter-action-grid { grid-template-columns:1fr; gap:16px; }
.lc-chapter-page .course-chapter-action + .course-chapter-action { padding-top:16px; border-top:1px solid var(--fd-line); }
.lc-chapter-page .course-mode-sidebar-title { font-size:20px; }
.lc-chapter-page .course-chapter-sidebar .course-mode-sidebar-copy { font-size:16px; }
.lc-chapter-page .course-sidebar-promo-image { max-height:210px; }
.lc-chapter-page .course-feedback-thumb.is-selected { background:#f5f5f5; border-color:var(--lc-text); }
@media(max-width:1023px) {
  .lc-chapter-page .course-mode-hero>.row,.lc-chapter-page .course-mode-layout>.row { gap:32px; }
}
@media(max-width:767px) {
  .lc-chapter-page .lc-chapter-layout { padding-top:24px; }
  .lc-chapter-page .course-mode-hero { padding-bottom:0; grid-area:intro; }
  .lc-chapter-page .lc-chapter-main-column,.lc-chapter-page .lc-chapter-side-column { display:contents; }
  .lc-chapter-page .lc-chapter-layout>.row { grid-template-areas:'intro' 'visual' 'content' 'sidebar'; }
  .lc-chapter-page .lc-chapter-visual { grid-area:visual; margin-bottom:0; }
  .lc-chapter-page .lc-chapter-content { grid-area:content; }
  .lc-chapter-page .course-chapter-sidebar { grid-area:sidebar; }
  .lc-chapter-page .course-mode-hero>.row,.lc-chapter-page .course-mode-layout>.row { grid-template-columns:minmax(0,1fr); gap:24px; }
  .lc-chapter-page .course-mode-title { font-size:32px; }
  .lc-chapter-page .course-chapter-cover-image { aspect-ratio:2/1; }
  .lc-chapter-page .course-chapter-list-card h2 { font-size:24px; }
  .lc-chapter-page .course-chapter-item { grid-template-columns:24px minmax(0,1fr); gap:10px; padding:16px 10px; }
  .lc-chapter-page .course-chapter-item-action { grid-column:2; padding:0; }
  .lc-chapter-page .course-chapter-item strong { font-size:18px; }
  .lc-chapter-page .lc-item-number { padding-top:27px; font-size:14px; }
  .lc-chapter-page .course-mode-layout { padding-bottom:24px; }
}

/* Compact chapter navigation on the lesson programme. */
.lc-page form.lc-chapter-picker { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px 32px; padding:0 0 28px; margin-bottom:40px; border-bottom:1px solid var(--fd-line); }
.lc-page .lc-chapter-picker-copy label { display:block; font-size:19px; font-weight:600; color:var(--lc-text); margin-bottom:8px; }
.lc-page .lc-chapter-picker-copy p { font-size:15px; margin:0; }
.lc-page .lc-chapter-picker-controls { display:flex; flex-wrap:wrap; gap:12px; max-width:100%; }
.lc-page .lc-chapter-picker select { min-width:0; width:320px; max-width:100%; padding:13px 16px; border:1px solid var(--lc-accent); border-radius:8px; background:#fff; color:var(--lc-text); font:inherit; font-size:16px; cursor:pointer; }
.lc-page .lc-chapter-picker button { cursor:pointer; }
.lc-page .course-program-card:focus { outline:none; }
.lc-page .course-program-card.is-highlighted h2 { animation:lc-chapter-highlight 1.6s ease-out; }
@keyframes lc-chapter-highlight {
  0%,25% { background-color:#edf7f6; color:var(--lc-text); }
  100% { background-color:transparent; }
}
@media(prefers-reduced-motion:reduce) {
  .lc-page .course-program-card.is-highlighted h2 { animation:none; }
}
@media(max-width:767px) {
  .lc-page .lc-chapter-picker-controls,.lc-page .lc-chapter-picker select,.lc-page .lc-chapter-picker button { width:100%; }
}
