:root{--util-coral:var(--color-brand-orange,#EB622F);--util-font-display:var(--font-family-display);--util-font-mono:var(--font-family-mono)}.util{background:#FFFFFF;color:#111111;font-family:var(--util-font-display);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;hanging-punctuation:first last;text-decoration-skip-ink:auto}html:has(.util){scroll-behavior:smooth}@media (prefers-reduced-motion:no-preference){.util__pagehead-inner>*,.util__section{animation:util-fade-up .54s cubic-bezier(.22,.61,.36,1) backwards}.util__pagehead-inner>:first-child{animation-delay:0s}.util__pagehead-inner>:nth-child(2){animation-delay:80ms}.util__pagehead-inner>:nth-child(3){animation-delay:.16s}.util__section:first-of-type{animation-delay:.2s}.util__section:nth-of-type(2){animation-delay:.28s}.util__section:nth-of-type(3){animation-delay:.36s}.util__section:nth-of-type(4){animation-delay:.44s}.util__section:nth-of-type(5){animation-delay:.52s}.util__section:nth-of-type(6){animation-delay:.6s}.util__section:nth-of-type(n+7){animation-delay:.68s}.util__pills{animation:util-fade-up .54s cubic-bezier(.22,.61,.36,1) 80ms backwards}}@keyframes util-fade-up{0%{opacity:0;transform:translate3d(0,12px,0)}to{opacity:1;transform:translateZ(0)}}.util__qa-answer a,.util__sub-body a{border-bottom:none;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 100%;background-size:100% 1px;padding-bottom:1px;transition:background-size .2s cubic-bezier(.22,.61,.36,1),color .16s ease}.util__qa-answer a:hover,.util__sub-body a:hover{background-size:100% 2px;border-bottom:none}.util__masthead{display:flex;align-items:center;justify-content:space-between;padding:20px 56px;border-bottom:1px solid #e8e6e3;font-family:var(--util-font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#6B6B6B}.util__masthead-brand{display:flex;align-items:center;gap:10px;color:#111;letter-spacing:.06em;font-size:15px;font-family:var(--util-font-display);font-weight:500;text-transform:none;text-decoration:none}.util__masthead-brand-mark{width:18px;height:18px;background:var(--util-coral);border-radius:4px}.util__masthead-nav{display:flex;gap:28px}.util__masthead-nav a{color:#6B6B6B;text-decoration:none}.util__masthead-nav a[aria-current=page]{color:#111}.util__pagehead{background:#ffffff;border-bottom:1px solid #e8e6e3;position:sticky;top:44px;z-index:10}.util__pagehead-inner{max-width:1200px;margin-left:auto;margin-right:auto;padding:32px 56px 24px}.util[data-viewport=mobile] .util__pagehead{position:static;background:transparent;border-bottom:none}.util__eyebrow{font-family:var(--util-font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:#6B6B6B;margin-bottom:24px}.util__h1{font-weight:500;font-size:clamp(36px,4.7vw,56px)}.util__h1,.util__h1-slash{font-family:var(--util-font-display);line-height:1.05;letter-spacing:-.025em;margin:0 0 20px;color:#111;text-wrap:balance}.util__h1-slash{font-weight:300;font-size:clamp(38px,5.3vw,64px);font-style:normal}.util__h1-slash em{font-style:normal;font-weight:700;color:#111}.util[data-viewport=mobile] .util__h1-slash{font-size:38px}.util__lede{font-size:clamp(16px,1.5vw,19px);line-height:1.55;color:#454545;max-width:56ch;margin:0;text-wrap:pretty}.util__updated{margin-top:24px;font-family:var(--util-font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#6B6B6B}.util__layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:80px;max-width:1200px;margin-left:auto;margin-right:auto;padding:64px 56px 40px;align-items:start}.util__rail{position:sticky;top:calc(44px + var(--util-pagehead-h, 220px) + 24px);align-self:start;display:flex;flex-direction:column;gap:4px;border-left:1px solid #e8e6e3;max-height:calc(100vh - 44px - var(--util-pagehead-h, 220px) - 48px);overflow-y:auto}.util__rail-item{display:block;padding:12px 16px;font-family:var(--util-font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#6B6B6B;text-decoration:none;margin-left:-1px;border-left:1px solid transparent;transition:color .12s ease,border-color .12s ease;cursor:pointer}.util__rail-item:hover{color:#111}.util__rail-item[data-active=true]{color:#111;border-left-color:var(--util-coral)}.util__rail-count{margin-left:8px;color:#B8B8B8}.util__main{min-width:0}.util__search{position:relative;margin-bottom:56px}.util__search input{width:100%;height:56px;padding:0 24px 0 52px;font-family:var(--util-font-display);font-size:17px;color:#111;background:#FAFAFA;border:1px solid #e8e6e3;border-radius:0;outline:none;transition:border-color .12s ease,background .12s ease}.util__search input::placeholder{color:#999}.util__search input:focus{border-color:#111;background:#FFF}.util__search-icon{position:absolute;left:20px;top:50%;transform:translateY(-50%);color:#888;pointer-events:none}.util__search-results{margin-top:12px;font-family:var(--util-font-mono);font-size:12px;color:#6B6B6B}.util__search-clear,.util__search-results{text-transform:uppercase;letter-spacing:.12em}.util__search-clear{background:none;border:0;font:inherit;color:var(--util-coral);cursor:pointer;margin-left:12px}.util__featured{border-top:1px solid #111;border-bottom:1px solid #e8e6e3;padding:32px 0 40px;margin-bottom:64px}.util__featured-mark{display:inline-flex;align-items:center;gap:8px;font-family:var(--util-font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--util-coral);margin-bottom:20px}.util__featured-mark:before{content:"";width:6px;height:6px;background:var(--util-coral);border-radius:50%}.util__featured-q{font-family:var(--util-font-display);font-weight:500;font-size:clamp(24px,2.5vw,32px);line-height:1.2;letter-spacing:-.02em;color:#111;margin:0 0 24px;max-width:22ch}.util__featured-a{font-size:clamp(15px,1.4vw,18px);line-height:1.6;color:#454545;max-width:60ch}.util__featured-a p{margin:0 0 1em}.util__featured-a p:last-child{margin-bottom:0}.util__section,.util__section-title{scroll-margin-top:calc(var(--util-pagehead-h, 0px) + 24px)}.util__section{padding-top:56px;margin-top:56px;border-top:1px solid #111}.util__section:first-of-type{margin-top:0;border-top:0;padding-top:0}.util__section-head{display:flex;align-items:baseline;justify-content:space-between;gap:32px;margin-bottom:32px}.util__section-title{font-family:var(--util-font-display);font-weight:500;font-size:clamp(22px,2.2vw,28px);letter-spacing:-.015em;color:#111;margin:0;text-wrap:balance}.util__section-count{font-family:var(--util-font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#999;text-decoration:none;font-variant-numeric:tabular-nums}a.util__section-count:hover{color:var(--util-coral)}.util__qa{margin:0;padding:0}.util__qa-summary{display:flex;align-items:center;gap:24px;padding:28px 8px;cursor:pointer;list-style:none;font-family:var(--util-font-display);font-weight:600;font-size:15px;line-height:1.2;letter-spacing:-.6px;color:#111;background:transparent;border-radius:0;transition:color .16s ease,opacity .16s ease}.util__qa-summary::-webkit-details-marker{display:none}.util__qa-summary:hover{opacity:.72}.util__qa-q{flex:1 1 auto;min-width:0;text-wrap:pretty}.util__qa-plus{position:relative;flex-shrink:0;width:22px;height:22px;display:block}.util__qa-plus:after,.util__qa-plus:before{content:"";position:absolute;top:50%;left:50%;background:currentColor;border-radius:999px;transform-origin:50% 50%;transition:transform .24s cubic-bezier(.22,.61,.36,1)}.util__qa-plus:before{width:100%;height:3px;transform:translate(-50%,-50%)}.util__qa-plus:after{width:3px;height:100%;transform:translate(-50%,-50%) scaleY(1)}.util__qa[open] .util__qa-plus:after{transform:translate(-50%,-50%) scaleY(0)}.util__qa-answer{padding:18px 28px 24px;max-width:62ch;font-size:clamp(15px,1.2vw,16px);line-height:1.65;color:#454545}.util__qa-answer p{margin:0 0 1em;text-wrap:pretty}.util__qa-answer p:last-child{margin-bottom:0}.util__qa-answer a{color:var(--util-coral);text-decoration:none}.util__qa-permalink{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-family:var(--util-font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#999;text-decoration:none;opacity:0;transition:opacity .2s ease,color .12s ease}.util__qa[open] .util__qa-permalink{opacity:1}.util__qa-permalink:hover{color:var(--util-coral)}.util mark{background:color-mix(in oklch,var(--util-coral) 18%,transparent);color:inherit;padding:0 2px}.util__sub{border-top:1px solid #e8e6e3;padding:28px 0;display:grid;grid-template-columns:220px minmax(0,1fr);gap:48px}.util__sub:first-child{border-top:0;padding-top:0}.util__sub-label{font-family:var(--util-font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#6B6B6B}.util__sub-body{max-width:62ch;font-size:clamp(15px,1.2vw,16px);line-height:1.65;color:#454545}.util__sub-body p{margin:0 0 1em;text-wrap:pretty}.util__sub-body p:last-child{margin-bottom:0}.util__sub-body strong{color:#111;font-weight:500}.util__sub-body a{color:var(--util-coral);text-decoration:none}.util__contact{margin-top:96px;padding:64px 0 80px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:24px}.util__contact-q{font-family:var(--util-font-display);font-weight:400;font-size:clamp(18px,1.8vw,22px);letter-spacing:-.01em;color:#6B6B6B;margin:0}.util__contact-pill{display:inline-flex;align-items:center;height:52px;padding:0 32px;border:1px solid #c9c5bf;border-radius:9999px;background:transparent;font-family:var(--util-font-display);font-weight:500;font-size:16px;color:#111;text-decoration:none;transition:border-color .16s ease,color .16s ease,background .16s ease}.util__contact-pill:hover{border-color:var(--util-coral);color:var(--util-coral)}.util[data-viewport=mobile] .util__masthead{padding:14px 20px}.util[data-viewport=mobile] .util__masthead-nav{gap:18px;font-size:11px}.util[data-viewport=mobile] .util__pagehead-inner{padding:24px 20px 20px}.util[data-viewport=mobile] .util__h1,.util[data-viewport=mobile] .util__h1-slash{font-size:32px;line-height:1.08;letter-spacing:-.02em}.util[data-viewport=mobile] .util__eyebrow{margin-bottom:14px;font-size:11px}.util[data-viewport=mobile] .util__lede{font-size:17px;line-height:1.5}.util[data-viewport=mobile] .util__updated{margin-top:16px;font-size:11px}.util[data-viewport=mobile] .util__layout{display:block;padding:0 0 20px}.util[data-viewport=mobile] .util__main{padding:0 20px}.util__pills{position:sticky;top:0;z-index:5;display:flex;gap:8px;overflow-x:auto;padding:10px 20px;background:#FFFFFFEE;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid #e8e6e3;-webkit-overflow-scrolling:touch;scrollbar-width:none}.util__pills::-webkit-scrollbar{display:none}.util__pill{flex-shrink:0;display:inline-flex;align-items:center;position:relative;height:36px;padding:0 16px;border-radius:9999px;border:1px solid #e0e0e0;background:#FFF;font-family:var(--util-font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#6B6B6B;text-decoration:none;white-space:nowrap;transition:background .16s ease,color .16s ease,border-color .16s ease,transform .12s ease}.util__pill:before{content:"";position:absolute;inset:-3px -2px}.util__pill:active{transform:scale(.96)}.util__pill[data-active=true]{background:#111;border-color:#111;color:#FFF}.util[data-viewport=mobile] .util__section{padding-top:28px;margin-top:4px}.util[data-viewport=mobile] .util__section-head{margin-bottom:16px;gap:16px}.util[data-viewport=mobile] .util__section-title{font-size:22px;line-height:1.2}.util[data-viewport=mobile] .util__qa{margin-bottom:10px}.util[data-viewport=mobile] .util__qa-summary{display:inline-flex;width:auto;max-width:100%;align-items:center;gap:18px;font-size:16px;font-weight:500;padding:16px 22px;color:#2A2A28;background-color:transparent;background-image:url(/textures/pill-divider.png);background-size:100% 100%;background-repeat:no-repeat;background-position:50%;border-radius:9999px}.util[data-viewport=mobile] .util__qa-summary:hover{opacity:1}.util[data-viewport=mobile] .util__qa-plus{width:18px;height:18px}.util[data-viewport=mobile] .util__qa-answer{font-size:16px;line-height:1.55;padding:12px 22px 18px}.util[data-viewport=mobile] .util__sub{display:block;padding:20px 0}.util[data-viewport=mobile] .util__sub-label{margin-bottom:8px;display:block;font-size:12px;letter-spacing:.14em}.util[data-viewport=mobile] .util__sub-body{font-size:16px;line-height:1.6}@media (prefers-reduced-motion:reduce){.util *,.util :after,.util :before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}