@font-face{font-family:latin;src:url(/_next/static/media/e5b814548bfb4db7-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:latin;src:url(/_next/static/media/a9a32ccb3dde5658-s.p.woff2) format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:latin;src:url(/_next/static/media/be218eeb35b1c9e0-s.p.woff2) format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:latin Fallback;src:local("Arial");ascent-override:101.35%;descent-override:27.19%;line-gap-override:0.00%;size-adjust:101.13%}.__className_e4c8f7{font-family:latin,latin Fallback}.__variable_e4c8f7{--font-latin:"latin","latin Fallback"}:root{color-scheme:light;--paper:#f5f7f6;--surface:#ffffff;--surface-sunken:#eef2f1;--line:#d5dcda;--line-strong:#a9b5b2;--ink:#17212b;--ink-soft:#3e4a55;--ink-faint:#5e6973;--accent:#6e1f2b;--accent-strong:#4f1520;--accent-wash:#f7eeef;--accent-ink:#ffffff;--marker:#ffe15a;--marker-wash:#fff6c2;--marker-stroke:#ffe15a;--focus:#1f5fbf;--danger:#b3261e;--positive:#1f7a4d;--highlight:#9a4a25;--brand-accent:#6e1f2b;--brand-wash:#f7eeef;--footer-ground:#17212b;--footer-ink:#e8edf0;--footer-ink-soft:#b4bec6;--radius-sm:3px;--radius:6px;--radius-lg:8px;--measure:68ch;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--text-xs:0.8125rem;--text-sm:0.875rem;--step-0:1rem;--step-1:1.125rem;--step-2:1.375rem;--step-3:1.75rem;--step-4:clamp(2rem,1.4rem + 2.2vw,3rem);--font-sans:var(--font-latin,ui-sans-serif),"PingFang TC","Noto Sans TC","Noto Sans CJK TC","Microsoft JhengHei",system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,monospace;--shadow-float:0 10px 28px rgb(23 33 43/12%)}@media (prefers-color-scheme:dark){:root{color-scheme:dark;--paper:#10161d;--surface:#18212b;--surface-sunken:#1f2a35;--line:#2c3946;--line-strong:#4a5866;--ink:#eef2f4;--ink-soft:#c3ccd3;--ink-faint:#9aa6b0;--accent:#f09aa6;--accent-strong:#f6bcc4;--accent-wash:#2e1d22;--accent-ink:#2a0a10;--marker:#e9cd4c;--marker-wash:#3a3418;--marker-stroke:#5a4d14;--focus:#8fb4ff;--danger:#f2b8b5;--positive:#8fd3ad;--highlight:#e0a17d;--brand-accent:#f09aa6;--brand-wash:#2e1d22;--footer-ground:#0a0f14;--footer-ink:#e8edf0;--footer-ink-soft:#a8b3bc;--shadow-float:0 10px 28px rgb(0 0 0/45%)}}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:var(--step-0);line-height:1.65}h1,h2,h3{line-height:1.3;font-weight:700;text-wrap:balance;margin:0 0 .5em}h1{font-size:var(--step-4);line-height:1.22}h2{font-size:var(--step-3)}h3{font-size:var(--step-1)}li,p{text-wrap:pretty}a{color:var(--accent);text-underline-offset:.2em}a:hover{color:var(--accent-strong)}.card__price,.facts,.lesson__index,.price,.purchase-bar__price,.sheet{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:4px}.skip-link{position:absolute;left:.5rem;top:-4rem;z-index:10;padding:.6rem 1rem;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);transition:top .12s ease}.skip-link:focus{top:.5rem}.shell{width:100%;max-width:75rem;margin:0 auto;padding-inline:1.25rem}.site-header{border-bottom:1px solid var(--line);background:var(--surface)}.site-header__inner{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;padding-block:.4rem}.brand{display:inline-flex;align-items:center;min-height:2.75rem;font-weight:650;font-size:var(--step-1);color:var(--ink);text-decoration:none}.brand__logo{display:block;height:3rem;width:auto}@media (prefers-color-scheme:dark){.brand__logo{filter:brightness(0) invert(1)}}.site-nav{display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem;margin-left:auto}.site-nav a,.site-nav__button{display:inline-flex;align-items:center;min-height:2.75rem}.site-nav a{color:var(--ink);text-decoration:none;font-size:.9375rem;font-weight:500}.site-nav a:hover{color:var(--accent);text-decoration:underline}main{display:block;padding-block:var(--space-6) var(--space-8)}.site-footer{background:var(--footer-ground);color:var(--footer-ink-soft);font-size:var(--text-sm)}.site-footer__inner{padding-block:2.5rem;display:grid;grid-gap:1.5rem;gap:1.5rem}.site-footer__top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:1rem 2rem}.site-footer__brand{margin:0;font-size:var(--step-1);font-weight:700;letter-spacing:.06em;color:var(--footer-ink)}.site-footer__nav{display:flex;flex-wrap:wrap;gap:1.25rem}.site-footer__nav a{color:var(--footer-ink);text-decoration:none}.site-footer__nav a:hover{color:var(--footer-ink);text-decoration:underline}.site-footer__legal{display:grid;grid-gap:.6rem;gap:.6rem;border-top:1px solid color-mix(in srgb,var(--footer-ink-soft) 30%,transparent);padding-top:1.5rem}.site-footer__legal p{max-width:var(--measure);margin:0}.hero{background:var(--accent-wash);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.75rem,1rem + 3vw,3.5rem);margin-bottom:3.5rem}.hero h1{max-width:18ch}.hero .lede{margin-bottom:0}.hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.75rem 0 0}.section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1.5rem;padding-bottom:var(--space-3);border-bottom:2px solid var(--ink);margin-bottom:var(--space-5)}.section-head h2{margin-bottom:0}.section-head__more{font-size:.95rem;white-space:nowrap}.stack>*+*{margin-top:var(--stack-gap,1rem)}.section+.section{margin-top:var(--space-8)}.eyebrow{font-size:.8rem;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 .6rem}.lede{font-size:var(--step-1);color:var(--ink-soft)}.lede,.prose{max-width:var(--measure)}.prose h2{margin-top:1.8em}.prose blockquote{margin:1.5rem 0;padding:.25rem 0 .25rem 1.25rem;border-left:3px solid var(--accent);color:var(--ink-soft);font-style:italic}.introduction img{max-width:100%;height:auto}.introduction figure{margin:1.5rem 0}.introduction figure.image_resized{max-width:100%}.introduction .text-big{font-size:1.15em}.introduction .text-huge{font-size:1.4em}.introduction a{text-decoration:underline}.video-embed{display:flex;position:relative;overflow:hidden;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;aspect-ratio:16/9;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-sunken);padding:1rem;min-height:44px;text-align:center;text-decoration:none;color:var(--ink)}.video-embed:hover{border-color:var(--accent)}.video-embed .video-embed__poster{position:absolute;inset:0;z-index:0;border-radius:var(--radius);width:100%;height:100%;object-fit:cover}.video-embed .video-embed__poster+.video-embed__play,.video-embed .video-embed__poster~.video-embed__label,.video-embed .video-embed__poster~.video-embed__note{position:relative;z-index:1;border-radius:var(--radius);background:rgb(0 0 0/55%);padding:.125rem .5rem;color:#ffffff}.video-embed .video-embed__poster+.video-embed__play{border-color:#ffffff;padding:0}.video-embed .video-embed__poster+.video-embed__play:after{border-left-color:#ffffff}.video-embed__play{display:block;position:relative;border:2px solid var(--accent);border-radius:50%;width:3.5rem;height:3.5rem}.video-embed__play:after{position:absolute;top:50%;left:54%;transform:translate(-50%,-50%);border-top:.6rem solid transparent;border-bottom:.6rem solid transparent;border-left:1rem solid var(--accent);content:""}.video-embed__label{font-weight:600}.video-embed__note{color:var(--ink-soft);font-size:.875rem}.video-embed__player{display:block;aspect-ratio:16/9;border:0;border-radius:var(--radius);width:100%}.card-grid{display:grid;grid-gap:var(--space-6) var(--space-5);gap:var(--space-6) var(--space-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));list-style:none;margin:0;padding:0}@media (min-width:72rem){.card-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}}.card{height:100%;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.card,.card__text{display:flex;flex-direction:column}.card__text{gap:var(--space-2);flex:1 1;padding:var(--space-4)}.card__cover{display:block;position:relative}.mode-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.125rem .5rem;border-radius:var(--radius-sm);background:var(--ink);color:var(--paper);font-size:var(--text-xs);font-weight:600;line-height:1.6;white-space:nowrap}.mode-badge svg{flex:none}.course-hero__text>.mode-badge{justify-self:start}.card__cover .mode-badge{position:absolute;left:var(--space-3);top:var(--space-3)}.cover{display:block;width:100%;aspect-ratio:1.91/1;object-fit:cover;background:var(--surface-sunken);border-bottom:1px solid var(--line)}.cover--absent{background-color:var(--surface-sunken);background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:1.25rem 1.25rem}.cover--hero,.cover-preview{border:1px solid var(--line);border-radius:var(--radius)}.cover-preview{display:block;width:min(100%,30rem);aspect-ratio:1.91/1;object-fit:cover}.card h2,.card h3{margin:0;font-size:var(--step-1);line-height:1.45;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;min-height:calc(2 * 1.45em)}.card h3 a{color:var(--ink);text-decoration:none}.card h3 a:hover{color:var(--accent);text-decoration:underline}.card--link{position:relative}.card--link h3 a:after{content:"";position:absolute;inset:0;z-index:1}.card--link h3 a:focus-visible{outline:none}.card--link:has(h3 a:focus-visible):before{content:"";position:absolute;inset:0;z-index:2;border:3px solid var(--focus);border-radius:inherit;pointer-events:none}.card--link:hover{border-color:var(--line-strong)}.card__meta{color:var(--ink-faint);font-size:var(--text-sm);margin:0}.card__price{font-weight:700;color:var(--ink)}.card__spec{display:grid;grid-template-columns:minmax(0,1fr) auto;margin:0;border-top:1px solid var(--line);font-size:var(--text-sm)}.card__spec>*{margin:0;padding:var(--space-3) var(--space-4)}.card__spec>.card__meta{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.card__spec>*+*{border-left:1px solid var(--line);text-align:right}.card__spec .card__price{font-size:var(--step-1);line-height:1.3}.card__spec .price__list{display:block}.card__spec .card__meta{align-self:center}.price{display:flex;align-items:baseline;flex-wrap:wrap;gap:.6rem;margin:0}.price__amount{font-size:var(--step-4);font-weight:700;line-height:1.1}.price__list{color:var(--ink-faint);font-size:var(--text-sm);font-weight:400;text-decoration:line-through}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:3rem;padding:.6rem 1.5rem;border:1px solid transparent;border-radius:var(--radius);background:var(--accent);font:inherit;font-weight:600;text-decoration:none;cursor:pointer}.button,.button:hover{color:var(--accent-ink)}.button:hover{background:var(--accent-strong)}.button--quiet{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.button--quiet:hover{background:var(--accent-wash);color:var(--ink);border-color:var(--accent)}.button[aria-disabled=true]{cursor:default}.purchase h2{margin:0;font-size:var(--text-sm);font-weight:600;color:var(--ink-soft)}.purchase{display:grid;grid-gap:var(--space-4);gap:var(--space-4);padding:var(--space-5);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-float)}.purchase .button{width:100%}.purchase__note{margin:0;font-size:var(--text-sm);color:var(--ink-soft)}.purchase__note+.purchase__note{padding-top:var(--space-3);border-top:1px solid var(--line)}.purchase__note:empty{display:none}@media (min-width:60rem){.purchase{position:-webkit-sticky;position:sticky;top:1.5rem}}.course-page{display:grid;grid-gap:var(--space-6);gap:var(--space-6);align-items:start}.course-hero{align-content:start}.course-hero,.course-hero__text{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.course-hero__text{min-width:0}.course-hero__text>*{margin:0}.course-hero h1{font-size:clamp(1.75rem,1.3rem + 1.6vw,2.5rem)}.course-hero .lede{font-size:var(--step-1)}.course-hero__byline{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);color:var(--ink-soft);font-size:var(--text-sm)}.course-hero__byline a{color:var(--ink);font-weight:600}@media (min-width:60rem){.course-page{grid-template-columns:minmax(0,1fr) 21rem;column-gap:var(--space-7);row-gap:var(--space-7)}.course-hero{grid-column:1/-1;grid-row:1;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);column-gap:var(--space-7);align-items:center;padding-bottom:var(--space-7);border-bottom:1px solid var(--line)}.course-hero>.course-hero__text:only-child{grid-column:1/-1}.course-page>.course-decide{grid-column:1;grid-row:2}.course-page>.purchase{grid-column:2;grid-row:2/span 2;position:-webkit-sticky;position:sticky;top:1.5rem}.course-page>.course-body{grid-column:1;grid-row:3}}.course-body>.section:first-child,.course-decide>.section:first-child{margin-top:0}.course-page .section>h2{font-size:var(--step-2);padding-bottom:var(--space-3);border-bottom:2px solid var(--ink);margin-bottom:var(--space-5)}.purchase-bar{position:fixed;inset-inline:0;bottom:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom, 0px));background:var(--surface);border-top:1px solid var(--line-strong);box-shadow:0 -6px 18px rgb(23 33 43/8%)}.purchase-bar__price{margin:0;font-size:var(--step-2);font-weight:700}.purchase-bar .button{white-space:nowrap}@media (max-width:59.999rem){body:has(.purchase-bar) .site-footer{padding-bottom:5rem}.purchase__action{display:none}}@media (min-width:60rem){.purchase-bar{display:none}}.course-layout{display:grid;grid-gap:2.5rem;gap:2.5rem;align-items:start}@media (min-width:60rem){.course-layout{grid-template-columns:minmax(0,1fr) 21rem;gap:3rem}}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));grid-gap:1px;gap:1px;margin:0;background:var(--line);border:1px solid var(--line-strong);border-radius:var(--radius-sm);overflow:hidden}.facts>div{background:var(--surface);padding:var(--space-3) var(--space-4)}.facts dt{color:var(--ink-faint);font-size:var(--text-xs);margin-bottom:.15rem}.facts dd{margin:0;font-weight:600}.chapter+.chapter{margin-top:var(--space-3)}.chapter__title{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.25rem .75rem;margin:var(--space-5) 0 var(--space-2);font-size:var(--step-1)}.chapter:first-child .chapter__title{margin-top:0}.chapter__count{color:var(--ink-faint);font-size:var(--text-sm);font-weight:400}.syllabus{list-style:none;margin:0;padding:0;border:1px solid var(--line-strong);border-radius:var(--radius-sm);overflow:hidden;background:var(--surface)}.syllabus li+li{border-top:1px solid var(--line)}.chapter .lesson{display:grid;grid-template-columns:2.75rem minmax(0,1fr) auto;align-items:baseline;grid-column-gap:var(--space-3);column-gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-3) 0;background:var(--surface)}.chapter .lesson--locked .lesson__title{font-weight:400}.lesson__index{align-self:stretch;margin-block:calc(-1 * var(--space-3));padding-block:var(--space-3);background:var(--surface-sunken);border-right:1px solid var(--line);color:var(--ink-faint);font-size:var(--text-sm);text-align:center}.lesson__title{font-weight:600}.chapter .lesson__summary{grid-column:2/-1;margin:var(--space-1) 0 0;color:var(--ink-soft);font-size:var(--text-sm)}.chapter .lesson:not(.lesson--locked){background:var(--marker-wash)}.tag{display:inline-block;padding:.1rem .5rem;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600;white-space:nowrap}.tag--preview{background:var(--marker);color:#17212b}.tag--locked{background:transparent;color:var(--ink-faint);font-weight:400}.checklist{list-style:none;margin:0;padding:0;display:grid;grid-gap:var(--space-3);gap:var(--space-3);max-width:var(--measure)}.checklist li{padding-left:1.85rem;position:relative}.checklist li:before{content:"";position:absolute;left:0;top:.3em;width:1.05rem;height:1.05rem;box-sizing:border-box;border:1.5px solid var(--accent);border-radius:var(--radius-sm)}.checklist li:after{content:"";position:absolute;left:.36rem;top:calc(.3em + .17rem);width:.32rem;height:.58rem;border:solid var(--accent);border-width:0 2px 2px 0;transform:rotate(45deg)}.checklist--muted li:before{border-color:var(--line-strong)}.checklist--muted li:after{content:none}.two-up{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}@media (min-width:46rem){.two-up{grid-template-columns:1fr 1fr}}.two-up--panels>div{padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.two-up--panels>div+div{background:var(--surface-sunken)}.two-up--panels h3{margin:0 0 var(--space-3)}.faq{display:grid;grid-gap:0;gap:0;border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{padding:1rem 0;cursor:pointer;font-weight:600}.faq details p{margin:0 0 1rem;color:var(--ink-soft)}.policy{display:grid;margin:0;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}.policy>div{display:grid;grid-gap:var(--space-1) var(--space-4);gap:var(--space-1) var(--space-4);padding:var(--space-3) var(--space-4)}.policy>div+div{border-top:1px solid var(--line)}@media (min-width:46rem){.policy>div{grid-template-columns:7rem minmax(0,1fr)}}.policy dt{font-weight:600;font-size:var(--text-sm)}.policy dd{margin:0;color:var(--ink-soft)}.chips{display:flex;flex-wrap:wrap;gap:.6rem;list-style:none;margin:0;padding:0}.chip{display:inline-block;padding:.4rem .9rem;border:1px solid var(--line-strong);border-radius:999px;color:var(--ink-soft);text-decoration:none;font-size:.9rem}.chip:hover,.chip[aria-current=true]{background:var(--accent-wash);border-color:var(--accent);color:var(--accent-strong)}.breadcrumb{font-size:var(--text-sm);color:var(--ink-faint);margin:0 0 var(--space-5)}.breadcrumb a,.notice{color:var(--ink-soft)}.notice{padding:1rem 1.25rem;border:1px solid var(--line);border-left-width:4px;border-radius:var(--radius);background:var(--surface);max-width:var(--measure)}.empty{color:var(--ink-soft)}.center-page{max-width:34rem;margin:3rem auto;text-align:center}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.site-nav__form{display:inline}.site-nav__button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:.2em}.site-nav__button:hover{color:var(--accent)}.notice--positive{border-left-color:var(--accent)}.notice>*+*{margin-top:.75rem}.order-summary{border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem}.order-summary__lines{display:grid;grid-template-columns:auto 1fr;grid-gap:.4rem 1.5rem;gap:.4rem 1.5rem;margin:1rem 0 0}.order-summary__lines dt{font-weight:600;color:var(--ink-faint)}.order-summary__lines dd{margin:0}.order-summary__total{font-size:var(--step-1);font-weight:700}.order-lines{list-style:none;margin:1rem 0 0;padding:0}.order-lines li{display:grid;grid-gap:.15rem;gap:.15rem;padding:.75rem 0;border-top:1px solid var(--line)}.order-lines__title{font-weight:600}.note,.order-lines__meta{color:var(--ink-faint);font-size:.9rem}.invoice-fields{border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;margin:0}.invoice-fields legend{font-weight:700;padding:0 .4rem}.invoice-fields__choices{display:grid;grid-gap:.5rem;gap:.5rem;margin:1rem 0}.invoice-fields__choices label{display:flex;align-items:center;gap:.6rem;min-height:2.75rem;cursor:pointer}.invoice-fields__detail{display:grid;grid-gap:.3rem;gap:.3rem;padding-top:.75rem;border-top:1px solid var(--line)}.invoice-fields__detail label{font-weight:600}.invoice-fields__detail input[type=text]{font:inherit;padding:.6rem .7rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface,#fff);color:inherit;max-width:24rem;width:100%}.invoice-fields__detail input[type=text]:focus-visible{outline:2px solid currentColor;outline-offset:2px}@supports selector(:has(*)){.invoice-fields__detail{display:none}.invoice-fields:has(#invoice-kind-barcode:checked) [data-for=mobile_barcode],.invoice-fields:has(#invoice-kind-business:checked) [data-for=business],.invoice-fields:has(#invoice-kind-donation:checked) [data-for=donation]{display:grid}}.form-error{border-left:3px solid var(--danger);padding-left:.75rem;font-weight:600}.consent{display:flex;gap:.6rem;align-items:flex-start;line-height:1.6}.consent input[type=checkbox]{flex:0 0 auto;width:1.15rem;height:1.15rem;margin-top:.2rem}.lesson-nav{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:1rem}.sign-in{max-width:28rem}.sign-in__field{display:grid;grid-gap:.3rem;gap:.3rem}.sign-in__field label{font-weight:600}.sign-in__field input{font:inherit;padding:.6rem .7rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface,#fff);color:inherit;width:100%;min-height:2.75rem}.sign-in__field input:focus-visible{outline:2px solid currentColor;outline-offset:2px}.sign-in__code{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.4em;font-size:1.25rem}.lesson-completion{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;padding:1rem 1.25rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-sunken)}.lesson-completion__count{margin:0;color:var(--ink-soft);font-size:.92rem;flex:1 1 12rem}.lesson-completion__state{margin:0;font-weight:600;color:var(--accent)}aside.syllabus>h2{margin:0;padding:var(--space-3) var(--space-4);font-size:var(--step-1);border-bottom:1px solid var(--line-strong)}aside.syllabus>ol{list-style:none;margin:0;padding:0}aside.syllabus .lesson{display:grid;grid-template-columns:2.75rem minmax(0,1fr);border-top:1px solid var(--line)}aside.syllabus .lesson:first-child{border-top:0}aside.syllabus .lesson__index{margin:0;padding:var(--space-3) 0}aside.syllabus .lesson__title{padding:var(--space-3) var(--space-4) var(--space-3) var(--space-3);font-weight:400}aside.syllabus .lesson__title strong{font-weight:700}.syllabus__certificate{margin:0;padding:var(--space-3) var(--space-4);border-top:1px solid var(--line-strong);font-size:var(--text-sm)}.certificate{max-width:44rem;margin:0 auto;padding:3rem 2rem;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);text-align:center}.certificate__eyebrow{margin:0;letter-spacing:.3em;text-transform:none;color:var(--ink-faint);font-size:.8rem}.certificate__learner{margin:1.5rem 0 0;font-size:clamp(1.8rem,6vw,2.6rem);line-height:1.2}.certificate__line{margin:.75rem 0 0;color:var(--ink-soft)}.certificate__course{margin:.5rem 0 0;font-size:clamp(1.2rem,4vw,1.5rem);font-weight:600;color:var(--accent)}.certificate__facts{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 2.5rem;margin:2.5rem 0 0;text-align:left}.certificate__facts dt{color:var(--ink-faint);font-size:.8rem}.certificate__facts dd{margin:.2rem 0 0;font-weight:600}.certificate__number{font-family:var(--font-mono);letter-spacing:.05em}.certificate__statement{margin:2.5rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);color:var(--ink-soft);font-size:.85rem;line-height:1.8}@media print{.no-print,.site-footer,.site-nav{display:none!important}.certificate{border-color:#000;background:#fff;color:#000;margin:0;max-width:none}.certificate__course,.certificate__eyebrow,.certificate__facts dt,.certificate__line,.certificate__statement{color:#000}}.lesson-video{display:flex;flex-direction:column;gap:.75rem;padding:1rem 1.25rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-sunken)}.lesson-video__player{width:100%;background:#000;border-radius:var(--radius);aspect-ratio:16/9}.lesson-video__start{align-self:flex-start}.lesson-video__note{margin:0;color:var(--ink-soft);font-size:.92rem}.lesson-video__problem{display:flex;flex-direction:column;gap:.75rem}.lesson-video__problem p{margin:0;color:var(--ink-soft);font-size:.95rem}.home-intro{display:grid;grid-gap:var(--space-4) var(--space-7);gap:var(--space-4) var(--space-7);align-items:end;padding-block:var(--space-3) var(--space-5)}.home-intro__words>*{margin:0}.home-intro__words{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.home-intro h1{font-size:clamp(1.75rem,1.3rem + 1.6vw,2.5rem)}.home-intro .lede{max-width:44rem;font-size:var(--step-0)}.home-intro__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin:0}@media (min-width:60rem){.home-intro{grid-template-columns:minmax(0,1fr) auto}}.banner{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"view view" "picker controls";grid-gap:var(--space-3) var(--space-4);gap:var(--space-3) var(--space-4);margin-bottom:var(--space-8)}.banner__viewport{grid-area:view;overflow:hidden;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius)}.banner__track{display:flex}.banner__slide{position:relative;flex:0 0 100%;min-width:0;display:grid;align-content:start}.banner__buy .button:after{content:"";position:absolute;inset:0;z-index:1}.banner__buy{z-index:2}.banner__slide:hover .banner__buy .button{background:var(--accent-strong)}.banner__cover{order:-1;border-bottom:1px solid var(--line)}.banner__text{display:grid;grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-5) var(--space-4);min-width:0}.banner__text>*{margin:0}.banner__text>.mode-badge{justify-self:start}.banner__title{font-size:var(--step-2);font-weight:700;line-height:1.35;text-wrap:balance}.banner__pitch{color:var(--ink-soft);font-size:.9375rem}.banner__buy{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-1)}.banner__price{font-size:var(--step-2);font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.banner__price .price__list{font-size:var(--text-sm)}@media (min-width:60rem){.banner__slide{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-content:center;align-items:center;gap:var(--space-5);padding-right:var(--space-5)}.banner__cover{order:0;border:1px solid var(--line);border-radius:var(--radius-sm)}.banner__text{padding:var(--space-6) 0 var(--space-6) var(--space-6)}}.banner__pitch{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.banner__controls{grid-area:controls;display:flex;align-items:center;gap:var(--space-2)}.banner__position{color:var(--ink-faint);font-size:var(--text-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding-inline:var(--space-2)}.banner__control{display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;height:2.75rem;padding:0;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--text-sm);cursor:pointer}.banner__control--text{padding-inline:var(--space-3)}.banner__control:hover{border-color:var(--ink)}.banner__picker{grid-area:picker;display:flex;align-items:center;gap:var(--space-1)}.banner__dot{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:0;background:none;cursor:pointer}.banner__dot:before{content:"";width:.5rem;height:.375rem;border-radius:999px;background:var(--line-strong)}.banner__dot[aria-current=true]:before{width:1.5rem;background:var(--accent)}.banner__sheet .sheet__rows li:last-child{border-bottom:0}.rail{position:relative}.rail__viewport{overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:var(--space-3)}.card-rail{display:grid;grid-auto-flow:column;grid-auto-columns:min(80%,18rem);grid-gap:var(--space-5);gap:var(--space-5);list-style:none;margin:0;padding:0}.card-rail>li{scroll-snap-align:start}@media (min-width:46rem){.card-rail{grid-auto-columns:calc((100% - 2 * var(--space-5)) / 3)}}@media (min-width:72rem){.card-rail{grid-auto-columns:calc((100% - 3 * var(--space-5)) / 4)}}.rail__button{display:none}@media (min-width:46rem){.rail__button{display:inline-flex}}.rail__button{position:absolute;top:3.5rem;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;padding:0;border:1px solid var(--line-strong);border-radius:50%;background:var(--surface);color:var(--ink);box-shadow:var(--shadow-float);cursor:pointer}.rail__button:hover{border-color:var(--ink)}.rail__button--back{left:var(--space-2)}.rail__button--forward{right:var(--space-2)}@media (min-width:80rem){.rail__button--back{left:-1.375rem}.rail__button--forward{right:-1.375rem}}.sheet{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);overflow:hidden}.sheet__head{margin:0;padding:var(--space-2) var(--space-4);background:var(--surface-sunken);border-bottom:1px solid var(--line-strong);font-size:var(--text-sm);font-weight:600}.sheet__rows{list-style:none;counter-reset:sheet-row;margin:0;padding:0}.sheet__rows li{counter-increment:sheet-row;display:grid;grid-template-columns:2.5rem minmax(0,1fr);grid-column-gap:var(--space-3);column-gap:var(--space-3);padding:var(--space-2) var(--space-4) var(--space-2) 0;border-bottom:1px solid var(--line);font-size:.9375rem;line-height:1.5}.sheet__rows li:before{content:counter(sheet-row);margin-block:calc(-1 * var(--space-2));padding-block:var(--space-2);background:var(--surface-sunken);border-right:1px solid var(--line);color:var(--ink-faint);font-size:var(--text-xs);line-height:1.85;text-align:center}.sheet__foot{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-1) var(--space-4);margin:0;padding:var(--space-3) var(--space-4)}.sheet__foot a{font-weight:600}.sheet__price{font-size:var(--step-1);font-weight:700;white-space:nowrap}.person{display:grid;grid-gap:var(--space-4) var(--space-6);gap:var(--space-4) var(--space-6);align-items:start}.person>.stack{min-width:0}.person h3{margin:0;font-size:var(--step-2)}.person h3 a{color:var(--ink)}.person--home{padding:var(--space-6);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}@media (min-width:46rem){.person:has(>.portrait--small){grid-template-columns:6rem minmax(0,1fr)}.person:has(>.portrait--large){grid-template-columns:15rem minmax(0,1fr)}}.portrait{display:block;object-fit:cover;background:var(--surface-sunken);border-radius:var(--radius)}.portrait--small{width:6rem;height:6rem}.portrait--large{width:15rem;max-width:100%;aspect-ratio:1}.portrait--avatar{width:2rem;height:2rem;border-radius:50%}.shelf__note{color:var(--ink-soft);margin:calc(-1 * var(--space-3)) 0 var(--space-5);font-size:.9375rem}.course-toc ul{list-style:none;margin:0;padding:0}.course-toc a{display:inline-flex;align-items:center;min-height:2.75rem;color:var(--ink-soft)}.course-toc a:hover{color:var(--accent)}.course-toc--inline{overflow-x:auto;margin-inline:-.25rem;padding-inline:.25rem;border-block:1px solid var(--line)}.course-toc--inline ul{display:flex;gap:1.25rem;white-space:nowrap}.course-toc--inline li{flex:none}.course-toc--panel{display:none;border-top:1px solid var(--line);padding-top:.75rem}.course-toc__title{margin:0 0 .25rem;font-size:.88rem;font-weight:600;color:var(--ink-soft)}.course-toc--panel a{min-height:2.25rem;font-size:.95rem}@media (min-width:60rem){.course-toc--inline{display:none}.course-toc--panel{display:block}}.course-page h2[id]{scroll-margin-top:1.5rem}.signed-in-page{display:grid;grid-gap:var(--space-6);gap:var(--space-6)}.page-head{display:grid;grid-gap:var(--space-3);gap:var(--space-3);padding-bottom:var(--space-5);border-bottom:1px solid var(--line)}.page-head>*{margin:0}.page-head h1{font-size:clamp(1.75rem,1.3rem + 1.6vw,2.5rem)}.state-chip{justify-self:start;padding:.15rem .6rem;border:1px solid;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:600}.state-chip--positive{color:var(--positive)}.state-chip--waiting{color:var(--ink);background:var(--marker-wash);border-color:var(--marker)}.state-chip--stopped{color:var(--ink-soft)}.ledger{display:grid;grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-lg)}.ledger--raised{box-shadow:var(--shadow-float)}.ledger>h2{margin:0;font-size:var(--text-sm);font-weight:600;color:var(--ink-soft)}.ledger__rows{margin:0;display:grid}.ledger__rows>div{display:grid;grid-template-columns:5.5rem minmax(0,1fr);grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--line)}.ledger__rows dt{color:var(--ink-faint);font-size:var(--text-sm)}.ledger__rows dd{margin:0;overflow-wrap:anywhere}.ledger__figure,.ledger__total,.order-lines__price{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ledger__total{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3);margin:0;padding-top:var(--space-3);border-top:2px solid var(--ink);font-weight:700}.ledger__total>:last-child{font-size:var(--step-2)}.ledger__note{margin:0;font-size:var(--text-sm);color:var(--ink-soft)}.ledger .order-lines{margin:0}.ledger .order-lines li{padding:var(--space-2) 0}.order-lines__price{justify-self:end}.checkout-layout,.receipt-layout{display:grid;grid-gap:var(--space-6);gap:var(--space-6);align-items:start}.checkout-layout__main,.receipt-layout__main,.receipt-layout__side{display:grid;grid-gap:var(--space-6);gap:var(--space-6);min-width:0}.receipt-layout__side{gap:var(--space-4)}@media (min-width:60rem){.checkout-layout,.receipt-layout{grid-template-columns:minmax(0,1fr) 22rem;column-gap:var(--space-7)}.checkout-layout__side{grid-column:2;grid-row:1;position:-webkit-sticky;position:sticky;top:1.5rem}.checkout-layout__main{grid-column:1;grid-row:1}}.checkout-form{display:grid;grid-gap:var(--space-6);gap:var(--space-6)}.checkout-form .invoice-fields>legend,.checkout-section>h2{display:block;width:100%;margin:0 0 var(--space-4);padding:0 0 var(--space-3);font-size:var(--step-2);font-weight:700;border-bottom:2px solid var(--ink)}.checkout-section>*{margin-block:0}.checkout-section>*+*{margin-top:var(--space-3)}.checkout-form .invoice-fields{border:0;border-radius:0;padding:0;min-width:0}.checkout-form .invoice-fields__choices{gap:0;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}.checkout-form .invoice-fields__choices label{padding:0 var(--space-4)}.checkout-form .invoice-fields__choices label+label{border-top:1px solid var(--line)}.checkout-form .invoice-fields__choices label:has(input:checked){background:var(--accent-wash);font-weight:600}.checkout-form__submit{margin:0;padding-top:var(--space-5);border-top:1px solid var(--line)}@media (max-width:45.999rem){.checkout-form__submit .button{width:100%}}.start-checklist{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-lg);overflow:hidden}.start-checklist>h2{margin:0;padding:var(--space-4) var(--space-5);font-size:var(--step-1);border-bottom:2px solid var(--ink)}.start-checklist__steps{list-style:none;margin:0;padding:0}.start-checklist__step{display:grid;grid-template-columns:3rem minmax(0,1fr)}.start-checklist__step+.start-checklist__step{border-top:1px solid var(--line)}.start-checklist__index{padding-top:var(--space-4);background:var(--surface-sunken);border-right:1px solid var(--line);color:var(--ink-faint);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center}.start-checklist__step--done .start-checklist__index{color:var(--positive)}.start-checklist__text{padding:var(--space-4) var(--space-5)}.start-checklist__text>*{margin:0}.start-checklist__text>*+*{margin-top:var(--space-2)}.start-checklist__text h3{font-size:var(--step-0)}.start-checklist__text p{color:var(--ink-soft)}.start-checklist__text .button{margin-top:var(--space-2)}.learning-list{list-style:none;margin:0;padding:0}.learning-list,.learning-row{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.learning-row{padding:var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.learning-row__cover{display:block;border-radius:var(--radius-sm);overflow:hidden}.learning-row__text{display:grid;grid-gap:var(--space-2);gap:var(--space-2);min-width:0}.learning-row__text>*{margin:0}.learning-row__text h2{font-size:var(--step-1)}.learning-row__text h2 a{color:var(--ink);text-decoration:none}.learning-row__text h2 a:hover{color:var(--accent);text-decoration:underline}.learning-row__progress{display:grid;grid-gap:var(--space-1);gap:var(--space-1);max-width:24rem}.learning-row__action,.learning-row__progress>p{margin:0}.learning-row--lapsed{background:var(--surface-sunken)}.learning-row--lapsed .learning-row__cover{opacity:.6}@media (min-width:46rem){.learning-row{grid-template-columns:14rem minmax(0,1fr) auto;align-items:center;column-gap:var(--space-5)}.learning-row__action{align-self:center}}.meter{display:block;height:.5rem;background:var(--surface-sunken);border:1px solid var(--line);border-radius:999px;overflow:hidden}.meter__fill{display:block;height:100%;background:var(--accent);transform-origin:left center;transform:scaleX(var(--meter-to,0))}.lesson-head{display:grid;grid-gap:var(--space-3);gap:var(--space-3);padding-bottom:var(--space-5);border-bottom:1px solid var(--line)}.lesson-head>*{margin:0}.lesson-head h1{font-size:clamp(1.6rem,1.25rem + 1.3vw,2.25rem)}.lesson-completion__progress{display:grid;grid-gap:var(--space-2);gap:var(--space-2);flex:1 1 14rem}.lesson-completion__state{display:inline-flex;align-items:center;gap:var(--space-2)}.lesson-completion__tick{display:inline-grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:999px;background:var(--accent);color:var(--accent-ink);font-size:var(--text-sm)}.syllabus__progress{display:grid;grid-gap:var(--space-1);gap:var(--space-1);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line)}.syllabus__progress p{margin:0;font-size:var(--text-sm);color:var(--ink-soft);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}aside.syllabus .lesson--done .lesson__index{color:var(--positive);font-weight:700}.academy-hero+.section--after-head,.page-head+.section--after-head{margin-top:var(--space-6)}.page-head .chips{margin-top:var(--space-2)}.academy-hero{display:grid;grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-7) var(--space-5);background:var(--brand-accent);color:#ffffff;border-radius:var(--radius-lg)}.academy-hero>*{margin:0;max-width:40rem}.academy-hero h1{font-size:clamp(2rem,1.4rem + 2.2vw,3rem)}.academy-hero .eyebrow,.academy-hero .lede{color:rgb(255 255 255/86%)}@media (prefers-color-scheme:dark){.academy-hero{background:#6e1f2b}}@media (min-width:46rem){.academy-hero{padding:var(--space-8) var(--space-7)}}.person--hero{padding-bottom:var(--space-6);border-bottom:1px solid var(--line)}.person--hero h1{font-size:clamp(1.75rem,1.3rem + 1.6vw,2.5rem);margin:0}.person--hero+.section{margin-top:var(--space-6)}.sign-in{max-width:30rem;margin:var(--space-4) auto 0;padding:var(--space-6) var(--space-5);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-float)}.sign-in h1{font-size:var(--step-3)}.sign-in .button{width:100%}.account-page{max-width:40rem}.form-panel{padding:var(--space-5);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-lg)}.form-panel>h2{font-size:var(--step-1);padding-bottom:var(--space-3);border-bottom:2px solid var(--ink)}.form-panel label{display:grid;grid-gap:.3rem;gap:.3rem;font-weight:600}.form-panel input[type=text]{font:inherit;font-weight:400;padding:.6rem .7rem;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:inherit;width:100%;min-height:2.75rem}.form-panel input[type=text]:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.policy-version{justify-self:start;padding:.15rem .6rem;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);font-size:var(--text-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media screen{.certificate-page{max-width:44rem;margin-inline:auto}.certificate-page>.notice{max-width:none}.certificate__facts{padding-top:var(--space-4);border-top:2px solid var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}}@media (max-width:45.999rem){.site-nav{flex-wrap:nowrap;gap:1.25rem;width:100%;margin-left:0;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 1.5rem),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 1.5rem),transparent)}.site-nav::-webkit-scrollbar{display:none}.site-nav>*{flex:none;white-space:nowrap}.site-nav>:last-child{padding-right:1.5rem}}.course-search{display:flex;gap:var(--space-2);max-width:34rem;margin-top:var(--space-2)}.course-search input[type=search]{flex:1 1 auto;min-width:0;min-height:2.75rem;padding:.6rem .8rem;font:inherit;color:inherit;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius)}.course-search input[type=search]:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.course-filters{display:grid;margin-bottom:var(--space-6);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);overflow:hidden}.course-filters__row{display:grid;grid-template-columns:5.5rem minmax(0,1fr)}.course-filters__row+.course-filters__row{border-top:1px solid var(--line)}.course-filters__label{padding:var(--space-3);background:var(--surface-sunken);border-right:1px solid var(--line);color:var(--ink-soft);font-size:var(--text-sm);font-weight:600}.course-filters .chips{gap:var(--space-2);padding:var(--space-2) var(--space-3);align-items:center}.course-filters .chip{padding:.3rem .8rem}.chip__count{margin-left:.35rem;color:var(--ink-faint);font-size:var(--text-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chip[aria-current=true] .chip__count{color:inherit}@media (max-width:45.999rem){.course-filters__row{grid-template-columns:minmax(0,1fr)}.course-filters__label{padding:var(--space-2) var(--space-3) 0;background:none;border-right:0}.course-filters .chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 1.5rem),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 1.5rem),transparent)}.course-filters .chips>li:last-child{padding-right:1.5rem}.course-filters .chips>li{flex:none}}.course-search__summary{margin:0;color:var(--ink-soft);font-size:var(--text-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.empty-result{padding:var(--space-6) var(--space-5);background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);text-align:center}.empty-result>*{margin:0}.empty-result>*+*{margin-top:var(--space-2);color:var(--ink-soft)}.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-2) var(--space-4);margin-top:var(--space-7);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pagination ol{display:flex;gap:var(--space-1);list-style:none;margin:0;padding:0}.pagination a,.pagination>span,.pagination__gap{display:inline-grid;place-items:center;min-width:2.75rem;min-height:2.75rem;padding:0 var(--space-2);border-radius:var(--radius)}.pagination a{color:var(--ink);text-decoration:none;border:1px solid var(--line-strong);background:var(--surface)}.pagination a:hover{border-color:var(--accent);color:var(--accent)}.pagination a[aria-current=page]{background:var(--ink);border-color:var(--ink);color:var(--paper);font-weight:700}.pagination>span,.pagination__gap{color:var(--ink-faint)}.pagination__gap{min-width:1.5rem}@media (prefers-reduced-motion:no-preference){@keyframes settle{0%{opacity:0;transform:translateY(.75rem)}to{opacity:1;transform:none}}@keyframes slide-onto{0%{opacity:0;transform:translateY(1.5rem)}to{opacity:1;transform:none}}@keyframes draw-stroke{0%{background-size:0 100%}to{background-size:100% 100%}}@keyframes landed{0%{background-color:var(--marker-wash)}to{background-color:transparent}}.banner__text>*,.course-hero__text>*,.home-intro__actions,.home-intro__words>*{animation:settle .52s cubic-bezier(.2,.7,.2,1) backwards}.banner__text>:nth-child(2),.course-hero__text>:nth-child(2),.home-intro__words>:nth-child(2){animation-delay:70ms}.banner__text>:nth-child(3),.course-hero__text>:nth-child(3),.home-intro__words>:nth-child(3){animation-delay:.14s}.banner__text>:nth-child(n+4),.course-hero__text>:nth-child(n+4),.home-intro__actions{animation-delay:.21s}.banner__cover,.course-hero>.cover--hero{animation:settle .64s cubic-bezier(.2,.7,.2,1) 80ms backwards}.banner__sheet{animation:slide-onto .62s cubic-bezier(.2,.8,.2,1) .36s backwards}.sheet__rows li:first-child .sheet__text{background-image:linear-gradient(transparent 58%,var(--marker-stroke) 58%);background-repeat:no-repeat;background-size:100% 100%;animation:draw-stroke .62s cubic-bezier(.4,0,.2,1) .98s backwards}.card h3 a{background-image:linear-gradient(transparent 60%,var(--marker-stroke) 60%);background-repeat:no-repeat;background-size:0 100%;transition:background-size .28s cubic-bezier(.4,0,.2,1)}.card:focus-within h3 a,.card:hover h3 a{background-size:100% 100%}.card{transition:border-color .2s ease}.card:focus-within,.card:hover{border-color:var(--line-strong)}.course-page h2:target{animation:landed 1.4s ease-out backwards}.banner__track{transition:transform .56s cubic-bezier(.4,0,.2,1)}.button{transition:background-color .15s ease,border-color .15s ease,transform 80ms ease}.button:active{transform:translateY(1px)}.banner__buy .button:active{transform:none}}@media (prefers-reduced-motion:no-preference){@keyframes meter-advance{0%{transform:scaleX(var(--meter-from,0))}}@keyframes tick-arrive{0%{opacity:0;transform:scale(.4)}}.meter--advanced .meter__fill{animation:meter-advance .72s cubic-bezier(.2,.7,.2,1) .18s backwards}.lesson-completion--just-marked .lesson-completion__tick,aside.syllabus .lesson--just-marked .lesson__index{animation:tick-arrive .42s cubic-bezier(.3,1.4,.5,1) .52s backwards}.lesson-head>*,.page-head>*{animation:settle .52s cubic-bezier(.2,.7,.2,1) backwards}.lesson-head>:nth-child(2),.page-head>:nth-child(2){animation-delay:70ms}.lesson-head>:nth-child(n+3),.page-head>:nth-child(n+3){animation-delay:.14s}.course-hero>.cover--hero{view-transition-name:course-cover}::view-transition-group(course-cover){animation-duration:.42s;animation-timing-function:cubic-bezier(.2,.7,.2,1)}::view-transition-new(root),::view-transition-old(root){animation-duration:.22s}.is-card-transition .course-hero>.cover--hero{animation:none}}