:root{--font-sans-serif:var(--font-rethink-sans);--font-serif:var(--font-stix-two-text);--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--color-paper:#f6f3ec;--color-paper-deep:#ece8dc;--color-ink:#15171a;--color-text:#2c2e33;--color-muted:#6b6b66;--color-muted-dark:#9a968c;--color-rule:#d8d3c4;--color-rule-soft:#e9e4d6;--color-text-white:#d6d2c4;--color-code-back:#efeadb;--color-yellow:#ffd400;--color-red:#d6411f;--color-red-text:#bd3719;--max-width:1180px;--content-width:760px;--gutter:clamp(1.25rem, 4vw, 3rem);--header-h:4.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-6:3rem;--space-8:4rem;--space-12:6rem}header{z-index:999;backdrop-filter:saturate(140%)blur(8px);border-bottom:1px solid var(--color-rule);background-color:#f6f3eceb;width:100%;position:fixed;top:0}header .section{padding-block:0}#head{min-height:var(--header-h);flex-direction:row;align-items:center;gap:12px;padding:0;display:flex}#head .brand{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--color-ink);border:0;align-items:baseline;gap:4px;margin-right:auto;font-size:1.3rem;font-weight:700;display:inline-flex}#head .brand .dot{color:var(--color-red)}#head .brand:hover{color:var(--color-ink)}.menu{flex-grow:1;justify-content:flex-end;align-items:center;gap:4px;display:flex}.menu a{font-size:.95rem;font-family:var(--font-sans-serif);color:var(--color-ink);border:0;border-radius:4px;padding:6px 12px;transition:background-color .2s,color .2s}.menu a:hover{color:var(--color-red-text);background:0 0}@media (width<=768px){.menu{display:none}}.menu-mobile{color:var(--color-ink);cursor:pointer;background:0 0;border:0;margin:0;padding:6px;line-height:0;display:none}.menu-mobile:hover{color:var(--color-red-text);background:0 0}.menu-mobile .icon-close,.menu-mobile[aria-expanded=true] .icon-burger{display:none}.menu-mobile[aria-expanded=true] .icon-close{display:block}@media (width<=768px){.menu-mobile{align-items:center;display:inline-flex}}#mobile-nav{padding:0 var(--gutter) .8rem;border-top:1px solid var(--color-rule);flex-direction:column;display:none}#mobile-nav a{font-family:var(--font-sans-serif);color:var(--color-ink);border:0;border-bottom:1px solid var(--color-rule-soft);padding:.9rem 2px;font-size:1.05rem}#mobile-nav a:last-child{border-bottom:0}#mobile-nav a:hover{color:var(--color-red-text)}@media (width<=768px){#mobile-nav.open{display:flex}}footer{background-color:var(--color-ink);color:var(--color-text-white);margin-top:var(--space-12);padding:var(--space-8) var(--gutter) var(--space-6)}footer p{color:var(--color-text-white);font-size:1rem}footer a{color:var(--color-text-white);border:0;padding:4px 0;text-decoration:none;display:inline-block}footer a:hover{color:var(--color-yellow)}#footer{gap:var(--space-6);max-width:var(--max-width);grid-template-columns:2fr 1fr 1fr;margin:0 auto;display:grid}@media (width<=768px){#footer{gap:var(--space-4);grid-template-columns:1fr}}#footer a{display:block}#footer .footer-brand{font-family:var(--font-serif);color:var(--color-paper);letter-spacing:-.02em;margin-bottom:.5rem;font-size:1.6rem;font-weight:700}#footer .footer-brand .dot{color:var(--color-yellow)}#footer .footer-tag{color:var(--color-muted-dark);margin-top:.5rem;font-size:.95rem;line-height:1.5}#footer .footer-heading{color:var(--color-paper);font-family:var(--font-sans-serif);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .8rem;font-size:.8125rem;font-weight:700;line-height:1.05}.footer-bottom{margin-top:var(--space-6);padding-top:var(--space-3);color:var(--color-muted-dark);max-width:var(--max-width);border-top:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-left:auto;margin-right:auto;font-size:.85rem;display:flex}.footer-bottom a{color:var(--color-muted-dark);margin-right:1.2rem}.footer-bottom a:hover{color:var(--color-yellow)}form{width:100%}label{letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted);margin-bottom:6px;font-size:.8125rem;font-weight:700;display:block}label .req{letter-spacing:.04em;text-transform:none;font-weight:400}input,textarea{font-family:var(--font-sans-serif);background-color:var(--color-paper);border:1px solid var(--color-rule);box-sizing:border-box;width:100%;color:var(--color-ink);border-radius:4px;margin:0 0 18px;padding:12px 14px;font-size:1rem;transition:border-color .2s,box-shadow .2s;display:block}input:focus-visible,textarea:focus-visible{outline:3px solid var(--color-ink);outline-offset:1px;border-color:var(--color-ink)}input::placeholder,textarea::placeholder{color:var(--color-muted)}textarea{font-family:var(--font-sans-serif);resize:vertical;min-height:120px}.button,button{border:1px solid var(--color-ink);font-size:.95rem;font-family:var(--font-sans-serif);letter-spacing:.02em;cursor:pointer;color:var(--color-ink);background-color:#0000;border-radius:4px;align-items:center;gap:.6rem;margin:0;padding:14px 24px;font-weight:700;line-height:1;text-decoration:none;transition:transform .15s,background-color .2s,color .2s;display:inline-flex}.button:hover,button:hover{background-color:var(--color-ink);color:var(--color-paper);border-color:var(--color-ink)}.button:active,button:active{transform:translateY(1px)}.button .arrow,button .arrow{transition:transform .2s;display:inline-block}.button:hover .arrow,button:hover .arrow{transform:translate(4px)}button[type=submit],button.action,.button.action{background-color:var(--color-ink);color:var(--color-paper);border-color:var(--color-ink)}button[type=submit]:hover,button.action:hover,.button.action:hover{background-color:var(--color-yellow);color:var(--color-ink);border-color:var(--color-yellow)}.button-row{margin-top:var(--space-3);flex-wrap:wrap;gap:12px;display:flex}#tiles-rows{gap:var(--space-3);flex-direction:column;display:flex}.tile-row{border:1px solid var(--color-rule);padding:var(--space-4);background-color:var(--color-paper);border-radius:4px;transition:border-color .2s,transform .2s}.tile-row:hover{border-color:var(--color-ink);transform:translateY(-2px)}.tile-row{align-items:center;gap:var(--space-4);grid-template-columns:1fr;display:grid}.tile-desc{color:var(--color-text);margin:0 0 .5rem;font-size:1rem}.tile-meta{color:var(--color-muted);margin:0;font-size:.85rem}.tile-title{font-family:var(--font-serif);font-size:1.6rem;font-weight:700}.tile-title a{color:var(--color-ink);border:0}.tile-title a:hover{color:var(--color-red-text)}.tile-title{margin:0 0 .6rem}*{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + var(--space-2));font-size:100%}body{font-family:var(--font-sans-serif);color:var(--color-ink);background-color:var(--color-paper);padding-top:calc(var(--header-h) + 1px);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(at 20% 10%,#ffd4000d,#0000 60%),radial-gradient(at 90% 80%,#d6411f0a,#0000 60%);font-size:1.125rem;line-height:1.6}.highlight{background-color:var(--color-ink);color:var(--color-paper)}.highlight h1,.highlight h2,.highlight h3,.highlight h4{color:var(--color-paper)}.highlight p{color:var(--color-text-white)}.highlight a{color:var(--color-yellow)}.highlight a:hover{color:var(--color-paper)}.section{padding:var(--space-6) var(--gutter);flex-direction:column;justify-content:center;align-items:stretch;display:flex}.section-gap{margin:var(--space-12) 0;padding:var(--space-8) var(--gutter)}.section>*{max-width:var(--max-width);width:100%;margin:0 auto;padding:0}@media (width<=980px){.section>*{max-width:none}}.section.prose>*{max-width:var(--content-width)}@media (width<=980px){.section.prose>*{max-width:var(--content-width)}}h1,h2,h3,h4{font-family:var(--font-serif);color:var(--color-ink);letter-spacing:-.02em;margin:0 0 var(--space-3) 0;font-weight:700;line-height:1.05}h1{margin-top:var(--space-6);font-size:clamp(2.4rem,5vw,4.5rem)}h2{font-size:clamp(1.8rem,3.4vw,2.8rem);line-height:1.1}h3{font-size:clamp(1.3rem,2vw,1.6rem);line-height:1.2}h4{letter-spacing:.02em;text-transform:uppercase;font-size:1.1rem;font-family:var(--font-sans-serif);font-weight:700}p{color:var(--color-text);margin:0 0 1.25rem;font-size:1.125rem;line-height:1.65}p.lead{color:var(--color-ink);font-size:clamp(1.25rem,2vw,1.55rem);font-weight:400;line-height:1.45}em{background:linear-gradient(180deg, transparent 60%, var(--color-yellow) 60%);box-decoration-break:clone;border-radius:0;padding:0 .15em;font-style:normal;display:inline}a{color:var(--color-ink);border-bottom:1px solid var(--color-rule);text-decoration:none;transition:color .2s,border-color .2s}a:hover{color:var(--color-red-text);border-bottom-color:var(--color-red-text)}:focus-visible{outline:3px solid var(--color-ink);outline-offset:2px;border-radius:2px}.highlight :focus-visible,footer :focus-visible{outline-color:var(--color-yellow)}ul,ol{margin:1rem 0;padding-left:1.2rem}li{margin:0 0 .5rem .25rem;padding-left:.25rem;line-height:1.6}code{background-color:var(--color-code-back);font-family:var(--font-mono);border-radius:4px;padding:.15em .4em;font-size:.92em}.hidden{display:none!important}.skip-link{left:var(--gutter);z-index:1000;background-color:var(--color-ink);color:var(--color-paper);border:0;border-radius:0 0 4px 4px;padding:.75rem 1.25rem;font-size:.95rem;font-weight:700;transition:transform .15s;position:absolute;top:0;transform:translateY(-150%)}.skip-link:focus{color:var(--color-paper);transform:translateY(0)}.eyebrow{font-family:var(--font-sans-serif);letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted);margin-bottom:var(--space-3);align-items:center;gap:.6rem;font-size:.8125rem;font-weight:700;display:inline-flex}.eyebrow:before{content:"";background-color:var(--color-ink);width:28px;height:1px;display:inline-block}.eyebrow.light{color:var(--color-yellow)}.eyebrow.light:before{background-color:var(--color-yellow)}@keyframes rise{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.rise{animation:.8s cubic-bezier(.2,.8,.2,1) both rise}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
