.ct{--ct-max:var(--cc-max);--ct-gutter:var(--cc-gutter);--ct-measure:var(--cc-measure);--ct-media-max:var(--ct-measure);--ct-band-pad:clamp(48px, 7vw, 96px);--ct-rail-width:15rem;--ct-rail-gap:clamp(32px, 4vw, 64px);--ct-nav-h:73px;--ct-sections-h:49px;--ct-sticky-top:104px;--ct-font-body:var(--cc-font-sans);--ct-font-heading:var(--cc-font-display);--ct-font-subheading:var(--cc-font-sans);--ct-font-mono:var(--cc-font-mono);--ct-font-label:var(--cc-font-sans);--ct-body-size:var(--cc-text-body);--ct-body-lh:1.7;--ct-lead-size:var(--cc-text-lead);--ct-h2-size:clamp(1.75rem, 2.4vw, 2rem);--ct-h2-lh:var(--cc-lh-heading);--ct-h2-tracking:-.01em;--ct-h3-size:var(--cc-text-h3);--ct-h3-lh:1.3;--ct-h4-size:var(--cc-text-body);--ct-small-size:var(--cc-text-small);--ct-meta-size:var(--cc-text-legal);--ct-label-size:var(--cc-text-eyebrow);--ct-label-tracking:.14em;--ct-caption-size:var(--cc-text-small);--ct-code-size:var(--cc-text-small);--ct-code-lh:1.55;--ct-card-title-size:var(--cc-text-lead);--ct-year-size:var(--cc-text-small);--ct-text:var(--cc-text);--ct-meta-color:var(--cc-text-muted);--ct-link:var(--cc-text);--ct-link-standalone:var(--cc-link);--ct-rule:var(--cc-border);--ct-rule-strong:var(--cc-border-strong);--ct-surface:var(--cc-surface);--ct-surface-alt:var(--cc-surface-alt);--ct-card-bg:var(--cc-surface-card);--ct-panel-bg:var(--cc-surface-panel);--ct-quote-rule:var(--cc-link);--ct-marker-color:var(--cc-text-muted);--ct-focus:var(--cc-focus);--ct-ribbon-color:var(--cc-caution);--ct-ribbon-bg:var(--cc-surface-card);--ct-icon-color:var(--cc-text);--ct-embed-bg:var(--cc-surface-ink);--ct-embed-fg:var(--cc-text-on-ink);--ct-embed-muted:var(--cc-text-muted-on-ink);--ct-embed-rule:var(--cc-border-on-ink-strong);--ct-embed-focus:var(--cc-focus-on-ink);--ct-space-1:8px;--ct-space-2:16px;--ct-space-3:24px;--ct-space-4:32px;--ct-space-5:48px;--ct-space-6:72px;--ct-flow:1.15em;--ct-heading-top:2.1em;--ct-figure-radius:var(--cc-radius-md);--ct-card-radius:var(--cc-radius-md);--ct-code-radius:var(--cc-radius-sm);--ct-ribbon-radius:var(--cc-radius-sm);--ct-rule-width:1px;--ct-quote-rule-width:2px;--ct-ribbon-rule-width:4px;--ct-card-min:17rem;--ct-card-cols-max:3;--ct-card-gap:var(--ct-space-3);--ct-card-pad:var(--ct-space-3);--ct-card-stack:10px;--ct-card-thumb-ratio:16 / 9;--ct-card-thumb-bg:var(--ct-surface-alt);--ct-card-title-family:var(--ct-font-subheading);--ct-card-title-weight:700;--ct-card-title-lh:1.3;--ct-card-excerpt-lines:3;--ct-card-eyebrow-color:var(--ct-meta-color);--ct-card-hover-rule:var(--ct-rule-strong);--ct-flag-color:var(--ct-meta-color);--ct-feature-split:minmax(0, 7fr) minmax(0, 5fr);--ct-feature-pad:var(--ct-space-4);--ct-feature-title-family:var(--ct-font-heading);--ct-feature-title-size:var(--ct-h2-size);--ct-feature-excerpt-size:var(--ct-body-size);--ct-feature-excerpt-lines:4;--ct-feature-gap:var(--ct-space-6);--ct-row-date-width:8.5rem;--ct-row-thumb-width:15.6rem;--ct-row-thumb-width-sm:7.8rem;--ct-row-excerpt-lines:2;--ct-filter-size:var(--ct-meta-size);--ct-cover-gap:var(--ct-space-4);--ct-sections-bg:var(--ct-surface-alt);--ct-sections-pad:12px;--ct-sections-gap:var(--ct-space-3);--ct-sections-size:var(--ct-small-size);--ct-explore-gap:var(--ct-space-5);--ct-explore-row:3rem;--ct-explore-icon-gap:12px;--ct-icon-size:28px;--ct-doc-nav-width:15.5rem;--ct-doc-gap:clamp(32px, 4vw, 56px);--ct-doc-measure:78ch;--ct-method-tracking:.06em;--ct-table-head-size:var(--cc-text-eyebrow);--ct-video-max:960px;--ct-hero-min-height:calc((2 * var(--cc-section-pad) + 172.8px + var(--cc-text-h2) * var(--cc-lh-heading)) / 2);--ct-hero-pad:28px;--ct-hero-pad-narrow:calc(var(--cc-section-pad) / 2);--ct-hero-gap:8px;--ct-hero-lead-gap:10px;--ct-hero-headline-measure:36ch;--ct-hero-crumbs-gap:22px;color:var(--ct-text)}.ct[data-layout=wide]{--ct-media-max:100%}.ct[data-layout=compact]{--ct-body-size:var(--cc-text-small);--ct-body-lh:1.6;--ct-flow:1em;--ct-heading-top:1.8em;--ct-band-pad:clamp(40px, 6vw, 72px)}
.ct .hero.hero--content{padding-block:var(--ct-hero-pad-narrow)}@media (min-width:900px){.ct .hero.hero--content{min-height:var(--ct-hero-min-height);padding-block:var(--ct-hero-pad)}}.ct .hero--content .hero__crumbs,.ct .hero--content .hero__eyebrow{margin-bottom:var(--ct-hero-gap)}.ct .hero--content .hero__headline{max-width:var(--ct-hero-headline-measure);text-wrap:balance}.ct .hero--content .hero__crumbs{margin-bottom:var(--ct-hero-crumbs-gap)}.ct .hero--content .hero__subhead{margin-top:var(--ct-hero-lead-gap)}.ct .hero--content .hero__art-img{width:auto;max-width:none;height:100%;left:auto}
.ct .ct-article{padding-block:var(--ct-band-pad);background:var(--ct-surface);border-top:var(--ct-rule-width) solid var(--ct-rule);position:relative}.ct .ct-frame{max-width:var(--ct-max);padding-inline:var(--ct-gutter);margin-inline:auto}.ct .ct-article__grid{gap:var(--ct-space-4);grid-template-columns:minmax(0,1fr);display:grid}@media (min-width:1100px){.ct .ct-article__grid--rail{grid-template-columns:var(--ct-rail-width) minmax(0, 1fr);gap:var(--ct-rail-gap)}}.ct .ct-article__main,.ct .ct-rail{min-width:0}@media (min-width:1100px){.ct .ct-rail--notice .ct-toc{max-height:none;position:static;overflow:visible}}.ct .ct-ribbon{max-width:var(--ct-measure);margin-bottom:var(--ct-space-4);background:var(--ct-ribbon-bg);border:var(--ct-rule-width) solid var(--ct-ribbon-color);border-left-width:var(--ct-ribbon-rule-width);border-radius:var(--ct-ribbon-radius);font-size:var(--ct-small-size);padding:14px 18px}.ct .ct-ribbon__text{color:var(--ct-ribbon-color);font-weight:700;line-height:1.4}.ct .ct-ribbon__notes{font-size:var(--ct-meta-size);color:var(--ct-meta-color);margin-top:10px;line-height:1.55}.ct .ct-ribbon__notes>summary{cursor:pointer;color:var(--ct-text);font-weight:600}.ct .ct-ribbon__notes ul{margin-top:var(--ct-space-1);padding-left:1.25em}.ct .ct-ribbon__notes li+li{margin-top:6px}.ct .ct-meta{margin:0 0 var(--ct-space-4);font-family:var(--ct-font-mono);font-size:var(--ct-meta-size);font-variant-numeric:tabular-nums;color:var(--ct-meta-color);flex-wrap:wrap;gap:4px 0;padding:0;line-height:1.6;list-style:none;display:flex}.ct .ct-meta>li:not(:last-child):after{content:"·";margin-inline:10px}.ct .ct-cover{margin-bottom:var(--ct-cover-gap)}.ct .ct-cover img{border:var(--ct-rule-width) solid var(--ct-rule);border-radius:var(--ct-figure-radius);width:100%;height:auto;display:block}.ct .ct-toc{font-size:var(--ct-small-size);line-height:1.45}@media (min-width:1100px){.ct .ct-toc{top:var(--ct-sticky-top);max-height:calc(100vh - var(--ct-sticky-top) - var(--ct-space-4));align-self:start;position:sticky;overflow-y:auto}}.ct .ct-toc__label{font-family:var(--ct-font-label);font-size:var(--ct-label-size);letter-spacing:var(--ct-label-tracking);text-transform:uppercase;margin-bottom:var(--ct-space-2);font-weight:600;line-height:1.2}.ct .ct-toc ol{border-top:var(--ct-rule-width) solid var(--ct-rule-strong);margin:0;padding:0;list-style:none}.ct .ct-toc li{border-bottom:var(--ct-rule-width) solid var(--ct-rule)}.ct .ct-toc a{color:var(--ct-text);padding-block:10px;text-decoration:none;display:block}.ct .ct-toc a:hover{color:var(--ct-link-standalone);text-underline-offset:3px;text-decoration:underline}@media (max-width:1099px){.ct .ct-toc{max-width:var(--ct-measure);margin-bottom:var(--ct-space-2)}}.ct .ct-prose{max-width:var(--ct-measure);font-family:var(--ct-font-body);font-size:var(--ct-body-size);line-height:var(--ct-body-lh);color:var(--ct-text);overflow-wrap:break-word}.ct .ct-prose>*+*{margin-top:var(--ct-flow)}.ct .ct-prose h2,.ct .ct-prose h3,.ct .ct-prose h4{scroll-margin-top:var(--ct-sticky-top);text-wrap:balance}.ct .ct-prose h2{margin-top:var(--ct-heading-top);font-family:var(--ct-font-heading);font-weight:400;font-size:var(--ct-h2-size);line-height:var(--ct-h2-lh);letter-spacing:var(--ct-h2-tracking)}.ct .ct-prose h3{margin-top:calc(var(--ct-heading-top) * .75);font-family:var(--ct-font-subheading);font-weight:700;font-size:var(--ct-h3-size);line-height:var(--ct-h3-lh)}.ct .ct-prose h4{margin-top:calc(var(--ct-heading-top) * .6);font-family:var(--ct-font-subheading);font-weight:700;font-size:var(--ct-h4-size);line-height:var(--ct-h3-lh)}.ct .ct-prose h2+*,.ct .ct-prose h3+*,.ct .ct-prose h4+*{margin-top:calc(var(--ct-flow) * .6)}.ct .ct-prose>:first-child{margin-top:0}.ct .ct-prose a{color:var(--ct-link);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.ct .ct-prose a:hover{text-decoration-thickness:2px}.ct .ct-prose strong{font-weight:700}.ct .ct-prose ul,.ct .ct-prose ol{padding-left:1.4em}.ct .ct-prose li+li{margin-top:calc(var(--ct-flow) * .45)}.ct .ct-prose li::marker{color:var(--ct-marker-color)}.ct .ct-prose ol>li::marker{font-family:var(--ct-font-mono);font-size:.9em}.ct .ct-prose blockquote{padding-left:var(--ct-space-3);border-left:var(--ct-quote-rule-width) solid var(--ct-quote-rule);color:var(--ct-text)}.ct .ct-prose hr{border:0;border-top:var(--ct-rule-width) solid var(--ct-rule);margin-block:var(--ct-space-5)}.ct .ct-prose code{font-family:var(--ct-font-mono);background:var(--ct-panel-bg);border:var(--ct-rule-width) solid var(--ct-rule);border-radius:var(--ct-code-radius);padding:.1em .35em;font-size:.9em}.ct .ct-prose pre{max-width:var(--ct-media-max);padding:var(--ct-space-2) var(--ct-space-3);background:var(--ct-panel-bg);border:var(--ct-rule-width) solid var(--ct-rule);border-radius:var(--ct-code-radius);font-family:var(--ct-font-mono);font-size:var(--ct-code-size);line-height:var(--ct-code-lh);overflow-x:auto}.ct .ct-prose pre code{font-size:inherit;background:0 0;border:0;padding:0}.ct .ct-prose .ct-figure{max-width:var(--ct-media-max);margin-block:var(--ct-space-4)}.ct .ct-prose img{max-width:100%;height:auto;display:block}.ct .ct-prose .ct-figure img{border:var(--ct-rule-width) solid var(--ct-rule);border-radius:var(--ct-figure-radius);width:100%}.ct .ct-prose .ct-figure__link,.ct .ct-prose .ct-figure picture{display:block}.ct .ct-prose .ct-figure__link:focus-visible{outline:2px solid var(--ct-focus);outline-offset:2px;border-radius:var(--ct-figure-radius)}.ct .ct-prose figcaption{font-size:var(--ct-caption-size);color:var(--ct-meta-color);margin-top:10px;line-height:1.5}.ct .ct-prose .ct-table-wrap{max-width:var(--ct-media-max);border-top:var(--ct-rule-width) solid var(--ct-rule-strong);overflow-x:auto}.ct .ct-prose table{border-collapse:collapse;width:100%;font-size:var(--ct-small-size);line-height:1.5}.ct .ct-prose th,.ct .ct-prose td{text-align:left;vertical-align:top;border-bottom:var(--ct-rule-width) solid var(--ct-rule);padding:10px 14px 10px 0}.ct .ct-prose th{font-family:var(--ct-font-label);font-size:var(--ct-label-size);letter-spacing:var(--ct-label-tracking);text-transform:uppercase;white-space:nowrap;font-weight:600}.ct .ct-prose td[align=right],.ct .ct-prose th[align=right]{text-align:right;font-family:var(--ct-font-mono);font-variant-numeric:tabular-nums}.ct .ct-prose .ct-table-wrap:focus-visible{outline:2px solid var(--ct-focus);outline-offset:2px}.ct .ct-embed{max-width:var(--ct-media-max);margin-block:var(--ct-space-4)}.ct .ct-embed__frame{aspect-ratio:16/9;background:var(--ct-embed-bg);border:var(--ct-rule-width) solid var(--ct-embed-rule);border-radius:var(--ct-figure-radius);position:relative;overflow:hidden}.ct .ct-embed__frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.ct .ct-embed a.ct-embed__load{justify-content:center;align-items:center;gap:var(--ct-space-2);padding:var(--ct-space-3);color:var(--ct-embed-fg);text-align:center;flex-direction:column;text-decoration:none;display:flex;position:absolute;inset:0}.ct .ct-embed a.ct-embed__load:focus-visible{outline:2px solid var(--ct-embed-focus);outline-offset:-6px}.ct .ct-embed__play{border:1.5px solid;border-radius:50%;width:64px;height:64px;position:relative}.ct .ct-embed__play:after{content:"";border:11px solid #0000;border-left:18px solid;border-right-width:0;position:absolute;top:50%;left:54%;transform:translate(-50%,-50%)}.ct .ct-embed__label{max-width:40ch;font-size:var(--ct-small-size);font-weight:500;line-height:1.4}.ct .ct-embed__load:hover .ct-embed__label{text-underline-offset:3px;text-decoration:underline}.ct .ct-embed__note{font-size:var(--ct-meta-size);color:var(--ct-meta-color);margin-top:10px;line-height:1.5}.ct .ct-block{max-width:var(--ct-measure);margin-top:var(--ct-space-5)}.ct .ct-attachments{border-top:var(--ct-rule-width) solid var(--ct-rule-strong);margin:0;padding:0;list-style:none}.ct .ct-attachments li{border-bottom:var(--ct-rule-width) solid var(--ct-rule)}.ct .ct-attachments a{color:var(--ct-text);align-items:center;gap:14px;padding-block:14px;text-decoration:none;display:flex}.ct .ct-attachments a:hover .ct-attachments__title{text-underline-offset:3px;text-decoration:underline}.ct .ct-icon{color:var(--ct-icon-color);flex:none}.ct .ct-icon .glyph{width:var(--ct-icon-size);height:var(--ct-icon-size);display:block}.ct .ct-attachments__text{flex-direction:column;min-width:0;display:flex}.ct .ct-attachments__title{font-weight:500;line-height:1.4}.ct .ct-attachments__meta{font-family:var(--ct-font-mono);font-size:var(--ct-meta-size);font-variant-numeric:tabular-nums;color:var(--ct-meta-color)}.ct .ct-legacy{max-width:var(--ct-measure);margin-top:var(--ct-space-5);padding-top:var(--ct-space-2);border-top:var(--ct-rule-width) solid var(--ct-rule);font-size:var(--ct-meta-size);color:var(--ct-meta-color);line-height:1.55}.ct .ct-block__title{font-family:var(--ct-font-heading);font-weight:400;font-size:var(--ct-h2-size);line-height:var(--ct-h2-lh);letter-spacing:var(--ct-h2-tracking);margin-bottom:var(--ct-space-3)}.ct .ct-back{margin-top:var(--ct-space-5)}.ct .ct-back a{color:var(--ct-link-standalone);align-items:center;gap:8px;font-weight:500;text-decoration:none;display:inline-flex}.ct .ct-back a:hover{text-underline-offset:3px;text-decoration:underline}.ct .ct-back .glyph{width:16px;height:16px;transform:rotate(180deg)}@media (forced-colors:active){.ct .ct-ribbon,.ct .ct-embed__frame{border-color:canvastext}}.ct .ct-archived{max-width:var(--ct-measure);margin-bottom:var(--ct-space-4);padding:var(--ct-space-3) var(--ct-space-4);border:var(--ct-rule-width) solid var(--ct-rule);border-left-width:var(--ct-ribbon-rule-width);border-radius:var(--ct-ribbon-radius);background:var(--ct-archived-bg,transparent)}.ct .ct-archived__label{font-family:var(--ct-font-mono);font-size:var(--ct-meta-size);letter-spacing:.08em;text-transform:uppercase;color:var(--ct-meta-color)}.ct .ct-archived__text,.ct .ct-archived__current{margin-top:var(--ct-space-2);font-size:var(--ct-meta-size);color:var(--ct-text);line-height:1.6}.ct .ct-archived+.ct-archived__views{max-width:var(--ct-measure);margin:calc(-1 * var(--ct-space-3)) 0 var(--ct-space-4);font-size:var(--ct-meta-size);color:var(--ct-text);line-height:1.6}.ct .ct-rail>.ct-archived{max-width:var(--ct-measure);margin:var(--ct-space-4) 0 0;padding:var(--ct-space-2);overflow-wrap:break-word}.ct .ct-rail>.ct-archived:first-child{margin-top:0}.ct .ct-rail>.ct-archived .ct-archived__text,.ct .ct-rail>.ct-archived .ct-archived__current{margin-top:var(--ct-space-1);line-height:1.55}.ct .ct-rail>.ct-archived+.ct-archived__views{margin:var(--ct-space-1) 0 0;line-height:1.55}
