@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{font-family:'DM Sans',system-ui,sans-serif;color:#142441;background:#f5f7fc;font-size:16px;--blue:#183fd2;--ink:#142441;--line:#d6deec;--yellow:#ffe16b}*{box-sizing:border-box}body{margin:0}a{color:var(--blue);text-underline-offset:4px}button,input,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #ad5900;outline-offset:5px}.skip{position:absolute;top:-100px;left:20px;background:white;padding:15px;z-index:10}.skip:focus{top:10px}header{max-width:1120px;margin:auto;padding:30px 30px 22px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:13px;font-size:.75rem;letter-spacing:.13em;line-height:1.6}.brand strong{font-size:.95rem;letter-spacing:0}.element{height:54px;width:51px;border:2px solid var(--blue);color:var(--blue);font:600 1.7rem 'Space Grotesk',sans-serif;padding:2px 7px}.element small{display:block;font:600 .65rem 'DM Sans',sans-serif}.pace{font-size:.9rem;color:#4c5b74}main{max-width:1120px;margin:auto;padding:0 30px 40px}.intro{background:#173fca;color:white;border-radius:14px;display:grid;grid-template-columns:1.5fr 1fr;gap:45px;padding:42px;align-items:center}.eyebrow{font-size:.8rem;letter-spacing:.13em;font-weight:700;margin:0 0 15px}.intro .eyebrow{color:#d9e3ff}h1,h2,h3{font-family:'Space Grotesk',system-ui,sans-serif}h1{font-size:clamp(2.2rem,4.8vw,3.5rem);letter-spacing:-.04em;line-height:1.04;margin:0 0 22px}.intro p:not(.eyebrow){line-height:1.6;max-width:500px}.intro-note{font-size:.95rem;color:#e4ebff}.start{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:14px 20px;background:var(--yellow);color:#142441;font-weight:700;text-decoration:none;border-radius:6px;margin-top:12px}.start:hover{background:#ffec9c}.progress-panel{border-top:1px solid #92aaff;border-bottom:1px solid #92aaff;padding:25px 0}.progress-number{font-family:'Space Grotesk',sans-serif;line-height:1!important;margin:14px 0 22px}.progress-number span:first-child{font-size:4rem;font-weight:600}.progress-number span:last-child{font-size:1.4rem;color:#d9e3ff}progress{display:block;appearance:none;border:0;width:100%;height:7px;border-radius:20px;overflow:hidden;background:#6684df}progress::-webkit-progress-bar{background:#6684df}progress::-webkit-progress-value{background:var(--yellow)}progress::-moz-progress-bar{background:var(--yellow)}.storage-note{font-size:.8rem;color:#d9e3ff}.stages{display:flex;gap:10px;padding:24px 0;flex-wrap:wrap}.stages a{flex:1;min-width:150px;padding:14px 15px;border:1px solid var(--line);background:white;border-radius:6px;text-decoration:none;font-weight:600;color:var(--ink);font-size:.95rem}.stages a:hover{border-color:var(--blue)}.stages span{color:var(--blue);font-size:.8rem;margin-right:9px}.stage{scroll-margin-top:20px;margin:25px 0 52px}.section-head{display:flex;gap:18px;align-items:flex-start;margin-bottom:20px}.section-num{font:500 2.5rem 'Space Grotesk',sans-serif;line-height:1;color:#7c8ca8}.section-head h2{font-size:1.8rem;letter-spacing:-.03em;margin:0 0 7px}.section-head p{margin:0;color:#52617a;line-height:1.55}.lesson{display:grid;grid-template-columns:44px 1fr 110px;gap:17px;align-items:center;border:1px solid var(--line);background:white;border-radius:8px;padding:20px;margin-bottom:10px;transition:border-color .15s}.lesson:has(input:checked){border-color:#88a2e7;background:#edf2ff}.check{display:flex;flex-direction:column;align-items:center;gap:5px;font-size:.75rem;color:#56667f;cursor:pointer}.check input{width:22px;height:22px;accent-color:var(--blue);cursor:pointer;margin:0}.lesson h3{font-size:1.1rem;line-height:1.35;margin:0 0 5px;font-weight:600}.lesson p{font-size:.95rem;line-height:1.55;margin:0;color:#52617a}.watch{font-size:.9rem;text-decoration:none;font-weight:700;border:1px solid #c8d5fb;padding:11px 13px;border-radius:5px;text-align:center;white-space:nowrap}.watch:hover{background:#eef2ff}.checkpoint{margin-top:18px;padding:22px 25px;background:#e8edf8;border-radius:8px}.checkpoint h3{font-size:1.05rem;margin:0 0 12px}.checkpoint ol{padding-left:22px;margin:0;line-height:1.65}.checkpoint li+li{margin-top:7px}details{margin-top:16px}summary{font-size:.9rem;color:var(--blue);cursor:pointer;font-weight:700;width:fit-content}details p{font-size:.95rem;line-height:1.7;margin:10px 0 0}.milestone{padding:24px 28px;background:var(--yellow);border-radius:8px;margin:0 0 44px}.milestone h2{font-size:1.3rem;margin:0 0 8px}.milestone p{line-height:1.6;margin:0}.study{padding:30px 0;border-top:1px solid var(--line)}.study h2{font-size:1.6rem;margin:0 0 20px;letter-spacing:-.03em}.study ol{padding-left:22px;line-height:1.8}.study p{line-height:1.7}.study .eyebrow{color:var(--blue)}footer{border-top:1px solid var(--line);font-size:.8rem;line-height:1.7;color:#5b6880;padding-top:20px}footer p{max-width:850px}@media(max-width:700px){header{padding:20px}.pace{display:none}main{padding:0 16px 25px}.intro{padding:28px 24px;grid-template-columns:1fr;gap:25px}.progress-panel{padding:20px 0 6px;border-bottom:0}.progress-number span:first-child{font-size:2.5rem}.progress-number{margin:10px 0 16px}.stages{gap:8px}.stages a{min-width:calc(50% - 8px);padding:12px}.lesson{grid-template-columns:30px 1fr;gap:12px;padding:17px 14px}.watch{grid-column:2;width:fit-content}.section-head h2{font-size:1.5rem}.section-num{font-size:2rem}.checkpoint{padding:20px}.stage{margin-bottom:35px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media print{body{background:white}.intro{background:white;color:#142441;border:1px solid #aaa}.intro .eyebrow,.intro-note,.storage-note{color:#142441}.start,.stages,.progress-panel{display:none}.intro{display:block;padding:20px}.lesson,.checkpoint{break-inside:avoid}details p{display:block}main{padding:0}.watch{border:0}.stage{margin-bottom:20px}}
