/* Learn section extras — tokens come from styles.css. Do not invent colours. */
.main-nav a.is-current{ color:var(--accent); }
.packager-line{ color:var(--muted); font-size:15px; margin:0 0 22px; }
.packager-line strong{ font-family:'Unbounded', sans-serif; font-weight:700; color:var(--heading); }
.learn-alt{ background:var(--bg-alt); }
.learn-hero{ padding:72px 0 28px; border-bottom:1px solid var(--border); background:var(--bg-alt); }
.learn-hero h1{ font-size:clamp(32px,4vw,44px); font-weight:800; letter-spacing:-1.2px; margin-bottom:16px; }
.learn-hero .lead{ font-size:17px; color:var(--muted); max-width:62ch; margin:0 0 18px; }
.learn-meta{ font-family:'Space Mono', monospace; font-size:12px; letter-spacing:1px; text-transform:uppercase; color:var(--muted-dim); }
.learn-narrow{ max-width:760px; }
.learn-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.learn-grid-2{ grid-template-columns:repeat(2,1fr); }
.learn-card{
  display:block; background:var(--surface); border:1px solid var(--border); border-radius:10px;
  padding:24px 22px; text-decoration:none; color:inherit; transition:border-color 150ms ease;
}
.learn-card:hover{ border-color:var(--accent); }
.learn-card h3{ font-family:'Plus Jakarta Sans', sans-serif; font-size:18px; font-weight:600; margin:0 0 8px; }
.learn-card p{ color:var(--muted); font-size:14px; margin:0; }
.learn-card .eyebrow{ margin-bottom:10px; }
.learn-card-action{
  margin-top:14px !important;
  font-family:'Space Mono', monospace; font-size:11px; letter-spacing:1px; text-transform:uppercase; color:var(--accent) !important;
}
.learn-card--film{
  position:relative;
  overflow:hidden;
  grid-column:1 / -1;
  min-height:260px;
  padding:36px 34px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.learn-card--film::before{
  content:'';
  position:absolute; inset:0;
  background:url('videos/stacked-debt-film.jpg') center/cover no-repeat;
  opacity:0.16;
}
:root[data-theme="dark"] .learn-card--film::before{ opacity:0.24; }
.learn-card--film > *{ position:relative; }
.learn-card--film h3{ font-size:24px; }
.learn-path{ display:grid; gap:16px; }
.learn-path-item{
  display:grid; grid-template-columns:64px 1fr; gap:20px; align-items:start;
  text-decoration:none; color:inherit; padding:18px 0; border-bottom:1px solid var(--border);
}
.learn-path-item:last-child{ border-bottom:0; }
.learn-path-item .step-num{ font-family:'Unbounded', sans-serif; font-size:26px; font-weight:700; color:var(--swatch-blue); }
.learn-path-item:nth-child(2) .step-num{ color:var(--swatch-gold); }
.learn-path-item:nth-child(3) .step-num{ color:var(--swatch-green); }
.learn-path-item:nth-child(4) .step-num{ color:var(--swatch-red); }
.learn-path-item h3{ font-family:'Plus Jakarta Sans', sans-serif; font-size:17px; font-weight:600; margin:0 0 6px; }
.learn-path-item p{ color:var(--muted); font-size:14.5px; margin:0; }
.learn-article{ padding:48px 0 72px; }
.learn-article h2{ font-size:24px; margin:32px 0 12px; }
.learn-article h3{ font-family:'Plus Jakarta Sans', sans-serif; font-size:18px; font-weight:600; margin:24px 0 8px; }
.learn-article p, .learn-article li{ font-size:16px; line-height:1.7; color:var(--text); }
.learn-article p{ margin:0 0 16px; }
.learn-article ul, .learn-article ol{ margin:0 0 18px; padding-left:1.2em; }
.learn-article a{ color:var(--accent); }
.learn-article a:hover{ text-decoration:underline; }
.learn-muted{ color:var(--muted); font-size:14px; }
.learn-player{ background:#111; border-radius:10px; overflow:hidden; aspect-ratio:16/9; position:relative; }
.learn-player video{ width:100%; height:100%; display:block; }
.learn-transcript{ margin:18px 0 28px; color:var(--muted); }
.learn-transcript summary{ cursor:pointer; font-family:'Space Mono', monospace; font-size:12px; letter-spacing:1px; text-transform:uppercase; color:var(--accent); }
.learn-pager{ display:flex; justify-content:space-between; gap:16px; margin-top:40px; padding-top:24px; border-top:1px solid var(--border); }
.learn-pager a{ color:var(--accent); text-decoration:none; font-size:14px; max-width:46%; }
.learn-pager a.is-next{ text-align:right; margin-left:auto; }
.learn-pager a span{ display:block; color:var(--heading); font-family:'Unbounded', sans-serif; font-size:15px; margin-top:4px; }
.learn-quiz-block{ margin-top:48px; padding-top:32px; border-top:1px solid var(--border); }
.learn-quiz{ background:var(--surface); border:1px solid var(--border); border-radius:10px; padding:22px; margin:16px 0; }
.learn-quiz-q{ font-size:16px; margin:0 0 14px; }
.learn-choices{ display:grid; gap:8px; }
.learn-choice{
  display:flex; gap:12px; align-items:flex-start; text-align:left;
  background:var(--bg-alt); border:1px solid var(--border); border-radius:8px; padding:12px 14px;
  font:500 14.5px/1.45 'Plus Jakarta Sans', sans-serif; color:var(--text); cursor:pointer;
}
.learn-choice:hover{ border-color:var(--accent); }
.learn-choice-label{ font-family:'Space Mono', monospace; color:var(--accent); font-size:12px; min-width:1.4em; }
.learn-choice.is-right{ border-color:var(--green); background:rgba(44,122,46,.08); }
.learn-choice.is-wrong{ border-color:var(--red); background:rgba(178,31,42,.08); }
.learn-explain{ margin:14px 0 0; color:var(--muted); font-size:14.5px; }
.learn-cta{ background:var(--bg-alt); padding:72px 0; border-top:1px solid var(--border); }
.learn-cta h2{ font-size:28px; margin:0 0 12px; }
.learn-cta p{ color:var(--muted); max-width:54ch; margin:0 0 22px; }
.learn-cta .hero-ctas{ margin:0; }
.learn-tool-layout{ display:grid; grid-template-columns:1.1fr .9fr; gap:40px; align-items:start; padding-bottom:48px; }
.learn-tool-layout > div:last-child{ position:sticky; top:88px; }
.learn-debts-head{ display:flex; justify-content:space-between; align-items:center; gap:12px; margin:28px 0 12px; }
.learn-debt-row{ display:grid; grid-template-columns:1.4fr .7fr .7fr .8fr auto; gap:8px; align-items:end; margin-bottom:10px; }
.film-overlay{
  position:absolute; inset:auto 0 0 0; background:rgba(12,14,18,.94); color:#fff; margin:0; border-radius:0;
  max-height:100%; overflow:auto;
}
.film-overlay .learn-quiz-q, .film-overlay .learn-explain, .film-overlay .learn-choice{ color:#f2efed; }
.film-overlay .learn-choice{ background:#282326; border-color:#3b3537; }
@media (max-width:980px){
  .learn-grid, .learn-grid-2, .learn-tool-layout{ grid-template-columns:1fr; }
  .learn-debt-row{ grid-template-columns:1fr 1fr; }
  .learn-hero h1{ font-size:32px; }
}

/* ============ HANDBOOK CARDS (Director's Handbook articles) ============ */
.handbook-intro p{ font-size:16px; line-height:1.7; color:var(--text); margin:0 0 16px; }
.handbook-card{
  display:flex; gap:20px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:12px;
  padding:28px 26px;
  margin:28px 0;
  box-shadow:0 10px 24px -16px var(--shadow);
  transition:transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}
.handbook-card:hover{ transform:translateY(-4px); }
.handbook-card-icon{
  flex:0 0 auto;
  width:50px; height:50px;
  border-radius:12px;
  display:flex; align-items:center; justify-content:center;
}
.handbook-card-icon svg{ width:24px; height:24px; }
.handbook-card-body{ flex:1; min-width:0; }
.handbook-card-body h2{ font-size:20px; margin:0 0 12px; }
.handbook-card-body p{ margin:0 0 14px; }
.handbook-card-body p:last-child{ margin-bottom:0; }
.handbook-card-body ul, .handbook-card-body ol{ margin:0 0 14px; padding-left:22px; }
.handbook-card-body ul:last-child, .handbook-card-body ol:last-child{ margin-bottom:0; }

.handbook-card[data-accent="blue"] .handbook-card-icon{ background:rgba(46,80,150,0.12); color:var(--swatch-blue); }
.handbook-card[data-accent="gold"] .handbook-card-icon{ background:rgba(198,139,34,0.12); color:var(--swatch-gold); }
.handbook-card[data-accent="green"] .handbook-card-icon{ background:rgba(67,152,64,0.12); color:var(--swatch-green); }
.handbook-card[data-accent="red"] .handbook-card-icon{ background:rgba(196,30,40,0.12); color:var(--swatch-red); }

.handbook-quiz{ margin:0 0 28px; }
.handbook-quiz .learn-quiz{ margin:0; }
.handbook-quiz .eyebrow{ color:var(--accent); }

@media (max-width:640px){
  .handbook-card{ flex-direction:column; gap:14px; padding:22px 20px; }
}

@media (prefers-reduced-motion: reduce){
  .handbook-card{ transition:none; }
}
