.ast-lessons{--yellow:#ffd542;--navy:#06172b;--blue:#075fe4;color:var(--navy);font-family:'Libre Franklin',Arial,Helvetica,sans-serif}.ast-lessons *{box-sizing:border-box}.ast-lessons .lesson-hero{background:var(--navy);color:#fff;padding:56px max(24px,calc((100% - 1120px)/2));display:grid;grid-template-columns:1.12fr 1fr;gap:44px;align-items:center}.ast-lessons .lesson-eyebrow{display:inline-block;background:var(--yellow);color:#111;font-size:13px;letter-spacing:.04em;font-weight:700;border-radius:5px;padding:6px 10px;text-transform:uppercase}.ast-lessons .lesson-hero h1{font-size:clamp(34px,4.5vw,58px);line-height:1.08;font-weight:800;letter-spacing:-.04em;color:#fff;margin:20px 0}.ast-lessons .lesson-hero h1 span{color:var(--yellow)}.ast-lessons .lesson-hero p{font-size:19px;line-height:1.7;color:#f3f4f6;margin:0;max-width:620px}.ast-lessons .lesson-hero-visual{aspect-ratio:16/9;border-radius:12px;border:1px solid #ffffff40;box-shadow:0 14px 40px #0004;overflow:hidden;background-color:#dfe5eb;background-size:cover;background-position:center;position:relative}.ast-lessons .lesson-benefits{max-width:1120px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;padding:26px 24px;font-size:15px;line-height:1.5}.ast-lessons .lesson-benefits span{border-left:3px solid var(--yellow);padding-left:14px}.ast-lessons .lesson-collection{background:#f7f8fa;padding:36px max(24px,calc((100% - 1120px)/2)) 52px}.ast-lessons .lesson-heading-row h2{font-size:31px;font-weight:800;margin:0;color:var(--navy)}.ast-lessons .lesson-heading-row p{margin:6px 0 0;color:#4b5563}.ast-lessons .class-tabs{display:flex;gap:10px;margin:24px 0 20px;flex-wrap:wrap}.ast-lessons .class-tab{border:1px solid #d7dde5;background:#fff;color:var(--navy);font:700 13px 'Libre Franklin',Arial;padding:10px 16px;border-radius:5px;text-transform:uppercase;cursor:pointer}.ast-lessons .class-tab.is-active{background:var(--yellow);border-color:var(--yellow);color:#111}.ast-lessons .lesson-tools{display:flex;gap:18px;align-items:flex-end;justify-content:flex-end;flex-wrap:wrap;margin:-58px 0 14px}.ast-lessons .lesson-tools label{display:grid;gap:6px;font-size:14px;font-weight:600}.ast-lessons input,.ast-lessons select{font:16px Arial;color:var(--navy);background:#fff;padding:12px;border:1px solid #ccd3dc;border-radius:6px;height:auto}.ast-lessons input{width:240px}.ast-lessons .lesson-count{font-size:14px;color:#4b5563;margin:0 0 20px}.ast-lessons .lesson-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.ast-lessons .lesson-card{border:1px solid #e5e7eb;border-radius:9px;overflow:hidden;background:#fff;box-shadow:0 4px 16px #06172b09;display:flex;flex-direction:column;min-width:0;transition:transform .18s ease,box-shadow .18s ease}.ast-lessons .lesson-card[hidden]{display:none}.ast-lessons .lesson-card.is-available:hover{transform:translateY(-2px);box-shadow:0 10px 24px #06172b16}.ast-lessons .lesson-cover{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;background:#dfe5eb}.ast-lessons .lesson-placeholder{aspect-ratio:16/10;display:grid;place-items:center;background:linear-gradient(135deg,#eef2f5,#dce3e9);font-size:54px;font-weight:800;color:#7b8794}.ast-lessons .lesson-card-body{padding:17px;display:flex;flex-direction:column;align-items:flex-start;flex:1;gap:11px}.ast-lessons .lesson-topic{font-size:12px;letter-spacing:.035em;color:var(--blue);font-weight:700;text-transform:uppercase}.ast-lessons .lesson-card h3{font-size:20px;line-height:1.25;margin:0;color:var(--navy);font-weight:700}.ast-lessons .lesson-card p{font-size:15px;line-height:1.55;margin:0 0 5px;color:#334155}.ast-lessons .lesson-open,.ast-lessons .lesson-locked{padding:11px 9px;font-size:13px;font-weight:700;text-transform:uppercase;border-radius:5px;display:block;width:100%;text-align:center;margin-top:auto;line-height:1.5}.ast-lessons .lesson-open{background:var(--navy);color:#fff!important;text-decoration:none!important}.ast-lessons .lesson-open:hover{background:#17436b}.ast-lessons .lesson-locked{background:#e3e6e9;color:#69727c}.ast-lessons .lesson-card.is-pending{opacity:.9}.ast-lessons .lesson-card.is-pending .lesson-cover{filter:grayscale(.65) saturate(.55);opacity:.82}.ast-lessons .lesson-card.is-pending .lesson-cover.is-placeholder{filter:none;opacity:1}.ast-lessons .lesson-card.is-pending:hover{opacity:.96}.ast-lessons .lesson-card.is-pending .lesson-topic{color:#64748b}.ast-lessons .lesson-empty{padding:25px;background:#fff;border-radius:8px;font-size:18px}.ast-lessons .lesson-note{margin:28px 0 0;font-size:14px;color:#4b5563;line-height:1.6}.ast-lessons .lesson-open:focus-visible,.ast-lessons input:focus-visible,.ast-lessons select:focus-visible,.ast-lessons .class-tab:focus-visible{outline:3px solid var(--blue);outline-offset:3px}@media(max-width:1000px){.ast-lessons .lesson-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ast-lessons .lesson-hero{gap:24px}.ast-lessons .lesson-benefits{grid-template-columns:repeat(2,1fr)}.ast-lessons .lesson-tools{margin:0;justify-content:flex-start}}@media(max-width:760px){.ast-lessons .lesson-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ast-lessons .lesson-hero{grid-template-columns:1fr;padding:35px 24px}.ast-lessons .lesson-hero-visual{max-height:240px}}@media(max-width:480px){.ast-lessons .lesson-grid{grid-template-columns:1fr}.ast-lessons .lesson-tools label,.ast-lessons input,.ast-lessons select{width:100%}.ast-lessons .lesson-benefits{font-size:14px;gap:16px}.ast-lessons .lesson-collection{padding:28px 18px}.ast-lessons .lesson-placeholder,.ast-lessons .lesson-cover{aspect-ratio:16/9}}

.ast-lessons .class-tab.is-neutral{background:#fff;border-color:#d7dde5;color:#6b7280;box-shadow:none}

/* v10.5 — uniform lesson card geometry */
.ast-lessons .lesson-card{height:100%}
.ast-lessons .lesson-cover,
.ast-lessons .lesson-placeholder{
  width:100%;
  aspect-ratio:16 / 9;
  height:auto;
  flex:0 0 auto;
  overflow:hidden;
}
.ast-lessons img.lesson-cover{
  display:block;
  width:100%;
  aspect-ratio:16 / 9;
  object-fit:cover;
  object-position:center center;
}
.ast-lessons .lesson-card-body{
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
  min-height:250px;
}
.ast-lessons .lesson-card h3{
  min-height:2.5em;
}
.ast-lessons .lesson-card p{
  min-height:4.65em;
}
.ast-lessons .lesson-open,
.ast-lessons .lesson-locked{
  margin-top:auto;
}
@media(max-width:480px){
  .ast-lessons .lesson-card-body{min-height:0}
  .ast-lessons .lesson-card h3,
  .ast-lessons .lesson-card p{min-height:0}
}

/* v10.6 — real fixed image frame (the img intrinsic ratio can no longer change card geometry) */
.ast-lessons .lesson-cover-frame{
  width:100%;
  aspect-ratio:16 / 9;
  overflow:hidden;
  flex:0 0 auto;
  background:#eef1f4;
}
.ast-lessons .lesson-cover-frame .lesson-cover{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  aspect-ratio:auto;
  object-fit:cover;
  object-position:50% 50%;
  margin:0;
  padding:0;
  border:0;
}
@supports not (aspect-ratio: 16 / 9){
  .ast-lessons .lesson-cover-frame{position:relative;height:0;padding-top:56.25%}
  .ast-lessons .lesson-cover-frame .lesson-cover{position:absolute;inset:0}
}
