:root{--scroll-bar-track-color:var(--color-light-shade);--scroll-bar-thumb-color:var(--color-dark);--stroke-color:var(--color-dark);--scroll-bar-offset:var(--space-l-xl);--cluster-wrap:wrap;--cluster-column-gap:var(--gutter,var(--space-s-m));--cluster-row-gap:var(--gutter,var(--space-s-m));--cluster-horizontal-alignment:flex-start;--cluster-vertical-alignment:center;--cluster-direction:row;--gutter-wrapper-inline:var(--gutter);--gutter-wrapper-inner-inline:var(--gutter);--gutter-wrapper-inner-block:var(--gutter);--input-padding:var(--space-2xs);--input-radius:0;--input-stroke:var(--stroke);--input-width:100%;--input-background:var(--color-light);--input-font-size:var(--size-step--1);--input-leading:var(--leading);--input-weight:var(--font-normal);--input-font-family:var(--font-base);--label-leading:var(--leading);--label-font-size:var(--size-step-4);--label-weight:var(--font-normal);--label-font-family:var(--font-accent);--label-display:flex;--label-flex-direction:column;--label-align-items:flex-start;--input-flex-gap:var(--space-s);--fieldset-border:none;--fieldset-padding:0;--button-display:inline-flex;--button-align-items:center;--button-justify-content:center;--button-gap:var(--space-2xs);--button-padding:var(--space-xs,0.8em) var(--space-m,2em);--button-leading:var(--leading);--button-line-height:var(--leading-slim);--button-border-width:var(--stroke-weight-light);--button-border-style:solid;--button-radius:none;--button-box-shadow:none;--button-text-transform:uppercase;--button-font-weight:var(--font-bold);--button-font-size:var(--size-step--3);--button-font-family:var(--font-display);--button-kerning:var(--kerning);--button-svg-height:1.75ex;--button-svg-color:var(--color-secondary);--button-hover-svg-color:inherit;--button-primary-bg:var(--color-primary);--button-primary-text:var(--color-dark);--button-primary-border-color:var(--color-primary);--button-primary-bg-hover:var(--color-primary-glare);--button-primary-text-hover:var(--color-dark);--button-primary-border-color-hover:var(--color-primary);--button-dark-bg:var(--color-dark);--button-dark-text:var(--color-light);--button-dark-border-color:var(--color-dark);--button-dark-bg-hover:transparent;--button-dark-text-hover:var(--color-dark);--button-dark-border-color-hover:var(--color-dark);--button-light-bg:var(--color-light);--button-light-text:var(--color-dark);--button-light-border-color:var(--color-light);--button-light-bg-hover:transparent;--button-light-text-hover:var(--color-light);--button-light-border-color-hover:var(--color-light);--button-ghost-dark-bg:transparent;--button-ghost-dark-text:var(--color-dark);--button-ghost-dark-border-color:var(--color-dark);--button-ghost-dark-bg-hover:var(--color-dark);--button-ghost-dark-text-hover:var(--color-light);--button-ghost-dark-border-color-hover:var(--color-dark);--button-ghost-light-bg:transparent;--button-ghost-light-text:var(--color-light);--button-ghost-light-border-color:var(--color-light);--button-ghost-light-bg-hover:var(--color-light);--button-ghost-light-text-hover:var(--color-dark);--button-ghost-light-border-color-hover:var(--color-light);--button-ghost-primary-bg:transparent;--button-ghost-primary-text:var(--color-primary);--button-ghost-primary-border-color:var(--color-primary);--button-ghost-primary-bg-hover:var(--color-primary-glare);--button-ghost-primary-text-hover:var(--color-dark);--button-ghost-primary-border-color-hover:var(--color-primary);--mark-bg:linear-gradient(0deg,transparent 20%,rgba(var(--color-primary-rgb),1) 20%,rgba(var(--color-primary-rgb),1) 84%,transparent 84%);--mark-bg-light:linear-gradient(0deg,transparent 20%,rgba(var(--color-light-rgb),1) 20%,rgba(var(--color-light-rgb),1) 84%,transparent 84%);--code-stroke:1px solid var(--color-dark);--code-color:var(--color-secondary-shade);--code-font-size:var(--size-step--1);--ribbon-border-block-start:var(--space-s-m) solid var(--color-primary);--badge-display:inline-flex;--badge-border:var(--stroke);--badge-padding:calc(var(--space-2xs)*0.5) var(--space-2xs);--badge-font-size:var(--size-step--3);--badge-font-family:var(--font-display);--badge-color:var(--text-dark);--badge-default-decoration:none;--badge-text-transform:uppercase;--badge-hover-bg:var(--color-dark);--badge-hover-color:var(--color-light);--badge-hover-border-color:var(--color-dark);--badge-dark-variant-bg:var(--color-dark);--badge-dark-variant-color:var(--color-light);--badge-dark-variant-hover-bg:var(--color-mid-dark);--badge-dark-variant-hover-border-color:var(--color-mid-dark);--footer-navigation-font-family:var(--font-accent);--footer-navigation-font-size:var(--text-size-base);--footer-navigation-cluster-direction:row;--footer-navigation-cluster-vertical-alignment:center;--footer-navigation-cluster-row-gap:var(--gutter);--footer-navigation-cluster-column-gap:var(--gutter);--banner-color:var(--color-primary);--banner-bg:var(--color-dark);--banner-gutter-wrapper-inner-block:var(--space-xs-s);--banner-cluster-column-gap:var(--space-s);--banner-cluster-row-gap:var(--space-s);--fyi-unit-gutter-wrapper-inner-block:var(--space-m);--fyi-unit-bg:var(--color-light-glare);--fyi-unit-font-family:var(--font-display);--fyi-unit-font-size:var(--size-step-3);--fyi-unit-line-height:var(--leading-slim);--fyi-unit-letter-spacing:var(--heading-kerning);--icon-link-direction:row;--icon-link-vertical-alignment:center;--icon-link-row-gap:var(--space-xs-s);--icon-link-column-gap:var(--space-xs-s);--icon-link-font-size:var(--size-step--1);--icon-link-color:inherit;--icon-link-text-decoration:underline;--icon-link-text-decoration-thickness:var(--text-decoration-thickness);--icon-link-text-decoration-color:var(--text-decoration-color);--icon-link-hover-color:inherit;--icon-link-hover-text-decoration:underline;--icon-link-svg-height:1.25ex;--icon-link-hidden-label-display:flex;--icon-link-hidden-label-vertical-alignment:center;--icon-link-hidden-label-horizontal-alignment:center;--icon-link-hidden-label-min-tap-size:44px;--icon-link-hidden-label-bg:var(--color-light);--icon-link-hidden-label-color:var(--color-dark);--icon-link-hidden-label-bg-hover:var(--color-dark);--icon-link-hidden-label-color-hover:var(--color-light);--card-cluster-direction:column;--card-cluster-vertical-alignment:flex-start;--card-row-gap:var(--space-l-xl);--card-column-gap:var(--space-l-xl);--card-flow-space:var(--space-xs-s);--card-heading-font-size:var(--size-step-3);--card-heading-font-family:var(--font-accent);--card-heading-link-color:inherit;--card-heading-link-font-size:var(--size-step-3);--card-heading-link-text-decoration:none;--card-heading-link-text-decoration-thickness:var(
    --text-decoration-thickness
  );--card-heading-link-text-decoration-hover:underline;--card-heading-link-text-decoration-color:var(--text-decoration-color);--card-summary-font-size:var(--text-size-base);--card-meta-cluster-direction:row;--card-meta-cluster-vertical-alignment:center;--card-meta-row-gap:var(--space-xs-s);--card-meta-column-gap:var(--space-xs-s);--card-meta-font-size:var(--size-step--1);--card-meta-link-font-family:var(--font-accent);--card-meta-link-color:inherit;--card-meta-link-text-decoration:none;--card-meta-link-text-decoration-thickness:var(--text-decoration-thickness);--card-meta-link-text-decoration-hover:underline;--card-meta-link-text-decoration-color:var(--text-decoration-color);--var-pagination-cluster-column-gap:var(--space-m);--var-pagination-cluster-row-gap:var(--space-m);--var-pagination-list-cluster-column-gap:var(--space-2xs);--var-pagination-list-cluster-row-gap:var(--space-2xs);--pagination-item-tap-size:44px;--pagination-item-border:var(--stroke);--pagination-item-padding:var(--space-2xs);--pagination-item-font-family:var(--font-accent);--pagination-item-font-size:var(--text-size-base);--pagination-item-bg-hover:var(--color-dark);--pagination-item-text-hover:var(--color-light);--post-content-flow-space:var(--space-l);--post-content-padding-inline-md:var(--space-3xl);--post-content-padding-block-md:var(--space-3xl);--post-meta-flow-space:var(--space-xs-s);--post-meta-padding-block-md:var(--space-3xl);--post-meta-cluster-vertical-alignment:flex-start;--post-meta-cluster-direction:column;--post-meta-cluster-column-gap:var(--space-xs-s);--post-meta-cluster-row-gap:var(--space-xs-s);--post-heading-max-width:40ch;--post-heading-font-size:var(--size-step-4);--post-heading-font-family:var(--font-accent);--post-heading-text-decoration:none;--post-heading-text-decoration-hover:underline;--post-heading-text-decoration-color:var(--color-secondary);--post-summary-max-width:60ch;--post-author-group-cluster-column-gap:var(--space-2xs);--post-author-group-cluster-row-gap:var(--space-2xs);--post-author-link-font-family:var(--font-accent);--post-author-link-text-decoration:none;--post-author-link-text-decoration-hover:underline;--post-author-link-text-decoration-color:var(--color-secondary);--post-newsletter-cluster-wrap:wrap;--post-newsletter-cluster-column-gap:var(--space-l);--post-newsletter-cluster-row-gap:var(--space-l);--post-newsletter-cluster-horizontal-alignment:flex-start;--post-newsletter-cluster-vertical-alignment:baseline;--post-newsletter-cluster-direction:row;--post-newsletter-heading-font-size:var(--size-step-5);--author-summary-font-size:var(--size-step-6);--author-summary-text-decoration-color:var(--color-secondary);--author-summary-text-decoration-color-hover:var(--color-dark);--author-summary-profile-cluster-wrap:wrap;--author-summary-profile-cluster-column-gap:var(--space-m);--author-summary-profile-cluster-row-gap:var(--space-m);--author-summary-profile-cluster-horizontal-alignment:flex-start;--author-summary-profile-cluster-vertical-alignment:center;--author-summary-profile-cluster-direction:row;--author-summary-profile-flow-space:var(--space-s-m);--author-summary-profile-figcaption-font-size:var(--size-step-0);--author-summary-profile-figcaption-link-font-family:var(--font-accent);--author-summary-avatar-width:120px;--author-summary-topics-cluster-wrap:wrap;--author-summary-topics-cluster-column-gap:var(--space-xs-s);--author-summary-topics-cluster-row-gap:var(--space-xs-s);--author-summary-topics-cluster-horizontal-alignment:flex-start;--author-summary-topics-cluster-vertical-alignment:center;--author-summary-topics-cluster-direction:row;--author-summary-topics-heading-font-family:var(--font-base);--author-summary-topics-heading-font-size:var(--size-step-0);--author-summary-topics-list-cluster-column-gap:var(--space-2xs);--author-summary-topics-list-cluster-row-gap:var(--space-2xs);--author-summary-links-heading-font-family:var(--font-accent);--author-summary-links-heading-font-size:var(--size-step-0);--author-summary-links-list-cluster-column-gap:var(--space-s);--author-summary-links-list-cluster-row-gap:var(--space-s);--author-summary-bio-max-width:70ch;--author-summary-elsewhere-gutter-wrapper-inner-block:var(--space-s);--author-summary-post-avatar-width:80px;--author-summary-post-profile-flow-space:var(--space-l);--topics-list-gutter-wrapper-inner-block:var(--space-s);--topics-list-reel-item-width:max-content;--topics-list-reel-space:0;--topics-list-scroll-bar-offset:var(--space-xs);--topics-list-scroll-bar-size:8px;--topics-list-scroll-bar-track-color:var(--color-dark-glare);--topics-list-scroll-bar-thumb-color:var(--color-grey-7);--topics-list-bg:var(--color-dark);--topics-list-text:var(--color-light);--topics-list-heading-font-size:var(--size-step-1);--topics-list-ghost-light-bg:transparent;--topics-list-button-ghost-light-text:var(--color-light);--topics-list-button-ghost-light-border-color:var(--color-light);--topics-list-button-ghost-light-bg-hover:var(--color-light);--topics-list-button-ghost-light-text-hover:var(--color-dark);--topics-list-button-ghost-light-border-color-hover:var(--color-light);--topics-list-container-cluster-wrap:nowrap;--topics-list-container-cluster-vertical-alignment:baseline;--topics-list-container-cluster-column-gap:var(--space-s-m);--topics-list-container-cluster-row-gap:var(--space-s-m);--topics-list-reel-cluster-wrap:nowrap;--topics-list-reel-cluster-column-gap:var(--space-m);--topics-list-reel-cluster-row-gap:var(--space-m);--topics-list-reel-cluster-horizontal-alignment:flex-start;--topics-list-reel-cluster-vertical-alignment:center;--topics-list-reel-cluster-direction:row;--topics-list-items:var(--space-2xs);--code-block-font-family:var(--font-mono);--code-block-scrollbar-color:var(--color-dark) var(--color-light-glare);--code-block-header-cluster-horizontal-alignment:space-between;--code-block-header-padding-inline-start:var(--gutter);--code-block-header-font-size:var(--size-step--3);--code-block-alert-bg:var(--color-dark);--code-block-alert-text:var(--color-light);--code-block-alert-text-transform:uppercase;--code-block-header-button-font-weight:var(--font-normal);--code-block-header-button-font-family:var(--font-mono);--code-block-header-button-bg:var(--color-light);--code-block-header-button-bg-hover:var(--color-dark);--code-block-header-button-text:var(--color-dark);--code-block-header-button-text-hover:var(--color-light);--code-block-header-dl-text-transform:uppercase;--code-block-header-dl-font-size:var(--size-step--3);--code-block-pre-padding-inline:var(--gutter);--code-block-code-bg:var(--color-light-glare);--code-block-selection-bg:var(--color-primary-glare);--code-block-selection-text:var(--color-dark);--preview-frame-iframe-height:30rem;--preview-frame-iframe-height-md:min(60rem,65svh);--preview-frame-bg:var(--color-light);--preview-frame-text:var(--color-dark);--preview-frame-caption-padding-inline:var(--gutter);--preview-frame-caption-padding-block:var(--space-m);--preview-frame-caption-font-family:var(--font-mono);--preview-frame-caption-font-size:var(--size-step--3);--preview-frame-caption-leading:var(--leading);--preview-frame-header-button-font-weight:var(--font-normal);--preview-frame-header-button-font-family:var(--font-mono);--preview-frame-header-button-bg:var(--color-light);--preview-frame-header-button-bg-hover:var(--color-dark);--preview-frame-header-button-text:var(--color-dark);--preview-frame-header-button-text-hover:var(--color-light);--preview-frame-header-padding-inline:var(--gutter);--preview-frame-header-padding-block:var(--space-s);--preview-frame-heading-font-size:var(--size-step--3);--preview-frame-heading-font-family:var(--font-mono);--preview-frame-heading-font-weight:var(--font-normal);--preview-frame-heading-leading:var(--leading-flat);--preview-frame-heading-text-transform:uppercase;--preview-frame-heading-kerning:var(--kerning-loose);--preview-frame-controls-cluster-wrap:nowrap;--preview-frame-controls-cluster-column-gap:var(--space-m);--preview-frame-controls-padding-inline:var(--gutter);--preview-frame-controls-padding-block:var(--space-m);--preview-frame-controls-max-width:27rem;--preview-frame-label-font-size:var(--size-step--3);--preview-frame-label-font-family:var(--font-mono);--preview-frame-label-text-transform:uppercase;--input-slider-thumb-size:12px;--input-slider-thumb-margin-top:calc((var(--input-slider-thumb-size)/2)*-1);--chat-window-flow-space:var(--space-xs);--chat-window-column-gap:var(--space-s);--chat-window-row-gap:var(--space-s);--chat-window-cluster-vertical-alignment:flex-start;--chat-window-cluster-wrap:nowrap;--chat-window-avatar-size:3.125rem;--chat-window-border-color:var(--color-light-shade);--chat-window-margin-block:var(--space-2xl);--chat-window-padding:var(--space-l-xl);--chat-window-background:var(--color-light-glare);--chat-window-color:var(--color-dark);--chat-window-font-family:var(--font-system);--chat-window-font-size:var(--size-step-0);--chat-window-list-margin-top:var(--space-m-l);--chat-window-list-max-width:none;--chat-window-item-padding:var(--space-m);--chat-window-sender-margin-bottom:var(--space-2xs);--chat-window-sender-font-size:var(--size-step-2);--chat-window-sender-font-weight:var(--font-bold);--chat-window-avatar-me-circle:var(--color-primary);--chat-window-avatar-me-icon:var(--color-dark);--chat-window-avatar-them-circle:var(--color-dark);--chat-window-avatar-them-icon:var(--color-light);--instruction-display:block;--instruction-margin-block:var(--space-2xl);--instruction-padding:var(--space-xl);--instruction-background:var(--color-light-glare);--instruction-border-left:var(--stroke-weight-heavy) solid var(--color-primary);--instruction-font-size:var(--size-step-1);--instruction-heading-margin-bottom:var(--space-m);--instruction-heading-font-family:var(--font-display);--instruction-heading-font-size:var(--size-step--2);--instruction-heading-text-transform:uppercase;--instruction-heading-icon-width:2ex;--instruction-heading-icon-adjustment:translateY(-0.2ex);--instruction-code-background:var(--color-light);--email-window-flow-space:var(--space-xs);--email-window-column-gap:var(--space-s);--email-window-row-gap:var(--space-s);--email-window-cluster-vertical-alignment:flex-start;--email-window-cluster-wrap:nowrap;--email-window-avatar-size:3.125rem;--email-window-margin-block:var(--space-2xl);--email-window-font-family:var(--font-system);--email-window-font-size:var(--size-step-0);--email-window-message-margin-top:var(--space-m-l);--email-window-message-padding:var(--space-l-xl);--email-window-message-background:var(--color-light-glare);--email-window-message-border-color:1px solid var(--color-light-shade);--email-window-message-color:var(--color-dark);--email-window-meta-margin-bottom:var(--space-s);--email-window-sender-font-size:var(--size-step-2);--email-window-sender-font-weight:var(--font-bold);--email-window-sender-line-height:var(--leading-flat);--email-window-recipient-color:var(--color-grey-7);--email-window-recipient-font-size:var(--size-step--1);--email-window-avatar-me-circle:var(--color-primary);--email-window-avatar-me-icon:var(--color-dark);--pay-wall-repel-wrap:nowrap;--pay-wall-repel-column-gap:var(--space-s);--pay-wall-repel-row-gap:var(--space-s);--pay-wall-repel-vertical-alignment:flex-start;--pay-wall-background:var(--color-light-glare);--pay-wall-padding:var(--space-xl);--pay-wall-inner-cluster-direction:column;--pay-wall-inner-cluster-column-gap:var(--space-2xl);--pay-wall-inner-cluster-row-gap:var(--space-2xl);--pay-wall-inner-cluster-vertical-alignment:flex-start;--pay-wall-header-cluster-wrap:wrap;--pay-wall-header-cluster-column-gap:var(--space-s);--pay-wall-header-cluster-row-gap:var(--space-s);--pay-wall-heading-font-size:var(--size-step-5);--pay-wall-heading-font-family:var(--font-display);--pay-wall-buy-button-svg-color:var(--color-dark);--pay-wall-buy-button-font-size:var(--size-step-3);--pay-wall-login-label-font-size:var(--size-step-0);--pay-wall-login-label-font-family:var(--font-base);--pay-wall-login-button-padding:calc(var(--space-xs) + 0.5px) var(--space-m);--pay-wall-login-heading-font-size:var(--size-step-3);--pay-wall-login-heading-font-family:var(--font-display);--pay-wall-login-form-display:flex;--pay-wall-login-form-gap:var(--space-s);--pay-wall-login-form-align-items:flex-end;--pay-wall-login-form-flex-wrap:wrap;--pay-wall-login-form-margin-block-start:var(--space-m);--pay-wall-login-input-display:flex;--pay-wall-login-input-gap:var(--space-xl);--pay-wall-login-input-flex-direction:column;--pay-wall-login-input-field-background:var(--color-light-glare);--pay-wall-icon-padding:var(--space-s);--pay-wall-icon-border:1px solid currentColor;--pay-wall-icon-color:var(--color-dark);--pay-wall-icon-svg-width:1.625rem;--block-action-flow-space:var(--space-s);--block-action-padding:var(--space-xl);--block-action-display:block;--block-action-text-decoration:none;--block-action-sidebar-target-width:auto;--block-action-sidebar-badge-color:var(--color-light);--block-action-sidebar-badge-border:1px solid var(--color-light);--block-action-sidebar-flex-wrap:nowrap;--block-action-sidebar-align-items:flex-end;--block-action-sidebar-background:var(--color-dark);--block-action-sidebar-color:var(--color-light);--block-action-sidebar-icon-size:clamp(2rem,5vw,4rem);--block-action-heading-font-size:var(--size-step-4);--block-action-heading-text-decoration-hover:underline;--block-action-heading-text-decoration-color:var(--color-primary);--block-action-lede-icon-size:1.25ex;--block-action-lede-cluster-wrap:nowrap;--block-action-lede-cluster-column-gap:var(--space-s);--block-action-lede-cluster-vertical-alignment:flex-start;--block-action-lede-padding-block:var(--space-s);--block-action-lede-background:var(--color-primary);--block-action-lede-color:var(--color-dark);--block-action-lede-font-size:var(--size-step-1);--block-action-lede-text-decoration:underline;--block-action-lede-text-decoration-hover:none;--course-hero-cluster-direction:column;--course-hero-cluster-column-gap:var(--space-s);--course-hero-cluster-row-gap:var(--space-s);--course-hero-cluster-vertical-alignment:flex-start;--course-hero-heading-font-size:var(--size-step-6);--progress-gutter-wrapper-inner-block:0 var(--space-m);--progress-label-font-size:var(--size-step--2);--progress-cluster-direction:row;--progress-cluster-column-gap:var(--space-2xs);--progress-cluster-row-gap:var(--space-2xs);--progress-cluster-vertical-alignment:center;--progress-text-font-family:var(--font-display);--progress-text-italic-font-size:var(--size-step--1);--progress-text-italic-font-family:var(--font-base);--progress-bar-color:var(--color-primary);--progress-bar-background:var(--color-mid-shade);--progress-bar-height:1rem;--quick-links-repel-wrap:nowrap;--quick-links-repel-vertical-alignment:center;--quick-links-repel-horizontal-alignment:space-between;--quick-links-repel-column-gap:var(--space-2xs);--quick-links-repel-row-gap:var(--space-2xs);--quick-links-font-family:var(--font-display);--quick-links-font-size:var(--size-step--1);--quick-links-text-transform:uppercase;--quick-links-stroke:var(--stroke);--quick-links-padding-block:var(--space-s);--quick-links-text-decoration:none;--quick-links-hover-text-decoration:none;--quick-links-hover-svg-fill:var(--color-secondary);--off-screen-menu-summary-button-svg-height:3ex;--off-screen-menu-summary-button-svg-color:currentColor;--off-screen-menu-summary-button-gap:var(--space-xs);--off-screen-menu-summary-button-width:100%;--off-screen-menu-summary-button-border:none;--off-screen-menu-summary-button-hover-background:var(--color-dark);--off-screen-menu-summary-button-hover-color:var(--color-light);--off-screen-menu-panel-width:100vi;--off-screen-menu-panel-padding:var(--space-xl) 0;--off-screen-menu-panel-background:var(--color-light);--off-screen-menu-panel-scrollbar-width:thin;--off-screen-menu-nav-heading-margin-block-end:var(--space-s);--off-screen-menu-nav-heading-font-family:var(--font-display);--off-screen-menu-nav-heading-font-size:var(--size-step-3);--off-screen-menu-nav-flow-space:var(--space-xl);--off-screen-menu-sub-nav-before-width:1.313rem;--off-screen-menu-sub-nav-before-height:1px;--off-screen-menu-sub-nav-before-background:var(--color-dark);--off-screen-menu-sub-nav-padding-inline-start:1.875rem;--off-screen-menu-sub-nav-link-font-family:var(--font-base);--off-screen-menu-sub-nav-link-font-size:var(--size-step-0);--off-screen-menu-sub-nav-link-text-decoration:none;--off-screen-menu-sub-nav-link-hover-text-decoration:underline;--off-screen-menu-sub-nav-badge-padding:0 var(--space-2xs);--off-screen-menu-sub-nav-badge-margin-inline-start:var(--space-2xs);--off-screen-menu-user-actions-button-svg-fill:currentColor;--scrollable-image-frame-bg:var(--color-light);--scrollable-image-frame-text:var(--color-dark);--scrollable-image-frame-header-button-font-weight:var(--font-normal);--scrollable-image-frame-header-button-font-family:var(--font-mono);--scrollable-image-frame-header-button-bg:var(--color-light);--scrollable-image-frame-header-button-text:var(--color-dark);--scrollable-image-frame-header-button-bg-hover:var(--color-dark);--scrollable-image-frame-header-button-text-hover:var(--color-light);--scrollable-image-frame-header-padding-inline:var(--gutter);--scrollable-image-frame-header-padding-block:var(--space-s);--scrollable-image-frame-label-font-size:var(--size-step--3);--scrollable-image-frame-label-font-family:var(--font-mono);--scrollable-image-frame-label-font-weight:var(--font-normal);--scrollable-image-frame-label-leading:var(--leading-flat);--scrollable-image-frame-label-text-transform:uppercase;--scrollable-image-frame-label-kerning:var(--kerning-loose);--scrollable-image-frame-mediaa-spect-ratio:16/9;--footer-color:var(--color-light);--footer-bg:var(--color-dark);--footer-gutter-wrapper-inner-block:var(--space-xl);--footer-cluster-direction:column;--footer-cluster-vertical-alignment:flex-start;--footer-cluster-row-gap:var(--space-2xs);--footer-cluster-column-gap:var(--space-2xs);--footer-flow-space:var(--space-3xl-4xl);--footer-margin-block-start:var(--space-3xl);--footer-margin-block-end:var(--gutter);--footer-brand-width:20rem;--footer-link-default-decoration:none;--headline-cluster-direction:column-reverse;--headline-cluster-vertical-alignment:flex-start;--headline-cluster-row-gap:var(--space-s);--headline-cluster-column-gap:var(--space-s);--headline-repel-vertical-alignment:flex-end;--headline-heading-font-size:var(--size-step-8);--headline-heading-line-height:var(--leading-flat);--headline-lede-font-size:var(--size-step-3);--headline-lede-font-style:italic;--headline-lede-p-max-width:var(--measure-m,45ch);--tab-panel-gutter-wrapper-inner-block:var(--space-s);--tab-panel-sidebar-target-width:18rem;--tab-panel-stroke:var(--stroke);--tab-panel-item-padding-block:var(--space-xl);--tab-panel-triggers-display:flex;--tab-panel-triggers-align-items:center;--tab-panel-tab-flex-basis:50%;--user-form-gutter-wrapper-inner-block:var(--space-l);--user-form-flow-space:var(--space-s);--user-form-repel-column-gap:var(--space-2xl);--user-form-repel-row-gap:var(--space-l);--user-form-header-bg:var(--color-dark);--user-form-header-color:var(--color-light);--user-form-header-font-family:var(--font-display);--user-form-header-font-size:var(--size-step-5);--user-form-body-bg:var(--color-light-glare);--user-form-body-color:var(--color-dark);--user-form-logo-width:clamp(24px,5vw,35px);--user-form-smallprint-font-size:var(--size-step--2);--user-form-rss-action-icon-width:1.125rem;--user-form-rss-action-icon-text:var(--color-dark);--user-form-rss-action-icon-text-hover:var(--color-secondary);--user-form-rss-svg-width:6rem;--user-form-rss-svg-emphasis:var(--color-secondary-shade);--user-form-form-gap:var(--space-s);--user-form-form-gap-max-width:36.25rem;--user-form-form-status-max-width:36.25rem;--user-form-muted-header-bg:var(--color-light-glare);--user-form-muted-color:var(--color-dark);--user-form-muted-header-border-block-end:var(--stroke);--user-form-muted-header-stroke-color:var(--color-light-glare);--user-form-body-stroke-color:var(--color-light-glare);--user-form-header-stroke-color:var(--color-dark);--hero-flow-space:var(--space-3xl);--hero-mark:var(--mark-bg-light);--hero-button-svg-color:currentColor;--hero-bg:var(--color-primary);--hero-text:var(--color-dark);--hero-heading-font-family:var(--font-display);--hero-heading-font-size:var(--size-step-7);--hero-heading-leading:var(--leading-flat);--hero-lede-font-size:var(--size-step-2);--hero-lede-text-wrap:balance;--hero-lede-font-family:var(--font-base);--hero-lede-font-style:italic;--hero-grid-gap:var(--space-l-xl);--hero-grid-heading-max-width:12ch;--hero-grid-lede-max-width:22ch;--hero-dl-cluster-column-gap:var(--space-2xs);--hero-dl-cluster-row-gap:var(--space-2xs);--hero-dl-dt-text-transform:none;--hero-dl-dt-font-family:var(--font-accent);--hero-dl-dt-font-weight:var(--font-bold);--hero-dl-dt-kerning:var(--kerning);--hero-dl-dt-display:inline;--hero-dl-dd-font-size:var(--size-step-0);--hero-dl-dd-display:inline;--hero-repel-vertical-alignment:flex-end;--hero-repel-column-gap:var(--space-2xs);--hero-repel-row-gap:var(--space-2xs);--post-list-header-gutter-wrapper-inner-block:var(--space-s);--post-list-no-header-margin-block-start:var(--space-xl);--header-padding-block-start:var(--space-m);--header-padding-block-start-sm:var(--space-xl);--header-tagline-padding-block:var(--space-s);--header-tagline-padding-block-end-md:var(--space-m);--header-tagline-font-size:var(--text-size-base);--header-tagline-font-family:var(--font-base);--header-tagline-font-weight:var(--font-normal);--header-tagline-leading:var(--leading-short);--header-tagline-em-font-style:italic;--header-byline-margin-block-start:var(--space-2xs);--header-byline-link-font-family:var(--font-accent);--header-byline-padding-block-end-lg:var(--space-m);--header-logo-width-md:calc(10rem + var(--gutter)*2);--header-logo-padding-block-end-md:var(--space-m);--header-logo-margin-block-end-md:0.3rem;--header-nav-sm-padding-block:var(--space-s);--header-nav-ul-wrap:wrap;--header-nav-ul-cluster-column-gap:var(--space-l);--header-nav-ul-cluster-column-gap-md:var(--space-xl);--header-nav-ul-cluster-row-gap:var(--space-xs);--header-nav-ul-cluster-horizontal-alignment:flex-start;--header-nav-ul-cluster-vertical-alignment:center;--header-nav-ul-cluster-direction:row;--header-nav-link-text-decoration:none;--header-nav-link-text-decoration-hover:underline;--header-nav-link-font-size:var(--size-step-0);--header-nav-link-font-family:var(--font-accent);--header-nav-link-line-height:var(--leading-slim);--header-nav-link-text-active-bg:var(--mark-bg,var(--color-primary));--header-controls-cluster-wrap:nowrap;--header-controls-cluster-column-gap:0;--header-controls-cluster-row-gap:0;--header-controls-icon-link-hidden-label-bg:transparent;--header-controls-margin-block-start:0;--brand-header-padding-block-start:var(--space-m);--brand-header-padding-block-start-sm:var(--space-xl);--brand-header-tagline-padding-block:var(--space-s);--brand-header-tagline-padding-block-end-md:var(--space-m);--brand-header-tagline-font-size:var(--text-size-base);--brand-header-tagline-font-family:var(--font-base);--brand-header-tagline-font-weight:var(--font-normal);--brand-header-tagline-leading:var(--leading-short);--brand-header-tagline-em-font-style:italic;--brand-header-byline-margin-block-start:var(--space-2xs);--brand-header-byline-link-font-family:var(--font-accent);--brand-header-byline-padding-block-end-lg:var(--space-m);--brand-header-logo-padding-block-end-md:var(--space-m);--brand-header-logo-margin-block-end-md:0.3rem;--brand-header-nav-sm-padding-block:var(--space-s);--brand-header-nav-ul-wrap:wrap;--brand-header-nav-ul-cluster-column-gap:var(--space-l);--brand-header-nav-ul-cluster-column-gap-md:var(--space-xl);--brand-header-nav-ul-cluster-row-gap:var(--space-xs);--brand-header-nav-ul-cluster-horizontal-alignment:flex-start;--brand-header-nav-ul-cluster-vertical-alignment:center;--brand-header-nav-ul-cluster-direction:row;--brand-header-nav-link-text-decoration:none;--brand-header-nav-link-text-decoration-hover:underline;--brand-header-nav-link-font-size:var(--size-step-0);--brand-header-nav-link-font-family:var(--font-accent);--brand-header-nav-link-line-height:var(--leading-slim);--brand-header-nav-link-text-active-bg:var(--mark-bg,var(--color-primary));--brand-header-controls-cluster-wrap:nowrap;--brand-header-controls-cluster-column-gap:0;--brand-header-controls-cluster-row-gap:0;--brand-header-controls-icon-link-hidden-label-bg:transparent;--brand-header-controls-margin-block-start:0;--course-header-gutter-wrapper-inner-block:0;--course-header-gutter-wrapper-inner-inline:var(--gutter) 0;--course-header-repel-vertical-alignment:normal;--course-header-padding-block-start:0;--course-header-background:var(--color-light);--course-header-inner-wrapper-border-block-end:var(--stroke);--course-header-meta-cluster-row-gap:0;--course-header-meta-cluster-column-gap:var(--space-m);--course-header-meta-padding-block:var(--space-xs);--course-header-meta-max-width:60%;--course-header-meta-border-block-end:var(--stroke);--course-header-action-cluster-vertical-alignment:unset;--course-header-action-cluster-horizontal-alignment:flex-end;--course-header-action-cluster-column-gap:0;--course-header-action-cluster-row-gap:0;--course-header-action-flex-grow:1;--course-header-icon-link-border-inline-start:var(--stroke);--course-header-name-display:block;--course-header-name-max-width:30ch;--course-header-name-color:currentColor;--course-header-name-font-family:var(--font-display);--course-header-name-font-size:var(--size-step-3);--course-header-name-line-height:var(--leading-fine);--course-header-name-text-decoration:none;--course-header-name-text-decoration-hover:underline;--course-header-credits-font-size:var(--size-step--1);--course-header-credits-font-family:var(--font-base);--course-header-credits-link-font-family:var(--font-accent);--course-header-credits-link-font-weight:var(--font-bold)}[data-user-theme=dark]{--color-global-bg:var(--color-dark);--color-global-text:var(--color-light);--stroke-color:var(--color-light);--color-code-1:var(--color-light);--color-code-2:var(--color-grey-15);--color-code-3:var(--color-grey-14);--color-code-4:var(--color-grey-13);--color-code-5:var(--color-grey-12);--color-code-6:var(--color-grey-11);--color-code-7:var(--color-grey-10);--text-decoration-color:var(--color-primary);--code-color:var(--color-secondary-glare);--code-bg:var(--color-dark-glare);--pre-code-color:var(--color-light);--color-selection-text:var(--color-dark);--color-selection-bg:var(--color-primary-glare);--article-text-decoration-color:var(--color-secondary-glare);--article-img-border:var(--stroke);--author-summary-text-decoration-color:var(--color-secondary-glare);--button-dark-bg:var(--color-light);--button-dark-text:var(--color-dark);--button-dark-border-color:var(--color-light);--button-dark-bg-hover:transparent;--button-dark-text-hover:var(--color-light);--button-dark-border-color-hover:var(--color-light);--button-light-bg:var(--color-dark);--button-light-text:var(--color-light);--button-light-border-color:var(--color-dark);--button-light-bg-hover:transparent;--button-light-text-hover:var(--color-dark);--button-light-border-color-hover:var(--color-dark);--button-ghost-dark-bg:transparent;--button-ghost-dark-text:var(--color-light);--button-ghost-dark-border-color:var(--color-light);--button-ghost-dark-bg-hover:var(--color-light);--button-ghost-dark-text-hover:var(--color-dark);--button-ghost-dark-border-color-hover:var(--color-light);--button-ghost-light-bg:transparent;--button-ghost-light-text:var(--color-dark);--button-ghost-light-border-color:var(--color-dark);--button-ghost-light-bg-hover:var(--color-dark);--button-ghost-light-text-hover:var(--color-light);--button-ghost-light-border-color-hover:var(--color-dark);--button-svg-color:var(--color-primary);--mark-bg:linear-gradient(0deg,transparent 20%,rgba(var(--color-dark-glare-rgb),1) 20%,rgba(var(--color-dark-glare-rgb),1) 84%,transparent 84%);--ribbon-border-block-start:var(--space-s-m) solid var(--color-primary);--badge-color:var(--text-light);--badge-hover-bg:var(--color-light);--badge-hover-color:var(--color-dark);--badge-hover-border-color:var(--color-light);--badge-dark-variant-bg:var(--color-light);--badge-dark-variant-color:var(--color-dark);--badge-dark-variant-hover-bg:var(--color-light-shade);--badge-dark-variant-hover-border-color:var(--color-light-shade);--banner-color:var(--color-dark);--banner-bg:var(--color-light);--fyi-unit-bg:var(--color-dark-glare);--icon-link-text-decoration-color:var(--text-decoration-color);--icon-link-hidden-label-bg:var(--color-dark);--icon-link-hidden-label-color:var(--color-light);--icon-link-hidden-label-bg-hover:var(--color-light);--icon-link-hidden-label-color-hover:var(--color-dark);--pagination-item-bg-hover:var(--color-light);--pagination-item-text-hover:var(--color-dark);--author-summary-text-decoration-color-hover:var(--color-light);--topics-list-scroll-bar-track-color:var(--color-grey-1);--topics-list-scroll-bar-thumb-color:var(--color-grey-5);--topics-list-bg:var(--color-dark-glare);--code-block-header-button-bg:var(--color-dark);--code-block-header-button-bg-hover:var(--color-light);--code-block-header-button-text:var(--color-light);--code-block-header-button-text-hover:var(--color-dark);--code-block-alert-bg:var(--color-light);--code-block-alert-text:var(--color-dark);--code-block-code-bg:var(--color-dark-glare);--praise-bg:var(--color-dark-glare);--preview-frame-bg:var(--color-dark);--preview-frame-text:var(--color-light);--preview-frame-header-button-bg:var(--color-dark);--preview-frame-header-button-bg-hover:var(--color-light);--preview-frame-header-button-text:var(--color-light);--preview-frame-header-button-text-hover:var(--color-dark);--post-heading-text-decoration-color:var(--color-primary);--flow-cta-bg:var(--color-dark-glare);--chat-window-border-color:var(--color-light-shade);--instruction-background:var(--color-dark-glare);--instruction-border-left:var(--stroke-weight-heavy) solid var(--color-primary);--instruction-font-size:var(--size-step-1);--instruction-code-background:var(--color-dark);--pay-wall-background:var(--color-dark-glare);--pay-wall-icon-color:var(--color-light);--block-action-sidebar-background:var(--color-dark-glare);--quick-links-hover-svg-fill:var(--color-primary);--off-screen-menu-panel-background:var(--color-dark);--off-screen-menu-summary-button-hover-background:var(--color-light);--off-screen-menu-summary-button-hover-color:var(--color-dark);--off-screen-menu-sub-nav-before-background:var(--color-light);--scrollable-image-frame-bg:var(--color-dark);--scrollable-image-frame-text:var(--color-light);--scrollable-image-frame-header-button-bg:var(--color-dark);--scrollable-image-frame-header-button-text:var(--color-light);--scrollable-image-frame-header-button-bg-hover:var(--color-light);--scrollable-image-frame-header-button-text-hover:var(--color-dark);--footer-color:var(--color-light);--footer-bg:var(--color-dark-glare);--headline-light-bg:var(--color-dark-glare);--user-form-body-bg:var(--color-dark);--user-form-body-color:var(--color-light);--user-form-rss-action-icon-text:var(--color-light);--user-form-body-stroke-color:var(--color-light);--user-form-header-stroke-color:var(--color-light);--user-form-header-stroke-bottom-color:var(--color-dark);--user-form-header-bg:var(--color-dark-glare);--user-form-rss-svg-emphasis:currentColor;--user-form-muted-header-bg:var(--color-dark);--user-form-muted-color:var(--color-light);--user-form-muted-header-stroke-color:var(--color-light);--closing-cta-bg:var(--color-dark-glare);--closing-cta-badge-filter:invert(1) grayscale(1);--closing-cta-flow-cta-bg:var(--color-dark);--block-cta-color:var(--color-dark);--course-header-background:var(--color-dark)}