*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f1e9;color:#26382f;font:17px/1.8 system-ui,sans-serif}header,main,footer{max-width:1120px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}a{color:#205f56;text-underline-offset:4px}h1{font-size:clamp(32px,6vw,62px);line-height:1.2;max-width:850px}h2{font-size:28px;line-height:1.4}h3{line-height:1.5}p{max-width:850px}section,.card{background:#fffdf8;border:1px solid #dedfd3;border-radius:20px;padding:26px;margin:20px 0}.hero{background:#173f36;color:#f8f4e8;padding:40px}.hero a{color:#ffdb91}.tag{font-size:13px;letter-spacing:2px;color:#926d27}.hero .tag{color:#ffdb91}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.grid .card{margin:0}.badge{display:inline-block;padding:3px 12px;border-radius:18px;background:#e3eddd;font-size:13px}.muted{color:#65756a}.button{display:inline-block;padding:10px 16px;background:#245d4f;color:white;border-radius:10px;text-decoration:none;margin:5px 8px 5px 0}nav{display:flex;gap:14px;flex-wrap:wrap}li{margin:8px 0}details{border-top:1px solid #ddd;padding:18px 0}summary{cursor:pointer;font-weight:700}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:9px;border-bottom:1px solid #ddd}code{background:#e9ece5;padding:2px 5px;overflow-wrap:anywhere}a:focus-visible,summary:focus-visible{outline:3px solid #c48120;outline-offset:4px}.callout{border-left:4px solid #bc9142;padding:12px 18px;background:#f8f0db}svg{max-width:100%;height:auto}footer{font-size:14px}@media(max-width:650px){.grid{grid-template-columns:1fr}header,main,footer{padding:16px}section,.card,.hero{padding:22px}h2{font-size:24px}table{font-size:14px}}@media print{header,nav,.button{display:none}body{background:white;font-size:11pt}section,.card{break-inside:avoid}details{display:block}.grid{display:block}}

/* stage2 */
pre{max-width:100%;overflow-x:auto;padding:20px;background:#e9ece5;border-radius:12px;font-size:14px;line-height:1.65;tab-size:4}pre code{padding:0;white-space:pre;background:none;overflow-wrap:normal}.hero .badge{color:#26382f}article{min-width:0}

/* complete curriculum */
section p,section li,h1,h2,h3,td{overflow-wrap:anywhere}pre code{overflow-wrap:normal}nav a{min-height:36px;display:inline-flex;align-items:center}
