/* Раздел «Курсы» — layouts/courses/list.html */
.c-group{margin:34px 0 0}
.c-group:first-of-type{margin-top:6px}
.c-gh{font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);padding-bottom:12px;border-bottom:1px solid var(--line)}
.c-feat{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:34px;padding:26px 0 30px;border-bottom:1px solid var(--line)}
.c-feat .thumb{aspect-ratio:16/10}
.c-feat h2{font-family:var(--display);font-weight:700;font-size:30px;line-height:1.15;margin:4px 0 12px}
.c-date{font-family:var(--display);font-weight:700;font-size:20px;color:var(--accent-ink);margin-bottom:4px}
.c-facts{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:12px;font-family:var(--mono);font-size:12px;color:var(--muted)}
.c-who{font-size:14px;color:var(--ink-2);margin-top:10px;line-height:1.55}
.c-role{color:var(--muted)}
.c-act{display:flex;gap:18px;align-items:center;margin-top:16px;flex-wrap:wrap}
.c-act a.lnk{font-size:14.5px;color:var(--accent-ink);border-bottom:1px solid currentColor;text-decoration:none}
.c-contract{font-size:14px;color:var(--ink-2);margin-top:14px;line-height:1.5}
.c-contract a{color:var(--accent-ink);text-decoration:none;border-bottom:1px solid var(--line);white-space:nowrap}
.c-past{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}
.c-past .yr{font-family:var(--mono);font-size:12.5px;color:var(--muted);padding-top:4px}
.c-past h3{font-family:var(--display);font-weight:600;font-size:19px;margin:0 0 6px}
/* Прошедшие — на подложке во всю ширину (вариант А, 19.10.2026).
   Полоса через box-shadow + clip-path: без 100vw, поэтому нет горизонтального скролла. */
.c-group.is-past{margin-top:48px;padding:30px 0 34px;background:var(--panel);
  box-shadow:0 0 0 100vmax var(--panel);clip-path:inset(0 -100vmax)}
.c-group.is-past .c-gh{color:var(--ink-2);border-bottom-color:var(--line-2)}
.c-group.is-past .c-past{border-bottom-color:var(--line-2)}
.c-group.is-past .c-past:last-child{border-bottom:none}
.c-group.is-past h3{font-size:17px;color:var(--ink-2)}
.c-group.is-past .ri-desc,.c-group.is-past .c-who{color:var(--muted);font-size:13.5px}
/* Страница прошедшего курса — layouts/courses/course-recap*.html (21.10.2026) */
.r-head{padding:14px 0 0}
.r-head .eyebrow{margin-bottom:12px}
.r-head h1{margin:0}
.r-about{padding:4px 0 0}
.r-meta{font-family:var(--mono);font-size:12.5px;color:var(--muted);letter-spacing:.02em}
.r-cover{margin:20px 0 14px}
.r-cover a{display:block}
.r-cover img{width:100%;aspect-ratio:2/1;object-fit:cover;object-position:50% 45%;display:block}
.r-dayblock{margin-top:40px}
.r-dayrow{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:36px;padding-top:20px}
.r-prog h2{font-family:var(--display);font-weight:700;font-size:26px;line-height:1.2;margin:0 0 14px}
.r-prog h4{font-family:var(--mono);font-weight:500;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:18px 0 6px}
.r-prog ul{margin:0;padding-left:20px;font-size:15.5px;line-height:1.5;color:var(--ink-2)}
.r-prog li{margin:4px 0}
.r-dn{font-family:var(--display);font-weight:700;font-size:15px;color:var(--accent-ink);margin-bottom:4px}
.r-ph3{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;align-content:start}
.r-ph4{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;padding-top:20px}
.r-days2{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding-top:20px}
.r-ph3 a,.r-ph4 a{display:block;overflow:hidden;background:var(--panel)}
.r-ph3 img,.r-ph4 img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;transition:transform .25s}
.r-ph3 a:hover img,.r-ph4 a:hover img{transform:scale(1.04)}
.r-next{margin-top:52px;padding:30px 0 34px;background:var(--panel);box-shadow:0 0 0 100vmax var(--panel);clip-path:inset(0 -100vmax)}
.r-next .c-gh{color:var(--ink-2);border-bottom-color:var(--line-2)}
.r-next-in{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:30px;padding-top:20px}
.r-next .thumb{aspect-ratio:16/10}
.r-next h2{font-family:var(--display);font-weight:700;font-size:24px;line-height:1.2;margin:4px 0 10px}
.r-theory{font-size:14px;color:var(--muted);margin:26px 0 8px}
.r-theory a{color:var(--accent-ink)}
/* просмотр фото */
.lbx{position:fixed;inset:0;z-index:1000;background:rgba(20,14,8,.94);display:none;align-items:center;justify-content:center}
.lbx.on{display:flex}
.lbx figure{margin:0;max-width:94vw;max-height:92vh;display:flex;flex-direction:column;align-items:center}
.lbx img{max-width:94vw;max-height:84vh;object-fit:contain;display:block}
.lbx figcaption{color:#e9dfd2;font-size:14px;margin-top:10px;text-align:center}
.lbx button{position:absolute;-webkit-appearance:none;appearance:none;border:0;background:none;color:#fff;cursor:pointer;
  font-size:44px;line-height:1;width:56px;height:56px;opacity:.8}
.lbx button:hover{opacity:1}
.lbx-x{top:10px;right:10px;font-size:28px!important}
.lbx-p{left:6px;top:50%;transform:translateY(-50%)}
.lbx-n{right:6px;top:50%;transform:translateY(-50%)}
@media(max-width:900px){
  .r-head h1{font-size:26px;line-height:1.2}
  .r-cover{margin:14px -20px 12px}
  .r-cover img{aspect-ratio:3/2}
  .r-dayrow,.r-days2,.r-next-in{grid-template-columns:1fr;gap:18px}
  .r-ph3{grid-template-columns:1fr 1fr}
  .r-ph4{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:6px;margin-right:-20px;padding-right:20px}
  .r-ph4 a{flex:0 0 62%;scroll-snap-align:start}
  .r-prog h2{font-size:22px}
  .lbx-p,.lbx-n{display:none}
}
@media(max-width:900px){.c-feat{grid-template-columns:1fr;gap:16px}.c-feat h2{font-size:25px}.c-past{grid-template-columns:1fr;gap:4px}}

/* вводная фраза и темы дня */
.r-lead{font-family:var(--display);font-size:20px;line-height:1.45;color:var(--ink);margin:0 0 14px;max-width:46em}
.r-intro{margin:0;font-size:15.5px;line-height:1.5;color:var(--ink-2)}
.r-topics li{margin:6px 0}
.r-art{font-family:var(--mono);font-size:12px;letter-spacing:.02em;color:var(--accent);white-space:nowrap;text-decoration:none;border-bottom:1px solid var(--accent-wash)}
.r-art:hover{border-bottom-color:var(--accent)}
@media(max-width:700px){.r-lead{font-size:17.5px}}
