main{max-width:1120px;margin:0 auto;padding-top:.5rem}.ampstart-subtitle,body{line-height:1.5rem;letter-spacing:normal}.ampstart-subtitle{color:#003f93;font-size:1rem}.ampstart-image-fullpage-hero{color:#fff}.ampstart-fullpage-hero-heading-text,.ampstart-image-fullpage-hero .ampstart-image-credit{-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#000;padding:0 1rem .2rem}.ampstart-image-fullpage-hero>amp-img{max-height:calc(100vh - 3.5rem)}.ampstart-image-fullpage-hero>amp-img img{-o-object-fit:cover;object-fit:cover}.ampstart-fullpage-hero-heading{line-height:3.5rem}.ampstart-fullpage-hero-cta{background:0 0}.ampstart-readmore{background:linear-gradient(0deg,rgba(0,0,0,.65) 0,transparent);color:#fff;margin-top:5rem;padding-bottom:3.5rem}.ampstart-readmore:after{display:block;content:"⌄";font-size:2rem}.ampstart-readmore-text{background:#000}@media(min-width:52.06rem){.ampstart-image-fullpage-hero>amp-img{height:60vh}}.ampstart-image-heading{color:#fff;background:linear-gradient(0deg,rgba(0,0,0,.65) 0,transparent)}.ampstart-image-heading>*{margin:0}amp-carousel .ampstart-image-with-heading{margin-bottom:0}.ampstart-image-with-caption figcaption{color:#4f4f4f;line-height:1.125rem}amp-carousel .ampstart-image-with-caption{margin-bottom:0}@media(max-width:767px){article#content{padding-left:.5rem;padding-right:.5rem}}article.text-content{padding-top:1rem;padding-left:.5rem;padding-right:.5rem}.article-header{margin-top:var(--space-3);margin-bottom:var(--space-2)}.article-title{font-size:1.8rem;line-height:1.3;color:var(--color-text)}.article-meta{color:var(--color-text-muted);font-size:.95rem}article h1{margin:2.5rem 0 1.2rem;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}article h2{margin:2rem 0 .9rem}article h3{margin:1.6rem 0 .75rem}article h4{margin:1.25rem 0 .6rem}article h5{margin:1rem 0 .5rem}.heading-number{margin-right:.35rem;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.heading-number{margin-right:.35rem;color:var(--color-text-muted);font-variant-numeric:tabular-nums}article pre{overflow-x:auto}article blockquote,article p{overflow-wrap:break-word}.container article img{max-width:-webkit-fill-available}.fixed-height-container{position:relative;width:100%;height:300px}amp-img.contain img{object-fit:contain}.spacer{width:100vw;max-width:700px;height:200vh;background-color:var(--color-secondary)}.target{position:relative}.target-anchor{position:absolute;top:-72px;left:0}#post-tags ul,#post-categories ul{padding-left:.5rem;margin:0}#post-tags ul li,#post-categories ul li{display:inline;margin-right:.5rem}#post-categories ul li.category-item{font-size:.75rem;text-transform:uppercase;color:var(--color-text-muted)}#post-tags ul li.tag-item{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-1);background:rgba(0,90,240,8%);color:var(--color-primary);font-size:.85rem}.metadata .taxonomy{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin-top:.75rem}.metadata .taxonomy>span{display:flex;align-items:center}.metadata .taxonomy ul{display:flex;flex-wrap:wrap;align-items:center;padding-left:0;margin:0}.metadata .taxonomy ul li{list-style:none}.metadata #post-categories ul li.category-item{margin-right:.5rem}.metadata #post-tags ul li.tag-item{margin-right:.5rem}@media(min-width:1024px){main{display:grid;grid-template-columns:160px minmax(0,1fr)250px;gap:4rem;align-items:start;max-width:1350px}article{grid-column:2;grid-row:1}.sidebar{grid-column:3;grid-row:1;margin-top:140px}.sidebar .toc{position:sticky;top:20px;max-height:90vh;overflow:auto;padding:12px 10px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;width:250px}.sidebar .toc h2{font-size:1rem;margin:0 0 .5rem;color:var(--color-text-muted)}header nav{display:grid;grid-template-columns:160px minmax(0,1fr)250px;gap:4rem;max-width:1350px;margin:0 auto;padding:.5rem 0;align-items:center}header nav .search-root{width:100%;flex:unset;margin-top:0}header nav .search-box{width:100%;max-width:100%}header nav>a{grid-column:2;justify-self:start;padding-left:.5rem}header nav .search-root{grid-column:3}}.toc-container{position:sticky;top:20px;max-height:90vh;overflow-y:auto;width:250px}.page-with-toc{display:grid;grid-template-columns:1fr minmax(240px,300px);gap:2rem;align-items:start}.page-with-toc .page-content{min-width:0}.toc-right{position:sticky;top:100px;max-height:calc(100vh - 120px);overflow:auto;padding:.75rem .75rem 1rem;border:1px solid var(--color-border,#e5e7eb);border-radius:var(--radius-2,8px);background:var(--color-bg,#fff)}.toc-right h2{font-size:1rem;margin:0 0 .5rem;color:var(--color-text-muted)}#TableOfContents ul ul ul{margin-left:.75rem}#TableOfContents a{display:inline-block;padding:2px 4px;border-radius:4px;color:#374151;text-decoration:none}#TableOfContents a:hover{background:#f3f4f6}#TableOfContents a.is-active{background:#eef2ff;color:#1f2937;font-weight:600}.mobile-toc-trigger{position:fixed;right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(80px + env(safe-area-inset-bottom,0px));z-index:1000;display:none;width:48px;height:48px;border-radius:50%;border:none;color:#fff;background:var(--color-primary);box-shadow:var(--box-shadow-1);display:none;align-items:center;justify-content:center;font-size:1.1rem}@media(max-width:600px){.mobile-toc-trigger{right:calc(8px + env(safe-area-inset-right,0px));bottom:calc(64px + env(safe-area-inset-bottom,0px));width:44px;height:44px}}.mobile-toc-overlay{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:999;display:none}.mobile-toc-drawer{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top-left-radius:12px;border-top-right-radius:12px;max-height:85vh;transform:translateY(100%);transition:transform 200ms ease;z-index:1001;box-shadow:0 -8px 24px rgba(0,0,0,.15)}.mobile-toc-drawer.open{transform:translateY(0)}.mobile-toc-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #e5e7eb}.mobile-toc-close{border:none;background:0 0;font-size:1.25rem;line-height:1}.mobile-toc-body{padding:8px 12px 16px;overflow:auto;max-height:calc(85vh - 56px)}.mobile-safe-area-spacer{height:env(safe-area-inset-bottom,0px)}@media(max-width:1024px){.sidebar{display:none}.mobile-toc-trigger{display:inline-flex;align-items:center;gap:6px}}@media(min-width:1025px){.mobile-toc-drawer,.mobile-toc-overlay{display:none!important}}html{scroll-behavior:smooth}@keyframes target-flash{0%{background-color:rgba(0,90,240,.15);border-radius:4px}100%{background-color:initial;border-radius:4px}}.target-highlight{animation:target-flash 1.5s ease-out}article{overflow-wrap:break-word;word-wrap:break-word}article pre,article code{white-space:pre-wrap;word-break:break-all;max-width:100%}#TableOfContents ul{list-style:none;padding-left:0;margin:0}#TableOfContents li{margin:4px 0}#TableOfContents a{display:block;font-size:.95rem;line-height:1.4;color:var(--color-text-muted);text-decoration:none;transition:color .15s}#TableOfContents a:hover,#TableOfContents a.is-active{color:var(--color-primary)}#TableOfContents ul ul{padding-left:1.5rem;margin-top:4px}#TableOfContents ul ul a{font-size:.88rem;color:#88909c}.mobile-toc-body ul{list-style:none;padding-left:0}.mobile-toc-body ul ul{padding-left:1rem}.mobile-toc-body a{display:block;padding:6px 0;font-size:1rem;color:var(--color-text);text-decoration:none}.mobile-toc-body ul ul a{font-size:.9rem;color:var(--color-text-muted)}article h1,article h2,article h3,article h4,article h5,article h6{scroll-margin-top:96px}.copy-code-button{position:absolute;right:6px;top:6px;background:rgba(68,68,68,.7);color:#fff;border:none;border-radius:4px;padding:4px 8px;font-size:.75rem;font-family:inherit;cursor:pointer;opacity:0;transition:opacity .2s ease,background .2s;z-index:10}pre:hover .copy-code-button{opacity:1}.copy-code-button:hover{background:#444}article pre{background-color:#f6f8fa;padding:16px;border-radius:6px;overflow:auto;line-height:1.45;white-space:pre-wrap;word-break:break-all;position:relative}article pre code{background-color:initial;padding:0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:85%}article :not(pre)>code{background-color:rgba(175,184,193,.2);padding:.2em .4em;border-radius:6px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:85%}