*,*:before,*:after{box-sizing:border-box}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul[role=list],ol[role=list]{list-style:none}html:focus-within{scroll-behavior:smooth}body{min-height:100vh;text-rendering:optimizeSpeed;line-height:1.5}a:not([class]){text-decoration-skip-ink:auto}img,picture{max-width:100%;display:block}input,button,textarea,select{font:inherit}@media (prefers-reduced-motion: reduce){html:focus-within{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@font-face{font-family:Authentic;src:local("Authentic"),url(/AUTHENTICSans-90.woff) format("woff");font-display:swap}@font-face{font-family:Alte;src:local("Alte"),url(/AlteHaasGroteskBold.woff2) format("woff2");font-display:swap}:root{--color-dark: #2a2722;--color-less-dark: #54524e;--color-light: #fafafa;--color-less-light: #eeeeee;--wrapper-max-width: 1680px;--gutter: var(--space-s);background:var(--color-dark);--size-step--2: clamp(.6331rem, .6424rem + -.0119vw, .64rem);--size-step--1: clamp(.8rem, .7847rem + .0765vw, .844rem);--size-step-0: clamp(1rem, .9565rem + .2174vw, 1.125rem);--size-step-1: clamp(1.25rem, 1.1632rem + .4341vw, 1.4996rem);--size-step-2: clamp(1.5625rem, 1.4107rem + .7591vw, 1.999rem);--size-step-3: clamp(1.9531rem, 1.7056rem + 1.2375vw, 2.6647rem);--size-step-4: clamp(2.4414rem, 2.0551rem + 1.9315vw, 3.552rem);--size-step-5: clamp(3.0518rem, 2.4663rem + 2.9271vw, 4.7348rem);--space-3xs: clamp(.25rem, .2283rem + .1087vw, .3125rem);--space-2xs: clamp(.5rem, .4783rem + .1087vw, .5625rem);--space-xs: clamp(.75rem, .7065rem + .2174vw, .875rem);--space-s: clamp(1rem, .9565rem + .2174vw, 1.125rem);--space-m: clamp(1.5rem, 1.4348rem + .3261vw, 1.6875rem);--space-l: clamp(2rem, 1.913rem + .4348vw, 2.25rem);--space-xl: clamp(3rem, 2.8696rem + .6522vw, 3.375rem);--space-2xl: clamp(4rem, 3.8261rem + .8696vw, 4.5rem);--space-3xl: clamp(6rem, 5.7391rem + 1.3043vw, 6.75rem);--space-3xs-2xs: clamp(.3125rem, .2038rem + .5435vw, .625rem);--space-2xs-xs: clamp(.5625rem, .4321rem + .6522vw, .9375rem);--space-xs-s: clamp(.875rem, .7446rem + .6522vw, 1.25rem);--space-s-m: clamp(1.125rem, .8641rem + 1.3043vw, 1.875rem);--space-m-l: clamp(1.6875rem, 1.4049rem + 1.413vw, 2.5rem);--space-l-xl: clamp(2.25rem, 1.7283rem + 2.6087vw, 3.75rem);--space-xl-2xl: clamp(3.375rem, 2.8098rem + 2.8261vw, 5rem);--space-2xl-3xl: clamp(4.5rem, 3.4565rem + 5.2174vw, 7.5rem);--space-3xs-xl: clamp(.25rem, -.837rem + 5.4348vw, 3.375rem);--space-xs-m: clamp(.875rem, .5272rem + 1.7391vw, 1.875rem);--space-s-l: clamp(1.125rem, .6467rem + 2.3913vw, 2.5rem);--space-s-xl: clamp(1.125rem, .212rem + 4.5652vw, 3.75rem);--space-m-xl: clamp(1.6875rem, .9701rem + 3.587vw, 3.75rem);--space-xl-3xs: clamp(.25rem, 3.375rem - 1.7391vw, 1.875rem);--space-xs-3xs: clamp(.3125rem, 1.0707rem + -.9783vw, .875rem);--space-s-3xs: clamp(.3125rem, 1.4076rem + -1.413vw, 1.125rem);--space-s-4xs: clamp(.15625rem, 1.3798rem - 1.6105vw, 1.0125rem);--space-0-3xs: clamp(0rem, 1.69rem - 2.26vw, 1.125rem);--space-0-4xs: clamp(0rem, 1.352rem - 1.808vw, .9rem);--space-0-3xl: clamp(0rem, 0rem + 7.5vw, 7.5rem)}body{background:var(--color-light);color:var(--color-dark);display:flex;flex-direction:column;margin-inline:1em;font-family:Authentic,sans-serif;font-size:var(--size-step-0);line-height:1.8}@media (max-width: 48rem){body{margin-inline:0}}main{flex:auto;position:relative;&:focus{outline:none}}h1,h2,h3,h4,h5{font-family:Alte,serif;font-weight:800;line-height:1.2;text-wrap:balance;letter-spacing:2px}h1{font-size:var(--size-step-3)}h2{font-size:var(--size-step-2)}h3{font-size:var(--size-step-1)}:is(h1,h2,h3,blockquote){--flow-space: 1.5em}:is(h1,h2,h3)+*{--flow-space: .5em}ul{padding-inline-start:1em}ol{padding-inline-start:1.25em}blockquote{padding-inline-start:1em;border-inline-start:.3em solid var(--color-less-dark);font-size:var(--size-step-1);max-width:50ch}a{color:currentColor;text-decoration-thickness:.2ex;text-underline-offset:.3ex;word-wrap:break-word;&:hover{text-underline-offset:.5ex}}a:not([href*="joncoleman.me/"]):not([href^="mailto:"]):not([href^="#"]):not([href^="/"]):after{display:inline-block;width:1.25em;height:1em;background-image:url(/external-link.svg);background-repeat:no-repeat;background-position:center;background-size:60% auto;content:"(external link)";overflow:hidden;white-space:nowrap;text-indent:1.25em}details{background-color:var(--color-less-light);padding-block:.75rem;padding-inline:var(--gutter);border-radius:.5rem;border:.2ex solid var(--color-less-dark);max-width:28ch;summary{cursor:pointer;&:hover{text-decoration:underline;text-decoration-thickness:.2ex;text-underline-offset:.3ex}}}code:not(pre code){background-color:var(--color-less-light);padding-block:.125em;padding-inline:.25em;border-radius:4px}pre{background-color:var(--color-less-light);padding:var(--gutter);overflow-x:auto}small{color:var(--color-less-dark);display:inline-block;text-wrap:balance}del:before,del:after{clip-path:inset(100%);clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}del:before{content:" [deletion start] "}del:after{content:" [deletion end] "}::selection{color:var(--color-light);background-color:var(--color-dark)}:focus-visible{z-index:calc(infinity);outline:3px solid;outline-offset:3px}.article-header{display:grid;grid-template-areas:"title" "topics";column-gap:1rem;row-gap:1.5rem;>*:nth-child(1){grid-area:title}>*:nth-child(2){grid-area:topics}ul{list-style:none;padding-inline:0}p{color:var(--color-less-dark)}}@media (min-width: 48rem){.article-header{grid-template-columns:1fr;grid-template-areas:"title" "topics"}}@media (min-width: 80rem){.article-header{grid-template-columns:1fr 1fr;grid-template-areas:"title topics"}}.callout{padding:1em;border-inline-start:.3em solid var(--color-less-dark);border-inline-end:.03em solid var(--color-less-dark);border-block:.03em solid var(--color-less-dark)}.page-header{h1{color:var(--color-light);background-color:var(--color-dark);font-size:var(--size-step-5);text-transform:uppercase;display:inline-block;padding-inline:var(--gutter);&::selection{color:var(--color-dark);background-color:var(--color-light)}}}@media (max-width: 22rem){.page-header{h1{font-size:var(--size-step-4)}}}.post{padding-inline:var(--space-3xs-xl)}@media (min-width: 48rem){.post{margin-inline:0}}@media (min-width: 80rem){.post{margin-inline:auto}}.site-footer{h3{font-size:var(--size-step-0);text-transform:uppercase}ul{list-style:none;padding:0;--flow-space: 1.15rem}ul,p{font-size:var(--size-step--1)}ul li{margin-block-start:var(--space-s-4xs)}}.site-header{font-family:Alte,serif;text-transform:uppercase;letter-spacing:2px;ul{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--gutter);list-style:none;margin:0;padding:0}a{text-decoration:none;&:hover,&[aria-current=page]{text-decoration:underline;text-decoration-thickness:.2ex;text-underline-offset:.3ex}}}.site-header nav[data-wrapper-type=inner]{padding-block:var(--gutter)}.skip-link{background:var(--color-dark);position:absolute;text-align:center;margin-inline:auto;&:focus{left:var(--gutter);right:var(--gutter);top:var(--gutter)}&:not(:focus):not(:active){clip-path:inset(50%);overflow:hidden;height:1px;width:1px;white-space:nowrap}}.topics-and-toc{display:flex;column-gap:1rem;row-gap:1.5rem;>*:nth-child(1){flex-grow:1}>*:nth-child(2){flex-grow:2}}@media (max-width: 48rem){.topics-and-toc{flex-direction:column}}.flow>*+*{margin-block-start:var(--flow-space, 1em)}.grid{display:grid;grid-column-gap:var(--gutter);grid-row-gap:var(--space-m-l)}@supports (width: min(250px,100%)){.grid{grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr))}}.lede{font-family:monospace}.lede+*{--flow-space: 2em}@media (min-width: 64rem){.space{padding-inline-start:var(--space-0-3xl);padding-block-end:var(--space-m-xl);border-inline-start:.3ex dotted var(--color-less-dark)}}.stack{display:flex;flex-direction:column;justify-content:flex-start}.stack>*{margin-block:0}.stack>*+*{margin-block-start:var(--space-m-l)}.balance{text-wrap:balance}.border{border-block-end:.3ex dotted var(--color-less-dark);&:last-child{border-block-end:none}&:first-child:only-child{border-block-end:.3ex dotted var(--color-less-dark)}}.inverse{color:var(--color-light);background-color:var(--color-dark);::selection{color:var(--color-dark);background-color:var(--color-light)}a:not([href*="joncoleman.me/"]):not([href^="#"]):not([href^="/"]):after{background-image:url(/external-link-inverse.svg)}}.region{padding-block:var(--space-s-l)}.prose{max-width:75ch}.wrapper{max-width:var(--max-wrapper-width, 1469px);padding-inline:var(--gutter);margin-inline:auto;[data-wrapper-type=inner]{padding-block:var(--space-s-l);padding-inline:var(--space-3xs-xl)}}
