/* lpen-upcoming.css — the "Coming up next" block inside Elementor template
   38562, embedded on every 2026 course page.

   Every selector is anchored on #lpen-up. The sheet is enqueued site wide, so
   an unanchored rule would reach pages this component never renders on.
   See §18? and [[lpen-anchor-css-on-ids-not-prefix-scoping]]. */

#lpen-up{
  --up-navy:#022E48; --up-ink:#111820; --up-muted:#4A5666; --up-subtle:#6B7684;
  --up-action:#0F5C96; --up-action-hover:#0B4465;
  --up-border:#CFD6DD; --up-border-strong:#78848F;
  --up-surface-2:#EEF2F5; --up-white:#fff;
  --up-r-md:4px; --up-r-lg:8px; --up-r-pill:999px;
  font-family:"Source Sans 3","Source Sans Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  color:var(--up-ink);
}
#lpen-up *,#lpen-up *::before,#lpen-up *::after{box-sizing:border-box}
#lpen-up[hidden]{display:none !important}

#lpen-up .up__eyebrow{font-size:12px;letter-spacing:.09em;text-transform:uppercase;
  font-weight:700;color:var(--up-subtle);margin:0 0 6px}
#lpen-up .up__h{font-size:24px;line-height:1.25;margin:0 0 6px;color:var(--up-navy)}
#lpen-up .up__lead{margin:0 0 20px;color:var(--up-muted);max-width:62ch;font-size:16px;line-height:1.5}

#lpen-up .up__list{list-style:none;margin:0 0 16px;padding:0;border-top:1px solid var(--up-border)}
#lpen-up .up__row{border-bottom:1px solid var(--up-border);margin:0}
#lpen-up .up__row::before{content:none}
#lpen-up .up__link{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:16px;
  align-items:center;padding:14px 8px;text-decoration:none;color:inherit;border-radius:var(--up-r-md)}
#lpen-up .up__link:hover{background:var(--up-surface-2);text-decoration:none}
#lpen-up .up__link:focus-visible{outline:2px solid #6A3FD4;outline-offset:-2px}
#lpen-up .up__when{text-align:center;border:1px solid var(--up-border);border-radius:var(--up-r-md);
  padding:6px 0;background:var(--up-white);line-height:1}
#lpen-up .up__d{display:block;font-size:20px;font-weight:700;color:var(--up-navy)}
#lpen-up .up__m{display:block;font-size:11px;letter-spacing:.07em;text-transform:uppercase;
  color:var(--up-subtle);margin-top:3px}
#lpen-up .up__t{display:block;font-weight:600;font-size:16px;line-height:1.35;color:var(--up-ink);margin:0 0 3px}
#lpen-up .up__sub{display:block;font-size:13px;color:var(--up-subtle)}
#lpen-up .up__tag{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  border:1px solid var(--up-border);border-radius:var(--up-r-pill);padding:4px 10px;
  color:var(--up-muted);white-space:nowrap}
#lpen-up .up__tag--open{border-color:#B9CBD9;background:#F0F6FA;color:#0B4465}
#lpen-up .up__more{display:inline-flex;align-items:center;gap:6px;font-weight:600;
  color:var(--up-action);text-decoration:none;font-size:15px}
#lpen-up .up__more:hover{color:var(--up-action-hover);text-decoration:underline}

#lpen-up .up__band{display:grid;grid-template-columns:1.25fr 1fr;gap:20px;
  margin:28px 0 0;padding-top:28px;border-top:1px solid var(--up-border)}
#lpen-up .up__band--one{grid-template-columns:1fr}
#lpen-up .up__card{border:1px solid var(--up-border);border-radius:var(--up-r-lg);
  padding:20px;background:var(--up-white)}
#lpen-up .up__card-eyebrow{font-size:11px;letter-spacing:.09em;text-transform:uppercase;
  font-weight:700;color:var(--up-subtle);margin:0 0 12px}
#lpen-up .up__poster{position:relative;display:grid;place-items:center;aspect-ratio:16/9;
  border-radius:var(--up-r-md);overflow:hidden;margin:0 0 12px;
  background:linear-gradient(135deg,#02314D 0%,#0F5C96 100%)}
#lpen-up .up__play{width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.92);
  display:grid;place-items:center}
#lpen-up .up__play::after{content:"";border-left:15px solid var(--up-navy);
  border-top:9px solid transparent;border-bottom:9px solid transparent;margin-left:4px}
#lpen-up .up__card-t{font-weight:600;margin:0 0 4px;font-size:16px;line-height:1.35}
#lpen-up .up__card-m{margin:0 0 8px;font-size:13px;color:var(--up-subtle)}
#lpen-up .up__card-note{margin:0;font-size:13px;color:var(--up-muted)}
#lpen-up .up__pass-name{font-size:20px;font-weight:700;color:var(--up-navy);margin:0 0 6px;line-height:1.25}
#lpen-up .up__pass-p{margin:0 0 14px;color:var(--up-muted);font-size:15px;line-height:1.5}
#lpen-up .up__btn{display:inline-block;background:var(--up-action);color:#fff;text-decoration:none;
  font-weight:600;padding:11px 20px;border-radius:var(--up-r-md);font-size:15px;border:0}
#lpen-up .up__btn:hover{background:var(--up-action-hover);color:#fff;text-decoration:none}
#lpen-up a.up__clip{display:block;text-decoration:none;color:inherit}
#lpen-up a.up__clip:hover .up__card-t{color:var(--up-action-hover);text-decoration:underline}

@media (max-width:820px){
  #lpen-up .up__band{grid-template-columns:1fr}
  #lpen-up .up__link{grid-template-columns:52px minmax(0,1fr);row-gap:8px}
  #lpen-up .up__tag{grid-column:2;justify-self:start}
  #lpen-up .up__h{font-size:21px}
}
