.library-programs,.program-page{min-width:0;font-size:1.125rem;line-height:1.6}.library-programs :is(h2,h3),.program-page :is(h1,h2,h3){letter-spacing:-.025em;text-wrap:balance;overflow-wrap:break-word}.library-programs a,.program-page a{text-underline-offset:var(--underline-offset)}.library-programs [hidden],.program-page [hidden]{display:none!important}.library-programs{padding:0 0 var(--library-section-space);margin-bottom:var(--library-section-space)}.programs-heading{margin-bottom:var(--space-4);justify-content:space-between;align-items:start;gap:24px;display:flex}.programs-heading h2{margin:0 0 var(--space-1);font-size:var(--text-section);font-weight:600;line-height:1.2}.programs-heading p{color:var(--muted);margin:0}.program-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px;display:grid}.program-card{grid-template-columns:124px minmax(0,1fr);gap:24px;min-width:0;padding:24px 0;display:grid;position:relative}.program-card-copy{min-width:0}.program-card h3{margin:4px 0 8px;font-size:1.5rem;font-weight:600;line-height:1.25}.program-card h3 a{color:var(--ink);text-decoration:underline 1px}.program-card h3 a:after{content:"";border-radius:12px;position:absolute;inset:8px 0}.program-card h3 a:focus-visible{outline:none}.program-card h3 a:focus-visible:after{outline:3px solid var(--accent);outline-offset:5px}.program-card:has(a:is(:hover,:focus-visible)) h3 a{color:var(--accent);text-decoration:underline 2px}.program-card-description{color:var(--muted);margin:0 0 12px;font-size:1.125rem;line-height:1.5}.program-card-meta{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:0 8px;margin:0;font-size:.875rem;line-height:1.5;display:flex}.program-card-meta>span:not([hidden])+span:not([hidden]):before{content:"·";margin-right:8px}.program-card-status{color:var(--accent)}.program-art{aspect-ratio:1;background:var(--subject-preview-surface,var(--subject-surface,var(--mint)));color:var(--subject-ink,var(--ink));border-radius:12px;align-self:start;place-items:center;padding:14px;display:grid;overflow:hidden}.program-art svg{width:100%;max-width:300px;height:auto;display:block;overflow:visible}.library-programs-test{margin-bottom:0;padding:0}.library-programs-test .programs-heading{align-items:end}.library-programs-test .program-list{column-gap:40px}.library-programs-test .program-card{grid-template-columns:76px minmax(0,1fr) 24px;align-items:center;gap:18px;padding:25px 0}.library-programs-test .program-art{align-self:center;padding:10px}.library-programs-test .program-card h3{margin:0 0 5px;font-size:1.25rem;line-height:1.3}.library-programs-test .program-card h3 a{text-decoration:none}.library-programs-test .program-card h3 a:after{inset:0}.library-programs-test .program-card:has(a:is(:hover,:focus-visible)) h3 a{color:var(--accent);text-decoration:underline}.library-programs-test .program-card-description{margin-bottom:9px;font-size:.9375rem}.program-card-arrow{width:21px;height:21px;color:var(--accent);display:block}.library-programs-compact{margin:var(--library-section-space,40px) 0 0;padding:0}.library-programs-compact .programs-heading{margin-bottom:16px}.library-programs-compact .program-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 32px}.library-programs-compact .program-card{grid-template-columns:64px minmax(0,1fr);align-items:center;gap:16px;padding:8px 0}.library-programs-compact .program-art{align-self:center;padding:8px}.library-programs-compact .program-card h3{margin:0 0 2px;font-size:1.0625rem;line-height:1.35}.library-programs-compact .program-card h3 a{text-decoration:none}.library-programs-compact .program-card h3 a:after{inset:0}@media (width<=62.5em){.library-programs-compact .program-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=43.75em){.library-programs-compact .program-list{grid-template-columns:minmax(0,1fr);gap:4px}.library-programs-compact .program-card{grid-template-columns:56px minmax(0,1fr);gap:14px}}.programs-test-scope{gap:var(--space-1);color:var(--muted);margin:14px 0 0;font-size:.9375rem;display:grid}.programs-test-scope>p{margin:0}.program-hero{grid-template-columns:minmax(0,1fr) 240px;align-items:center;gap:72px;padding:0 0 36px;display:grid}.program-hero>*{min-width:0}.program-hero h1{font-size:var(--text-title);margin:0 0 18px;font-weight:600;line-height:1.12}.program-lead{color:var(--muted);margin:0 0 20px;font-size:1.25rem;line-height:1.55}.program-facts{color:var(--muted);flex-wrap:wrap;gap:6px 18px;font-size:1rem;display:flex}.program-hero .program-art{align-self:center;padding:32px}.program-scope-note{color:var(--muted);margin:0 0 24px;font-size:1.0625rem}.program-launch{flex-wrap:wrap;align-items:center;gap:18px 30px;margin-bottom:40px;padding:25px 0;display:flex}.program-launch[data-program-offer]{padding-block:0}.program-start{background:var(--accent);min-height:52px;color:var(--card);text-align:center;border-radius:12px;justify-content:center;align-items:center;padding:14px 24px;font-size:1.125rem;font-weight:650;line-height:1.4;text-decoration:none;display:inline-flex}.program-start:hover{color:var(--card);background:var(--library-action-hover,var(--accent-hover));text-decoration:none}.program-start:active{background:var(--home-action-active,var(--accent-active))}.program-start[aria-disabled=true]{color:var(--control-disabled-ink);background:var(--line);cursor:wait}.program-page[data-program-exam] .program-lead{margin-bottom:24px}.program-exam-actions{flex-wrap:wrap;align-items:stretch;gap:12px;display:flex}.program-exam-actions>.program-start{width:220px;max-width:100%;min-height:var(--cta-height,52px);border-radius:var(--control-radius,12px);font-size:var(--cta-size,1rem);font-weight:var(--cta-weight,650);border:1px solid #0000;padding:12px 24px;line-height:1.4}.program-exam-actions>.program-exam-link{border-color:var(--control-border);background:var(--card);color:var(--accent)}.program-exam-actions>.program-exam-link:hover{background:var(--soft);color:var(--accent-hover)}.program-exam-actions>.program-exam-link:active{background:var(--accent-soft);color:var(--accent-active)}.program-exam-actions>.program-start:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.program-page[data-program-exam] .program-facts{margin-top:16px}.program-page[data-program-exam] .program-scope-note{margin-bottom:40px;font-size:.9375rem;line-height:1.6}.program-launch.program-exam-progress{margin-bottom:32px;padding:0}.program-exam-progress .program-progress{width:280px;margin-left:0}.program-page[data-program-exam] .program-storage-notice{margin:0 0 32px}.program-join,.program-join-banner,.program-join-copy{display:contents}.program-join-title{display:none}.program-launch:not([data-program-offer]) .program-start{order:-1}.program-launch[data-program-offer] .program-join{gap:12px;width:100%;min-width:0;max-width:100%;display:grid}.program-launch[data-program-offer] .program-join-banner{border-radius:var(--radius);background:var(--accent);color:var(--paper);grid-template-columns:minmax(0,1fr) 220px;grid-template-areas:"copy action";align-items:center;gap:24px 48px;padding:36px 40px;display:grid}.program-launch[data-program-offer] .program-join-copy{grid-area:copy;gap:12px;min-width:0;display:grid}.program-launch[data-program-offer] .program-join-title{color:var(--paper);letter-spacing:-.02em;text-wrap:pretty;overflow-wrap:anywhere;margin:0;font-size:1.6rem;font-weight:600;line-height:1.2;display:block}.program-launch[data-program-offer] .program-start{width:220px;max-width:100%;min-height:var(--cta-height);border-radius:var(--control-radius);background:var(--paper);color:var(--accent-active);font-size:var(--cta-size);white-space:normal;overflow-wrap:anywhere;grid-area:action;padding:12px 28px;font-weight:600;line-height:1.3}.program-launch[data-program-offer] .program-start:is(:hover,:active):not([aria-disabled=true]){background:var(--soft)}.program-launch[data-program-offer] .program-start[aria-disabled=true]{cursor:wait;opacity:.7}.program-launch[data-program-offer] .program-join-banner :focus-visible{outline-color:var(--paper)}.program-launch[data-program-offer] .program-access p{color:color-mix(in srgb, var(--paper) 85%, transparent)}.program-launch[data-program-offer] .program-access a{color:var(--paper)}.program-access{overflow-wrap:anywhere;font-size:1rem;line-height:1.5}.program-launch[data-program-offer] .program-access{max-width:none}.program-access p{color:var(--muted);margin:0}.program-access a{align-items:center;min-height:44px;display:inline-flex}.program-progress{min-width:210px;max-width:100%;margin-left:auto}.program-progress p{color:var(--muted);font-variant-numeric:tabular-nums;margin:0 0 8px;font-size:.9375rem}.program-progress-track{gap:5px;display:flex}.program-progress-track span{background:var(--line);border-radius:3px;flex:1;height:6px}.program-progress-track :is(.filled,[data-complete=true]){background:var(--accent)}.program-storage-notice{color:var(--muted);margin:-20px 0 32px;font-size:1rem}.program-body{grid-template-columns:minmax(0,1fr) 280px;gap:64px;display:grid}.program-module-heading{margin-bottom:24px}.program-module-heading h2{margin:0 0 12px;font-size:1.875rem;font-weight:600;line-height:1.2}.program-module-heading p{color:var(--muted);margin:0}.program-modules{margin:0;padding:0;list-style:none}.program-module{padding:22px 0;scroll-margin-top:28px}.program-module-head{align-items:start;gap:18px;display:flex}.program-module-number{border:1px solid var(--control-border);font-variant-numeric:tabular-nums;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;margin-top:1px;font-size:1rem;font-weight:600;display:grid}.program-module:is(.done,[data-program-state=complete]) .program-module-number{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-soft)}.program-module-main{flex:1;min-width:0}.program-module h3{margin:4px 0 8px;font-size:1.3125rem;font-weight:600;line-height:1.3}.program-module-why{color:var(--muted);margin:0}.program-module-status{color:var(--accent);margin:8px 0 0;font-size:.9375rem;font-weight:600}.program-module details{margin:14px 0 0 52px;font-size:1.0625rem}.program-module summary{cursor:pointer;min-height:44px;color:var(--accent);text-underline-offset:var(--underline-offset);padding:8px 0;text-decoration:underline;display:list-item}.program-module-links{padding-top:8px}.program-step-pair+.program-step-pair{margin-top:14px;padding-top:14px}.program-step{grid-template-columns:76px minmax(0,1fr);gap:10px;padding:4px 0;display:grid}.program-step>span{color:var(--muted);padding-block:9px}.program-step a{align-items:center;min-height:44px;line-height:1.5;display:inline-flex}.program-step small{color:var(--muted);margin:0 0 8px;font-size:.9375rem;line-height:1.5;display:block}.program-no-lesson{margin:0 0 6px;padding-top:9px}.program-module-note{color:var(--muted);margin:16px 0 0;font-size:.9375rem;line-height:1.6}.program-aside section{margin-bottom:32px}.program-aside h2{margin:0 0 12px;font-size:1.25rem;font-weight:600;line-height:1.35}.program-aside p{color:var(--muted);margin:0 0 16px;font-size:1rem;line-height:1.65}.program-method-steps{counter-reset:program-method;margin:0;padding:0;list-style:none}.program-method-steps li{counter-increment:program-method;gap:12px;margin:0 0 14px;font-size:1rem;line-height:1.5;display:flex}.program-method-steps li:before{content:counter(program-method);width:18px;color:var(--accent);flex:none;align-self:start;padding-top:2px;font-size:.875rem}.program-recall{background:var(--subject-surface);color:var(--subject-ink);border-radius:12px;margin-top:28px;padding:24px}.program-recall h3{margin:0 0 10px;font-size:1.25rem;font-weight:600;line-height:1.3}.program-recall p{margin:0}.program-recall .program-recall-note{margin-top:12px;font-size:.9375rem}.program-complete{background:var(--accent-soft);border-radius:12px;align-items:center;gap:20px;padding:24px;display:flex}.program-complete h2{margin:0 0 6px;font-size:1.5rem;line-height:1.3}.program-complete p{color:var(--muted);margin:0;font-size:1rem}.program-complete-symbol{color:var(--accent);border:1px solid var(--accent);border-radius:50%;flex:none;place-items:center;width:40px;height:40px;display:grid}.program-complete-symbol svg{width:24px;height:24px}.program-followup{grid-template-columns:minmax(0,1fr) minmax(0,auto);align-items:center;gap:40px;padding:32px 0;display:grid}.program-followup>*{min-width:0}.program-followup h2{margin:0 0 12px;font-size:1.5rem;line-height:1.3}.program-followup p{margin:0 0 12px;font-size:1.125rem}.program-followup .program-followup-note{color:var(--muted);margin-bottom:0;font-size:1rem;line-height:1.6}.program-followup .program-followup-language{color:var(--muted);margin:8px 0 0;font-size:.9375rem}.program-followup .program-start{max-width:100%}.program-completed-modules{margin-top:24px}.program-completed-modules>summary{cursor:pointer;min-height:44px;padding:10px 0;font-size:1.125rem;font-weight:600}.program-completed-modules>summary span{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:12px;font-size:1rem;font-weight:400;display:inline-block}.program-completed-modules .program-modules{margin-top:16px}.program-completed-modules .program-module-status,.program-completed-modules .program-module details>summary{display:none}.program-completed-modules .program-module h3{font-size:1.25rem}.program-page .program-completion-note{color:var(--muted);margin:16px 0 0;font-size:.875rem}[data-program-complete]:not([hidden])~.program-storage-notice{margin:24px 0 0}.program-deepening{margin-top:44px}.program-deepening-heading{grid-template-columns:minmax(0,1fr) 280px;gap:64px;margin-bottom:24px;display:grid}.program-deepening-heading h2{margin:0 0 12px;font-size:1.875rem;font-weight:600;line-height:1.2}.program-deepening-heading p{color:var(--muted);margin:0}.program-deepening-note{font-size:1rem;line-height:1.65}.program-deepening-stages{max-width:calc(100% - 344px)}.program-deepening-stages>li{scroll-margin-top:144px}.program-stage-review{color:var(--muted);margin:18px 0 0;font-size:1rem}.program-stage-review strong{color:var(--ink);font-weight:600}@media (width<=59.375em){.program-card{grid-template-columns:90px minmax(0,1fr);gap:18px}.library-programs-test .program-list{column-gap:24px}.library-programs-test .program-card{grid-template-columns:64px minmax(0,1fr) 20px;gap:14px}.program-hero{grid-template-columns:minmax(0,1fr) 200px;gap:36px}.program-body,.program-deepening-heading{grid-template-columns:minmax(0,1fr) 240px;gap:36px}.program-deepening-stages{max-width:calc(100% - 276px)}.programs-heading{flex-wrap:wrap}}@media (width<=43.75em){.programs-heading{gap:20px;margin-bottom:24px}.program-list{grid-template-columns:minmax(0,1fr);gap:0}.program-card{grid-template-columns:90px minmax(0,1fr);gap:20px;padding:20px 0}.program-card h3{hyphens:auto;font-size:1.375rem}.library-programs-test .programs-heading{gap:14px}.library-programs-test .program-card{padding:20px 0}.library-programs-test .program-card h3{font-size:1.1875rem}.library-programs-test .program-card-meta{font-size:.8125rem}.library-programs-test .program-art{padding:8px}.program-card-arrow{width:20px;height:20px}.program-hero{grid-template-columns:minmax(0,1fr) 120px;align-items:start;gap:20px;padding-bottom:28px}.program-hero>div:not(.program-art){display:contents}.program-hero h1{grid-column:1/-1}.program-hero .program-art{grid-area:2/2;padding:14px}.program-lead{grid-area:2/1;align-self:center;margin:0;font-size:1.125rem}.program-facts{grid-column:1/-1;gap:4px 14px;font-size:.9375rem}.program-page[data-program-exam] .program-lead{margin-bottom:0}.program-exam-actions{flex-direction:column;grid-area:3/1/auto/-1}.program-exam-actions>.program-start{width:100%}.program-page[data-program-exam] .program-facts{grid-row:4;margin-top:0}.program-page[data-program-exam] .program-scope-note{margin-bottom:32px}.program-launch{gap:14px 24px;margin-bottom:32px}.program-launch[data-program-offer] .program-join-banner{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy""action";gap:20px;padding:24px 20px}.program-launch[data-program-offer] .program-join-title{font-size:1.35rem}.program-launch[data-program-offer] .program-start{width:100%}.program-progress{flex:210px;margin-left:0}.program-body{grid-template-columns:minmax(0,1fr);gap:36px}.program-deepening{margin-top:32px}.program-deepening-heading{grid-template-columns:minmax(0,1fr);gap:14px}.program-deepening-heading h2{font-size:var(--text-section)}.program-deepening-stages{max-width:none}.program-module-heading h2{font-size:var(--text-section)}.program-aside{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.program-aside section{margin-bottom:0}.program-aside section:last-child{grid-column:1/-1}.program-module details{margin-left:0}.program-step{grid-template-columns:72px minmax(0,1fr)}.program-followup{grid-template-columns:minmax(0,1fr);gap:24px;padding:28px 0}.program-complete{align-items:start;gap:14px;padding:20px}.program-complete h2{font-size:1.25rem}.program-complete-symbol{width:32px;height:32px}}@media (width<=25em){.program-card{grid-template-columns:72px minmax(0,1fr);gap:15px}.program-art{padding:8px}.program-aside{grid-template-columns:minmax(0,1fr)}}@media (width<=23.125em){.program-hero{grid-template-columns:minmax(0,1fr)}.program-hero>.program-art{display:none}.program-step{grid-template-columns:minmax(0,1fr);gap:0}.program-step>span{padding-bottom:0}}@media (prefers-reduced-motion:no-preference){.program-card .program-art svg{transition:transform .22s cubic-bezier(.16,1,.3,1)}.program-card:has(a:focus-visible) .program-art svg{transform:translateY(-3px)}}@media (hover:hover) and (prefers-reduced-motion:no-preference){.program-card:has(a:hover) .program-art svg{transform:translateY(-3px)}}@media (forced-colors:active){.program-launch[data-program-offer] .program-join-banner,.program-art,.program-start,.program-progress-track span{border:1px solid canvastext}.program-progress-track :is(.filled,[data-complete=true]){background:highlight}}
