.ct-page{min-height:100vh;display:flex;flex-direction:column}.ct-main{flex:1;width:100%;max-width:1120px;margin:0 auto;padding:calc(64px + 3rem) 1.5rem 4.5rem}.ct-main.is-narrow{max-width:calc(720px + 3rem)}.ct-crumbs{display:flex;flex-wrap:wrap;gap:.4rem;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#737373;margin-bottom:1rem}.ct-crumbs a{color:#a3a3a3;text-decoration:none}.ct-crumbs a:hover,.ct-title{color:#fafafa}.ct-title{font-size:clamp(1.9rem,4.2vw,2.7rem);font-weight:900;letter-spacing:-.03em;line-height:1.12;margin:0;max-width:820px;text-wrap:balance}.ct-sub{color:#a3a3a3;font-size:1.05rem;line-height:1.7;margin:1rem 0 0;max-width:720px}.ct-meta{color:#737373;font-size:.8rem;margin:1rem 0 0}.ct-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:3rem;margin-top:2.5rem}@media (min-width:1024px){.ct-layout.has-toc{grid-template-columns:minmax(0,720px) 240px;justify-content:space-between}}.ct-toc{display:none}@media (min-width:1024px){.ct-toc{display:block;position:sticky;top:calc(64px + 1.5rem);align-self:start;border-left:1px solid #262626;padding-left:1.1rem}}.ct-toc-label{font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#737373;margin:0 0 .7rem}.ct-toc ol{list-style:none;margin:0;padding:0}.ct-toc li+li{margin-top:.45rem}.ct-toc a{color:#a3a3a3;font-size:.85rem;line-height:1.45;text-decoration:none}.ct-toc a:hover{color:#fafafa}.ct-body{color:#d4d4d4;font-size:1.02rem;line-height:1.78;max-width:720px;min-width:0}.ct-body>:first-child{margin-top:0}.ct-body p{margin:0 0 1.15rem}.ct-body .lead{font-size:1.12rem;color:#e5e5e5}.ct-body h2{font-size:1.45rem;font-weight:800;letter-spacing:-.02em;line-height:1.3;color:#fafafa;margin:2.6rem 0 .9rem;padding-top:1.6rem;border-top:1px solid #262626}.ct-body h2,.ct-body h3{scroll-margin-top:calc(64px + 1rem)}.ct-body h3{font-size:1.1rem;font-weight:700;color:#f5f5f5;margin:1.8rem 0 .6rem}.ct-body ol,.ct-body ul{margin:0 0 1.2rem;padding-left:1.35rem}.ct-body ul{list-style:disc}.ct-body ol{list-style:decimal}.ct-body li{margin:.35rem 0}.ct-body li::marker{color:#737373}.ct-body strong{color:#fafafa;font-weight:700}.ct-body a{color:#fafafa;text-decoration:underline;text-decoration-color:#525252;text-underline-offset:3px}.ct-body a:hover{text-decoration-color:#fafafa}.ct-body code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86em;background:#171717;border:1px solid #262626;border-radius:6px;padding:.1em .38em;color:#f5f5f5}.ct-body pre{background:#111;border:1px solid #262626;border-radius:10px;padding:1rem 1.1rem;overflow-x:auto;margin:0 0 1.3rem;font-size:.85rem;line-height:1.6}.ct-body pre code{background:none;border:0;padding:0;font-size:inherit}.ct-body kbd{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8em;background:#1f1f1f;border:solid #404040;border-width:1px 1px 2px;border-radius:5px;padding:.08em .4em;color:#fafafa}.ct-body blockquote{margin:0 0 1.3rem;padding:.2rem 0 .2rem 1rem;border-left:3px solid #404040;color:#a3a3a3}.ct-body blockquote p:last-child{margin-bottom:0}.ct-body .ct-table{overflow-x:auto;margin:0 0 1.4rem}.ct-body table{width:100%;border-collapse:collapse;font-size:.92rem;line-height:1.55}.ct-body td,.ct-body th{text-align:left;vertical-align:top;padding:.6rem .75rem;border-bottom:1px solid #262626}.ct-body th{color:#fafafa;font-weight:700;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;border-bottom-color:#404040}.ct-body td:first-child{white-space:nowrap;color:#f5f5f5}@media (max-width:760px){.ct-body table{display:block;overflow-x:auto}}.ct-cards{list-style:none;margin:2.5rem 0 0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}@media (min-width:760px){.ct-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.ct-card{display:flex;flex-direction:column;height:100%;padding:1.35rem 1.4rem;border:1px solid #262626;border-radius:14px;background:#111;text-decoration:none;transition:border-color .15s ease,background .15s ease}.ct-card:hover{border-color:#404040;background:#151515}.ct-card h2,.ct-card h3{font-size:1.12rem;font-weight:800;letter-spacing:-.015em;line-height:1.35;color:#fafafa;margin:0}.ct-card p{color:#a3a3a3;font-size:.92rem;line-height:1.6;margin:.6rem 0 0;flex:1}.ct-card span{color:#737373;font-size:.75rem;margin-top:.9rem}.ct-more{margin-top:3.5rem;padding-top:2rem;border-top:1px solid #262626}.ct-more-title{font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#737373;margin:0}.ct-more .ct-cards{margin-top:1rem}