/* All rules scoped to the three elective pages; existing course rules are untouched. */
.v22-lesson,.v22-design{color:#25333d;background:#fff;border:1px solid #dce5df;border-radius:20px;padding:clamp(18px,3vw,38px);line-height:1.95;overflow-wrap:anywhere;min-width:0}
.v22-lesson h1{font-size:clamp(25px,3vw,35px);line-height:1.4;color:#214a42;margin:8px 0 18px;text-wrap:balance}
.v22-lesson h2,.v22-design h2{font-size:clamp(21px,2.4vw,25px);line-height:1.5;margin:30px 0 12px;color:#214a42}
.v22-lesson h3{font-size:19px;line-height:1.65;margin:0 0 10px;color:#293e3b}
.v22-lesson p,.v22-design p{margin:12px 0;font-size:17px;line-height:1.95}
.v22-kicker{font-size:14px!important;letter-spacing:.02em;color:#506c63}.v22-lead{font-size:19px!important;color:#405a52}
.v22-map,.v22-reference,.v22-video{margin:28px 0;padding:14px;background:#f6f8f6;border:1px solid #dbe5df;border-radius:16px}
.v22-map>a,.v22-reference>a{display:block;text-align:center;max-width:100%}
.v22-map img{display:block;width:100%;max-width:640px;height:auto;margin:auto;object-fit:contain;border-radius:12px}
.v22-reference img{display:block;max-width:100%;max-height:640px;width:auto;height:auto;object-fit:contain;margin:auto;border-radius:10px}
.v22-video video{display:block;width:100%;max-width:760px;height:auto;max-height:620px;object-fit:contain;margin:auto;background:#182722;border-radius:10px}
.v22-lesson figcaption{font-size:15px;line-height:1.85;margin:14px 0 8px;color:#465a54}
.v22-lesson a,.v22-design a{color:#245f51;text-underline-offset:4px}.v22-lesson a:hover{color:#153c31}
.v22-map-text{padding-left:23px;line-height:1.8;margin:12px 0 0;font-size:16px}
.v22-case{border-left:4px solid #9fbfad;padding:2px 20px 10px;background:#f4f8f2;border-radius:0 14px 14px 0}.v22-case h2{margin-top:18px}
.v22-copy-material{white-space:pre-line}.v22-walk>ol{list-style:none;padding:0;margin:12px 0;counter-reset:walk}
.v22-walk>ol>li{counter-increment:walk;border-top:1px solid #dce7e1;padding:22px 0 18px}.v22-walk h3:before{content:counter(walk,decimal-leading-zero);display:inline-block;color:#577c69;font-size:14px;font-weight:600;margin-right:12px}
.v22-purpose{color:#53665e;font-size:16px!important}.v22-result{padding:10px 15px;background:#eef5f0;border-radius:10px}
.v22-lesson details{margin:10px 0;background:#faf8f2;border:1px solid #e5dec9;border-radius:10px;padding:10px 14px}.v22-lesson summary{cursor:pointer;font-size:16px;line-height:1.75;color:#685634}
.v22-terms dl{margin:14px 0}.v22-terms dl>div{padding:14px 0;border-top:1px solid #e0e7e2}.v22-terms dt{font-size:17px;line-height:1.75}.v22-terms dt b{display:inline-block;margin-left:10px;color:#315c4b}.v22-terms dd{margin:6px 0 0;font-size:16px;line-height:1.85;color:#465a51}
.v22-save{padding:2px 18px 12px;border:1px solid #c9dcd2;background:#f1f7f3;border-radius:14px}.v22-save h2{margin-top:18px}.v22-stage{margin:26px 0;border-top:2px solid #c2d5cb}
.v22-lesson .v09-course-exam{margin-top:30px}.v22-lesson .v09-exam-options label{min-width:0;overflow-wrap:anywhere}.v22-design{margin:22px 0}
@media(max-width:600px){.v22-lesson,.v22-design{padding:18px 15px;border-radius:14px}.v22-lesson p,.v22-design p{font-size:16px;line-height:1.95}.v22-map,.v22-reference,.v22-video{padding:8px;margin:22px 0}.v22-map-text{font-size:15px}.v22-case{padding-left:14px;padding-right:12px}.v22-save{padding-left:13px;padding-right:13px}.v22-lesson h3{font-size:18px}.v22-lesson .v09-course-exam{padding:15px}.v22-lesson figcaption{font-size:14px}.v22-terms dt b{margin-left:0;display:block}.v22-walk>ol>li{padding-top:18px}}
@media(prefers-reduced-motion:reduce){.v22-lesson *{scroll-behavior:auto}}
