.cms-reader{padding-top:150px;padding-bottom:80px}.cms-content-heading{max-width:960px;margin-bottom:60px}.cms-content-heading h1{font:clamp(36px,6vw,76px)/1.1 Georgia,serif;margin:20px 0}.cms-content-heading>p:last-child{max-width:720px;font-size:20px;color:#62584e}.cms-content-layout{display:grid;grid-template-columns:230px minmax(0,780px);gap:64px}.cms-content-layout>div{min-width:0}.cms-content-layout>aside nav{position:sticky;top:110px;display:grid;gap:16px}.cms-content-layout>aside h2{font:18px/1.5 inherit}.cms-content-layout>aside a{font-size:14px;line-height:1.5}.lesson-article{font-size:19px;line-height:1.85;overflow-wrap:anywhere}.lesson-article h2{font:clamp(26px,4vw,38px)/1.3 Georgia,serif;margin-top:2em;scroll-margin-top:120px}.lesson-article img{max-width:100%;height:auto;border-radius:12px}.lesson-article pre{overflow:auto;padding:20px;background:#eee6dd}.lesson-article blockquote{border-left:3px solid #bb6c32;padding-left:24px;margin-left:0}.lesson-article table{width:100%;border-collapse:collapse}.lesson-article th,.lesson-article td{border:1px solid #d7c8b9;padding:10px}.lesson-end{border-top:1px solid #dacfc3;margin-top:56px;padding-top:32px}.lesson-end textarea{display:block;width:100%;box-sizing:border-box;margin:14px 0;padding:16px;border:1px solid #c3b3a3;border-radius:8px;font:inherit;background:#fffaf4}.cms-reader-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px}.cms-footer{display:flex;justify-content:space-between;padding-bottom:40px}.cms-preview{position:relative;z-index:300;background:#342d27;color:white;text-align:center;padding:12px;font-size:14px}.cms-preview+.header{position:relative}.cms-preview~.cms-reader{padding-top:60px}@media(max-width:800px){.cms-content-layout{grid-template-columns:1fr;gap:32px}.cms-content-layout>aside nav{position:static}.cms-reader{padding-top:110px}.cms-content-heading{margin-bottom:32px}.lesson-article{font-size:17px}}
.cms-content-layout.no-toc{grid-template-columns:minmax(0,780px);justify-content:center}
html.cms-document{scroll-padding-top:0}
.cms-toc{position:sticky;top:110px;border-block:1px solid #dacfc3;padding-block:12px}
.cms-toc summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;cursor:pointer;list-style:none;font-size:16px;font-weight:600}
.cms-toc summary::-webkit-details-marker{display:none}
.cms-toc summary>span{font-size:20px;transform:rotate(-90deg)}
.cms-toc[open] summary>span{transform:none}
.cms-content-layout>.cms-content-sidebar nav{position:static;display:grid;gap:0;max-height:calc(100vh - 200px);max-height:calc(100dvh - 200px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-block:8px}
.cms-toc a{display:block;padding:10px 12px;border-left:2px solid transparent;color:#74685c;text-decoration:none;overflow-wrap:anywhere}
.cms-toc a:hover{color:#8a4723;background:#eee6dd}
.cms-toc a[aria-current=location]{border-color:#a45528;background:#f1e1d2;color:#84401d;font-weight:600}
.cms-toc a:focus-visible,.cms-toc summary:focus-visible{outline:2px solid #a45528;outline-offset:2px}
.lesson-article [id^=section-]{scroll-margin-top:120px}
.lesson-article figure{margin:32px 0;min-width:0}
.lesson-article figure img{display:block;width:100%;height:auto}
.lesson-article figcaption{font-size:14px;line-height:1.65;color:#665a4f;padding:14px 16px;background:#eee6dd;border-radius:0 0 8px 8px}
.lesson-article table{display:block;max-width:100%;overflow-x:auto}
.lesson-article :is(pre,code){overflow-wrap:normal}
.lesson-article h3{font-size:1.2em;line-height:1.4;margin-top:1.8em}
.lesson-article p{margin:0 0 1em}
.lesson-article h2{letter-spacing:-.025em;margin-bottom:.65em}
.lesson-article h3{letter-spacing:normal;margin-bottom:.65em}
.lesson-article :is(ul,ol){padding-left:1.5em;margin:.75em 0 1.25em}
.lesson-article li+li{margin-top:.45em}
.lesson-article a{color:#93481f;text-decoration:underline;text-underline-offset:3px}
.lesson-article a:hover{color:#6b351a}
.lesson-article .lesson-tags{font-size:.8em;color:#74685c;margin-block:24px}
.lesson-site-next{margin-block:40px}
.lesson-end h2{font-size:clamp(24px,3vw,32px);line-height:1.3;letter-spacing:-.02em;margin-bottom:20px}
@media(max-width:800px){
 .cms-toc{position:static;padding:8px 16px;border:1px solid #dacfc3;border-radius:8px;background:#f4ece3}
 .cms-content-layout>.cms-content-sidebar nav{max-height:50vh;max-height:50dvh}
 .cms-toc a{padding-block:12px}
 .lesson-article figure{margin-block:24px}
 .lesson-article figcaption{font-size:13px;padding:12px}
 .lesson-article [id^=section-]{scroll-margin-top:100px}
}
