.site{--sec-ink:#0a0a0a;--sec-note:#e60024;--card-fill:#e60024;--card-ink:#fff;--card-edge:transparent;--rail-fill:#fff;--rail-ink:#e60024;--rail-edge:#e60024}:root[data-pin-theme=crimson] .site{--sec-ink:#e60024;--sec-note:#0a0a0a;--card-fill:#fff;--card-ink:#e60024;--card-edge:#e60024;--rail-fill:#e60024;--rail-ink:#fff;--rail-edge:transparent}.shelf__title,.shelf__lead,.shelf__note,.card,.rail,.rail__rule{transition:color var(--pin-theme-fade) var(--pin-theme-ease), background-color var(--pin-theme-fade) var(--pin-theme-ease), border-color var(--pin-theme-fade) var(--pin-theme-ease)}html[data-pin-scroll=smooth]{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html[data-pin-scroll=smooth]{scroll-behavior:auto}}.shelf{padding:5.5em var(--hero-inset) 4em}.shelf__title{text-align:center;letter-spacing:-.025em;color:var(--sec-ink);margin:0;font-size:3.5em;font-weight:500;line-height:1.08}.shelf__head{margin:0 0 3em}.shelf__lead{text-align:center;letter-spacing:-.01em;max-width:30em;color:var(--sec-note);margin:.8em auto 0;font-size:1.25em;line-height:1.45}.shelf__lead .hero__pinterest{background-color:currentColor}@media (max-width:880px){.shelf__title{font-size:2.875em}.shelf__lead{font-size:1.125em}}.shelf__grid{grid-template-columns:repeat(auto-fit,minmax(max(20em,33.3333% - 1em),1fr));gap:1.5em;margin:0;padding:0;list-style:none;display:grid}.shelf__cell{display:flex}.card{border:var(--hero-rule) solid var(--card-edge);background:var(--card-fill);color:var(--card-ink);flex-direction:column;flex:1;gap:.9em;padding:.8em;text-decoration:none;display:flex}.card__frame{aspect-ratio:384/226.8;border-radius:.7em;display:block;overflow:hidden}.card__video{object-fit:cover;width:100%;height:100%;transform:scale(var(--card-zoom,1));background:#000;transition:transform .5s cubic-bezier(.22,.68,.16,1);display:block}.card__foot{justify-content:space-between;align-items:center;gap:1em;padding:0 .35em .3em;display:flex}.card__title{letter-spacing:-.02em;font-size:1.75em;font-weight:500;line-height:1.1}.card__new{background:var(--card-ink);color:var(--card-fill);letter-spacing:.08em;text-transform:uppercase;vertical-align:.42em;transition:background-color var(--pin-theme-fade) var(--pin-theme-ease), color var(--pin-theme-fade) var(--pin-theme-ease);margin-left:.5em;padding:.28em .5em .24em;font-size:.4em;font-weight:600;line-height:1.2;display:inline-block}.card__arrow{flex:none;width:1.6em;height:1.6em;transition:transform .4s cubic-bezier(.22,.68,.16,1);display:block}.card__arrow svg{width:100%;height:100%;display:block}@media (hover:hover){.card:hover .card__video{transform:scale(calc(var(--card-zoom,1) * 1.03))}.card:hover .card__arrow{transform:translate(.22em,-.22em)}}.shelf__note{text-align:center;letter-spacing:-.01em;color:var(--sec-note);margin:2.4em 0 0;font-size:1.125em}.rail{top:50%;right:var(--hero-inset);z-index:20;border:var(--hero-rule) solid var(--rail-edge);background:var(--rail-fill);width:7em;color:var(--rail-ink);border-radius:3.5em;flex-direction:column;align-items:center;gap:1.05em;padding:1.4em 1em;display:flex;position:fixed;box-shadow:0 1.2em 2.4em #0000001a}.rail__mark{cursor:pointer;color:inherit;line-height:0;font:inherit;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;display:block}.rail__mark:focus-visible{outline-offset:.3em;outline:.14em solid}.rail__markArt{--pin-mark:var(--rail-ink);--pin-mark-star:var(--rail-fill);width:2.375em;height:2.8125em;display:block}.rail__rule{opacity:.5;background:currentColor;width:1.5em;height:1px;display:block}.rail__links{flex-direction:column;align-items:center;gap:.3em;display:flex}.rail__link{letter-spacing:-.01em;color:inherit;opacity:.9;font-size:1.0625em;line-height:1.25;text-decoration:none;transition:opacity .24s}.rail__github{width:2.25em;height:2.25em;display:block;position:relative}.rail__githubMark{width:100%;height:100%;transition:opacity var(--pin-theme-fade) var(--pin-theme-ease);display:block}.rail__githubMark--alt{position:absolute;inset:0}@media (hover:hover){.rail__link:hover{opacity:1;text-underline-offset:.25em;text-decoration:underline}}@media (max-width:1080px){.rail{top:calc(var(--hero-inset) + .5em);width:max-content;max-width:calc(100% - 2 * var(--hero-inset));border-radius:3.5em;flex-direction:row;gap:.95em;margin-inline:auto;padding:.7em 1.15em;bottom:auto;left:0;right:0}.rail__rule{width:1px;height:1.55em}.rail__links{flex-direction:row;gap:1em}.rail__markArt{width:1.75em;height:2.07em}.rail__github{width:1.75em;height:1.75em}.rail__link{padding:.5em .25em;font-size:1em}}@media (max-width:700px){.shelf{padding:3.6em 1.6em 2.8em}.shelf__lead{max-width:26em}}@media (max-width:380px){.rail{gap:.7em;padding:.6em .9em}.rail__links{gap:.75em}}.foot{--foot-red:#e60024;--foot-ink:#0a0a0a;--foot-ease:cubic-bezier(.22, 1, .36, 1);padding:5em var(--hero-inset) 1.8em;color:var(--foot-red)}.foot__top{grid-template-columns:1fr auto 1fr;align-items:center;gap:1.25em;display:grid}.foot__brand{color:inherit;justify-self:start;align-items:center;gap:.625em;text-decoration:none;display:inline-flex}.foot__mark{--pin-mark:var(--foot-red);--pin-mark-star:#fff;width:2.375em;height:2.8125em;display:block}.foot__word{letter-spacing:-.02em;white-space:nowrap;font-size:2.25em;font-weight:500;line-height:1}.foot__nav{align-items:center;gap:1.25em;display:flex}.foot__navLink{letter-spacing:-.02em;color:inherit;white-space:nowrap;padding-bottom:.25em;font-size:1.125em;line-height:1;text-decoration:none;position:relative}.foot__navLink:after{content:"";transform-origin:0;background:currentColor;width:100%;height:.1em;transition:transform .36s cubic-bezier(.22,.68,.16,1);position:absolute;bottom:0;left:0;transform:scaleX(0)}@media (hover:hover){.foot__navLink:hover:after{transform:scaleX(1)}}.foot__navLink:focus-visible:after{transform:scaleX(1)}.foot__dm{justify-self:end;align-items:center;gap:.5em;display:flex}.foot__dmLabel{letter-spacing:-.02em;white-space:nowrap;font-size:1.125em;line-height:1}.foot__social{width:1.6em;height:1.6em;color:inherit;transition:transform .3s var(--foot-ease);display:block}.foot__social svg{width:100%;height:100%;display:block}@media (hover:hover){.foot__social:hover{transform:translateY(-.15em)scale(1.08)}}.foot a:focus-visible{outline:.14em solid var(--foot-red);outline-offset:.3em}.pinf{touch-action:pan-y;border:1px solid #e6002480;height:41.5em;margin-top:2.6em;position:relative;overflow:hidden}.pinf__pins{pointer-events:none;position:absolute;inset:0}.pinf__slot{opacity:0;transition:opacity .45s ease var(--pinf-delay,0s), transform .7s cubic-bezier(.34, 1.45, .64, 1) var(--pinf-delay,0s);display:block;position:absolute;transform:translateY(-1em)scale(1.14)}.pinf[data-arrived=true] .pinf__slot{opacity:1;transform:none}.pinf__pin{transform-origin:50% 40%;will-change:transform;background:url(/footer-pin.webp) 50%/contain no-repeat;width:100%;height:100%;display:block}@media (prefers-reduced-motion:reduce){.pinf__slot{transition:none}}.pinf__form{z-index:1;width:min(32em,100% - 2em);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.upd{position:relative}.upd__bar{background:var(--foot-red);color:#fff;align-items:center;gap:.6em;height:3.43em;padding:0 .4em 0 1.15em;transition:box-shadow .25s;display:flex;position:relative}.upd__bar:focus-within{box-shadow:0 0 0 .22em #e6002438}.upd__bar[data-invalid=true]{box-shadow:0 0 0 .14em var(--foot-ink)}.upd__label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.upd__input,.upd__done{min-width:0;font:inherit;letter-spacing:-.02em;color:inherit;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;outline:none;flex:auto;margin:0;padding:0;font-size:1.07em;line-height:1.2;overflow:hidden}.upd__input::placeholder{color:#ffffffe0;opacity:1}.upd__input:disabled{opacity:.7}.upd__go{isolation:isolate;background:var(--foot-ink);color:#fff;height:2.64em;font:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:background-color .25s ease, transform .2s var(--foot-ease);border:0;border-radius:999px;flex:none;align-items:center;gap:.5em;margin:0;padding:0 1.15em 0 .34em;display:inline-flex;position:relative}.upd__go:focus-visible{outline-offset:.18em;outline:.14em solid #fff}.upd__go:active:not([aria-disabled=true]):not([data-dragging=true]){transform:scale(.97)}.upd__go[aria-disabled=true]{cursor:default}.upd__trail{z-index:-1;pointer-events:none;background:#ffffff29;border-radius:999px;height:1.95em;margin-top:-.975em;position:absolute;top:50%;left:.34em}.upd__puck{z-index:1;width:1.95em;height:1.95em;color:var(--foot-red);cursor:grab;touch-action:pan-y;background:#fff;border-radius:999px;flex:none;place-items:center;display:grid;position:relative;overflow:hidden;box-shadow:0 .1em .35em #00000040}.upd__go[data-dragging=true],.upd__go[data-dragging=true] .upd__puck{cursor:grabbing}.upd__go[aria-disabled=true] .upd__puck{cursor:default}.upd__chev{line-height:0;display:block}.upd__chevArt{width:1.35em;height:.9em;display:block}.upd__tick{width:1.2em;height:1.2em;display:block}.upd__word{letter-spacing:-.02em;font-size:1.14em;line-height:1}.upd__word--done{align-items:center;display:flex;position:absolute;top:0;bottom:0;left:.9em}@media (hover:hover){.upd__go:not([aria-disabled=true]):hover{background:#1f1f1f}}.upd__bar[data-state=pending] .upd__chevArt{animation:updRun .8s var(--foot-ease) infinite}@keyframes updRun{0%{transform:translate(-120%)}to{transform:translate(120%)}}.upd__status{letter-spacing:-.01em;text-align:center;color:var(--foot-ink);margin:0;font-size:.93em;line-height:1.4;position:absolute;top:calc(100% + .55em);left:0;right:0}.upd__status[data-tone=error]{color:var(--foot-red)}.upd__status span{display:inline-block}@media (prefers-reduced-motion:reduce){.upd__bar[data-state=pending] .upd__chevArt{animation:none}}.foot__bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8em 2em;margin-top:1.8em;display:flex}.foot__small{letter-spacing:-.01em;color:var(--foot-ink);flex-wrap:wrap;align-items:center;gap:.5em 2em;margin:0;font-size:1em;display:flex}.foot__link{color:inherit;text-decoration:none}@media (hover:hover){.foot__link:hover{color:var(--foot-red)}}@media (max-width:700px){.foot{padding:3.6em 1.6em 1.6em}.foot__top{grid-template-columns:auto 1fr;grid-template-areas:"brand dm""nav nav";row-gap:1.4em}.foot__brand{grid-area:brand}.foot__dm{grid-area:dm}.foot__nav{grid-area:nav}.foot__mark{width:2em;height:2.368em}.foot__word{font-size:1.875em}.foot__dmLabel{font-size:1em}.pinf{margin-top:2em}.foot__bar{flex-direction:column;align-items:flex-start}.foot__small{gap:.5em 1.4em}}@media (max-width:420px){.foot__dmLabel{display:none}}
