:root{color-scheme:light;--ink:#132924;--dark:#102e28;--muted:#4e625a;--paper:#f5f7f2;--line:#dce6dc;--green:#235945;--mint:#d7f3df;--white:#fff;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}body{margin:0}a{color:var(--green);text-underline-offset:.22em}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #2378a2;outline-offset:4px}.skip{position:absolute;left:1rem;top:-8rem;background:white;padding:1rem;z-index:5}.skip:focus{top:1rem}
.site-header,footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem max(5vw,1.25rem);background:white;border-bottom:1px solid var(--line);font-size:.92rem}.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none;font-weight:750;color:var(--ink)}.brand img{object-fit:contain}.site-header>a:last-child{white-space:nowrap}
.hero{background:var(--dark);color:white;position:relative;overflow:hidden}.hero::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 61px,#bce6cb12 62px 63px),repeating-linear-gradient(0deg,transparent 0 61px,#bce6cb12 62px 63px);mask-image:linear-gradient(90deg,transparent 28%,black);pointer-events:none}.hero-inner{position:relative;max-width:1250px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(245px,325px);align-items:end;gap:3.5rem;padding:3.4rem 2rem 3.7rem}.eyebrow{font-size:.73rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800;margin:0 0 .8rem;color:var(--green)}.hero .eyebrow{color:#aee9c0}h1{font-size:clamp(2.7rem,6.3vw,5rem);line-height:.99;letter-spacing:-.06em;margin:0;font-weight:760}.intro{max-width:42rem;line-height:1.6;margin:1.3rem 0 1.1rem;color:#e0efe6;font-size:1.06rem}.facts{display:flex;flex-wrap:wrap;gap:.5rem;margin:0}.facts span{font-size:.82rem;border:1px solid #5f7a6c;border-radius:99px;padding:.33rem .64rem}.progress-card{padding:1.4rem;background:#1a3c32;border:1px solid #507463;border-radius:1rem}.progress-card label{display:block;font-weight:750;margin-bottom:.55rem}.local{margin:.75rem 0 0;color:#d7e9df;font-size:.78rem}progress{width:100%;height:.6rem;border:0;border-radius:9px;background:#517165;display:block;margin-bottom:1.15rem;accent-color:#aae7bc}progress::-webkit-progress-bar{background:#517165;border-radius:9px}progress::-webkit-progress-value{background:#aae7bc;border-radius:9px}
.button{display:inline-block;border:0;cursor:pointer;padding:.7rem 1rem;border-radius:.55rem;background:var(--green);color:white;text-decoration:none;font-weight:700}.button.light{color:#102e28;background:var(--mint)}.button.secondary{background:white;color:var(--green);border:1px solid var(--green)}
.layout{max-width:1250px;margin:auto;padding:2.25rem 2rem 3rem;display:grid;grid-template-columns:255px minmax(0,1fr);gap:1.65rem;align-items:start}.syllabus,.panel{background:white;border:1px solid var(--line);border-radius:1rem}.syllabus{padding:1.15rem}.syllabus h2{margin:.15rem 0 .8rem;font-size:1.05rem}.syllabus ol{list-style:none;padding:0;margin:0}.syllabus a{display:block;text-decoration:none;padding:.65rem;border-radius:.45rem;font-size:.89rem;color:var(--ink);font-weight:680}.syllabus a:hover,.syllabus [aria-current]{background:#e5f1e8;color:#153d30}.syllabus .index{color:var(--green);font-weight:750;margin-right:.45rem}.final-link{border-top:1px solid var(--line);margin-top:.5rem}.panel{padding:clamp(1.15rem,3vw,2.3rem);min-width:0}h2{font-size:clamp(1.6rem,3.3vw,2.35rem);letter-spacing:-.035em;margin:.1rem 0 .75rem}h3{margin:1.65rem 0 .65rem;font-size:1.24rem;letter-spacing:-.02em}p,li{line-height:1.57}.outcome{color:var(--muted);margin:0 0 1.35rem}.lesson-section{border-top:1px solid var(--line);padding:.8rem 0}.lesson-section h3{margin:.2rem 0 .45rem;font-size:1.06rem}.lesson-section p{margin:0 0 .4rem}.lab{background:#edf5ee;border-left:4px solid #619d7d;padding:.95rem 1rem;border-radius:.45rem;margin-top:1rem}.lab h3{margin:0 0 .4rem}.lab p{margin:.35rem 0}.lab summary{margin:.65rem 0 .2rem}.worksheet{margin-top:1rem}summary{font-weight:700;color:var(--green);cursor:pointer}textarea{display:block;width:100%;padding:.6rem;margin-top:.5rem;border:1px solid #82978a;border-radius:.45rem}fieldset{border:1px solid var(--line);border-radius:.55rem;margin:1rem 0;padding:.65rem .8rem .85rem}legend{font-weight:700;padding:0 .32rem}label.option{display:flex;align-items:flex-start;gap:.6rem;margin:.28rem 0;padding:.38rem .4rem;border-radius:.35rem;line-height:1.4}label.option:hover{background:#eef5ed}label.option input{margin:.19rem 0;accent-color:var(--green)}.feedback{padding-left:.45rem;font-size:.89rem;color:#284f3f;margin:.45rem 0 0}.status{margin:.7rem 0 0;font-weight:700}.panel-actions{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;margin-top:1.2rem}.reading{margin:.7rem 0}.score{border-top:1px solid var(--line);padding-top:1rem;margin-top:1rem}
@media(max-width:760px){.hero-inner,.layout{grid-template-columns:1fr;gap:1rem;padding-inline:1rem}.hero-inner{padding-block:2rem}.site-header,footer{padding-inline:1rem}.brand{gap:.45rem;font-size:.82rem}.site-header>a:last-child{font-size:.82rem}.syllabus ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.syllabus a{font-size:.78rem}.syllabus a .index{margin-right:.23rem}footer{flex-wrap:wrap}.panel{padding:1rem}}
@media print{.site-header,.hero,.syllabus,footer,form,.panel-actions{display:none}.layout{display:block;padding:0}.panel{border:0;padding:0}}
.skip-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.local-note{font-size:.82rem;color:var(--muted)}[hidden]{display:none!important}
.terms{margin:1.35rem 0;padding:1rem;background:#edf5ee;border:1px solid var(--line);border-radius:.65rem}.terms h3{margin:0 0 .65rem}.terms dl{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1.1rem}.terms dt{font-weight:750}.terms dd{margin:.16rem 0 0;line-height:1.48;color:var(--muted)}@media(max-width:540px){.terms dl{grid-template-columns:1fr}}
