.publications .course-cards{align-items:stretch;gap:1.25rem}
.publications .course-card{display:flex;flex-direction:column;background:var(--paper);color:var(--ink);border:1px solid rgba(255,255,255,.16);text-decoration:none;transition:transform .25s,box-shadow .25s}
.course-card:hover{transform:translateY(-4px);box-shadow:0 16px 35px rgba(0,0,0,.2)}
.course-card:focus-visible{outline:3px solid #c5a586;outline-offset:5px}
.publications .course-card>img{aspect-ratio:16/10;object-position:center;filter:saturate(.85);width:100%;height:auto}
.publications .course-card>.course-card-copy{display:flex;flex-direction:column;flex:1;padding:1.5rem;gap:.85rem;min-height:265px}
.course-card-copy .course-category{font:600 .875rem "DM Sans",Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#775438}
.course-card-copy strong{font:500 clamp(1.3rem,2.2vw,1.75rem)/1.2 "Manrope",Arial,sans-serif;letter-spacing:-.025em}
.course-card-copy .course-description{font:400 1rem/1.6 "DM Sans",Arial,sans-serif;color:#423f3a}
.course-card-copy .course-card-action{font:600 .94rem "DM Sans",Arial,sans-serif;margin-top:auto;padding-top:1rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}
.course-card-action .reading-time{color:#625d56;font-weight:400}
.lesson-page .information-heading{max-width:1180px;padding-bottom:2rem}
.lesson-page .page-intro{max-width:850px;line-height:1.7}
.lesson-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.875rem;color:#625d56;margin-top:1rem}
.lesson-layout{max-width:1180px;margin:auto;padding:0 var(--pad) 5rem;display:grid;grid-template-columns:215px minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
.lesson-contents{position:sticky;top:104px;border-top:2px solid #775438;padding-top:1rem;font-size:.94rem}
.lesson-contents>p{font-weight:600;margin-bottom:.9rem}
.lesson-contents ol{padding-left:1.2rem;margin:0}.lesson-contents li{padding:.4rem 0;color:#514e49}
.lesson-contents a{text-decoration:underline;text-underline-offset:.2em}
.lesson-copy{min-width:0;font-size:1.05rem;line-height:1.75;overflow-wrap:anywhere}
.lesson-copy h2{font:500 clamp(1.45rem,2.5vw,1.85rem)/1.2 "Manrope",Arial,sans-serif;letter-spacing:-.025em;margin:2.75rem 0 1rem;color:var(--ink)}
.lesson-copy h3{font:600 1.05rem/1.35 "Manrope",Arial,sans-serif;margin:1.7rem 0 .7rem}
.lesson-copy p,.lesson-copy li{color:#423f3a}.lesson-copy li{margin:.6rem 0}
.lesson-copy a{text-decoration:underline;text-underline-offset:.2em}
.lesson-copy section{scroll-margin-top:105px}
.lesson-key{padding:1.5rem;background:#e8e5dd;border-left:3px solid #775438;margin-bottom:2rem}
.lesson-key h2{font-size:1.15rem;margin:0 0 .75rem}.lesson-key p{margin:0}
.lesson-example{padding:1.5rem;border:1px solid #c9c3b8;background:#fff;margin:2rem 0}
.lesson-example h2{margin:0 0 1rem;font-size:1.3rem}
.lesson-example p:last-child{margin-bottom:0}
.lesson-figure{margin:1.5rem 0 2rem}.lesson-figure img{width:100%;max-height:300px;object-fit:cover}
.lesson-figure figcaption{font-size:.875rem;line-height:1.5;color:#625d56;margin-top:.65rem}
.lesson-diagram{margin:1.5rem 0;padding:1rem;background:#fff;border:1px solid var(--line)}
.lesson-diagram svg{display:block;width:100%;height:auto}.lesson-diagram figcaption{font-size:.875rem;color:#625d56;line-height:1.5;margin-top:.75rem}
.lesson-copy dl{margin:1rem 0}.lesson-copy dt{font-weight:600;color:var(--ink);margin:1rem 0 .25rem}.lesson-copy dd{margin:0;color:#423f3a}
.lesson-checks{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}
.lesson-checks>div{padding:1.25rem;background:#e8e5dd}.lesson-checks h3{margin:0 0 .6rem}.lesson-checks p{margin:0}
.lesson-reference-list{font-size:.94rem;line-height:1.65;padding-left:1.2rem}
.lesson-scope{border-top:1px solid var(--line);padding-top:1.5rem;margin-top:2.5rem;font-size:.94rem}
.lesson-related{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:2rem}
.lesson-related a{padding:.65rem .85rem;border:1px solid var(--line);font-size:.94rem}
@media(max-width:1050px){.lesson-layout{grid-template-columns:180px minmax(0,1fr);gap:2rem}.publications .course-card>.course-card-copy{padding:1.15rem}}
@media(max-width:780px){.publications .course-cards{grid-template-columns:1fr}.publications .course-card>img{aspect-ratio:16/9}.publications .course-card>.course-card-copy{min-height:235px}.lesson-layout{grid-template-columns:1fr;gap:2rem}.lesson-contents{position:static}.lesson-copy{font-size:1rem}.lesson-checks{grid-template-columns:1fr}.lesson-page .information-heading{padding-bottom:1.5rem}}
@media(prefers-reduced-motion:reduce){.course-card:hover{transform:none}}
