.frame-footer{--frame-footer-glyph:min(24rem, 28vw);isolation:isolate;padding:calc(var(--dw-diagonal-h) + var(--dw-space-6)) var(--dw-edge) var(--dw-space-6) calc(var(--dw-gutter-w) + var(--dw-edge));background:linear-gradient(to right, var(--dw-gutter-bg) 0 calc(var(--dw-gutter-w) - 1px), var(--dw-border-soft) calc(var(--dw-gutter-w) - 1px) var(--dw-gutter-w), transparent var(--dw-gutter-w)) no-repeat, var(--dw-canvas);font-size:var(--dw-fs-13);color:var(--dw-dim);position:relative;overflow:hidden}.frame-footer:focus{outline:none}.frame-footer:before{content:"";z-index:-1;height:var(--dw-diagonal-h);background:var(--frame-footer-cut,var(--dw-panel));clip-path:polygon(0 0,100% 0,0 100%);position:absolute;inset:0 0 auto}.frame-main:has(>.dw-band:last-child)+.frame-footer{--frame-footer-cut:linear-gradient(to right, var(--dw-gutter-bg) 0 calc(var(--dw-gutter-w) - 1px), var(--dw-border-soft) calc(var(--dw-gutter-w) - 1px) var(--dw-gutter-w), transparent var(--dw-gutter-w)) no-repeat, var(--dw-panel)}.frame-main:has(>.dw-page-hero:last-child)+.frame-footer{--frame-footer-glyph:0px}.frame-main:has(>.dw-page-hero:last-child)+.frame-footer .frame-footer__mark{display:none}.frame-main:has(>.dw-page-hero:last-child)+.frame-footer{--frame-footer-cut:linear-gradient(to right, var(--dw-gutter-bg) 0 calc(var(--dw-gutter-w) - 1px), var(--dw-border-soft) calc(var(--dw-gutter-w) - 1px) var(--dw-gutter-w), transparent var(--dw-gutter-w)) no-repeat, var(--dw-canvas);--frame-footer-cut-sm:var(--dw-canvas)}.frame-footer__mark{z-index:1;width:var(--frame-footer-glyph);height:var(--frame-footer-glyph);pointer-events:none;position:absolute;bottom:-5.5rem;right:-4rem}.frame-footer__glyph{width:100%;height:100%}.frame-footer__glyph path{pointer-events:visiblePainted;cursor:default}.frame-footer__inner{justify-items:start;gap:var(--dw-space-5);max-width:min(60rem, calc(100% - var(--frame-footer-glyph) + 4rem));display:grid}.frame-footer__inner>*{max-width:100%;margin:0}.frame-footer__row{position:relative}.frame-footer__row:before{content:attr(data-line);content:attr(data-line) / "";top:0;left:calc(-1 * (var(--dw-gutter-w) + var(--dw-edge)));width:var(--dw-gutter-w);font-family:var(--dw-font-mono);font-size:var(--dw-fs-12);font-weight:var(--dw-fw-regular);letter-spacing:0;text-transform:none;color:var(--dw-dimmer);text-align:center;line-height:1.6;position:absolute}.frame-footer__brand{gap:var(--dw-space-1-5);max-width:34rem;font-size:var(--dw-fs-15);line-height:var(--dw-lh-snug);flex-direction:column;display:flex}.frame-footer__brand:before{line-height:2.1}.frame-footer__brand strong{font-size:var(--dw-fs-20);font-weight:var(--dw-fw-strong);letter-spacing:var(--dw-tracking-title);color:var(--dw-text)}.frame-footer__release{align-items:baseline;gap:var(--dw-space-1) var(--dw-space-3);font-family:var(--dw-font-mono);font-size:var(--dw-fs-12-5);flex-wrap:wrap;display:flex}.frame-footer__release-label{color:var(--dw-dimmer)}.frame-footer__release-link{color:var(--dw-accent-text);font-weight:var(--dw-fw-medium);text-decoration:none}.frame-footer__release-link:hover{text-underline-offset:.2em;text-decoration:underline}.frame-footer__nav{gap:var(--dw-space-5) clamp(var(--dw-space-6), 4vw, var(--dw-space-8));flex-wrap:wrap;display:flex}.frame-footer__nav:before{line-height:1.5}.frame-footer__col{min-width:0}.frame-footer__heading{margin:0 0 var(--dw-space-2-5);font-family:var(--dw-font-mono);font-size:var(--dw-fs-11);font-weight:var(--dw-fw-medium);letter-spacing:var(--dw-tracking-caps);text-transform:uppercase;color:var(--dw-dimmer)}.frame-footer__heading>span{color:var(--dw-info);letter-spacing:0}.frame-footer__links{gap:var(--dw-space-1-5);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.frame-footer__links a{align-items:baseline;gap:var(--dw-space-2);color:var(--dw-dim);transition:color var(--dw-dur-fast) var(--dw-ease);text-decoration:none;display:inline-flex}.frame-footer__links a:hover{color:var(--dw-text);text-underline-offset:.2em;text-decoration:underline}.frame-footer__sign{width:.75em;font-family:var(--dw-font-mono);font-weight:var(--dw-fw-medium);color:var(--dw-add);text-decoration:none;display:inline-block}.frame-footer__meta{justify-content:space-between;align-items:center;gap:var(--dw-space-3) var(--dw-space-5);padding-top:var(--dw-space-4);border-top:1px solid var(--dw-border-soft);flex-wrap:wrap;justify-self:stretch;display:flex}.frame-footer__meta:before{top:var(--dw-space-4);line-height:2.2}.frame-footer__copy{align-items:center;gap:var(--dw-space-2) var(--dw-space-3);font-family:var(--dw-font-mono);font-size:var(--dw-fs-11-5);color:var(--dw-dimmer);flex-wrap:wrap;margin:0;display:flex}.frame-footer__made:before{content:"// ";content:"// " / "";color:var(--dw-dimmer)}.frame-footer__made{color:var(--dw-dim)}.frame-footer__marker{align-items:center;gap:var(--dw-space-2) var(--dw-space-4);padding:var(--dw-space-1) var(--dw-space-3);border-radius:var(--dw-r-1);font-family:var(--dw-font-mono);font-size:var(--dw-fs-12-5);font-weight:var(--dw-fw-medium);white-space:pre;flex-wrap:wrap;justify-self:stretch;margin:0;display:flex;position:relative}.frame-footer__marker--ours{--frame-footer-n:12;background:var(--dw-del-bg);color:var(--dw-del)}.frame-footer__marker--sep{--frame-footer-n:7;color:var(--dw-dimmer)}.frame-footer__marker--theirs{--frame-footer-n:18;background:var(--dw-add-bg);color:var(--dw-add)}.frame-footer__type{display:inline-block;position:relative}.frame-footer__chars{white-space:pre;display:inline-block}.frame-footer__type:after{content:"";opacity:0;background:currentColor;width:.6ch;margin-left:1px;position:absolute;top:.1em;bottom:.1em;left:100%}.frame-footer__resolve{white-space:nowrap}.frame-footer--conflict .frame-footer__half,.frame-footer--resolving .frame-footer__half{isolation:isolate;padding:var(--dw-space-3);justify-self:stretch;padding-inline-start:calc(var(--dw-space-3) + 2px);position:relative}.frame-footer--conflict .frame-footer__half:after,.frame-footer--resolving .frame-footer__half:after{content:"";z-index:-1;border-inline-start:2px solid var(--dw-del);border-radius:0 var(--dw-r-1) var(--dw-r-1) 0;background:var(--dw-del-bg);position:absolute;inset:0}.frame-footer--conflict .frame-footer__half--ours,.frame-footer--resolving .frame-footer__half--ours{gap:var(--dw-space-4);display:grid}.frame-footer--conflict .frame-footer__half--theirs:after,.frame-footer--resolving .frame-footer__half--theirs:after{border-color:var(--dw-add);background:var(--dw-add-bg)}.frame-footer--conflict .frame-footer__half--ours .frame-footer__row:before,.frame-footer--resolving .frame-footer__half--ours .frame-footer__row:before{color:var(--dw-del)}.frame-footer--conflict .frame-footer__half--theirs .frame-footer__row:before,.frame-footer--resolving .frame-footer__half--theirs .frame-footer__row:before{color:var(--dw-add)}.frame-footer--conflict .frame-footer__half .frame-footer__row:before,.frame-footer--resolving .frame-footer__half .frame-footer__row:before{left:calc(-1 * (var(--dw-gutter-w) + var(--dw-edge) + var(--dw-space-3) + 2px))}.frame-footer--conflict .frame-footer__glyph,.frame-footer--resolving .frame-footer__glyph{--dw-glyph-top-fill:var(--dw-del-bg);--dw-glyph-top-line:var(--dw-del);--dw-glyph-bottom-fill:var(--dw-add-bg);--dw-glyph-bottom-line:var(--dw-add)}:is(.frame-footer--conflict .frame-footer__glyph g:has(>.dw-glyph__top),.frame-footer--resolving .frame-footer__glyph g:has(>.dw-glyph__top)){transform:translate(-34px,-22px)}:is(.frame-footer--conflict .frame-footer__glyph g:has(>.dw-glyph__bottom),.frame-footer--resolving .frame-footer__glyph g:has(>.dw-glyph__bottom)){transform:translate(34px,22px)}.frame-footer__fx{z-index:2;pointer-events:none;position:absolute;inset:0;overflow:hidden}.frame-footer__fx>*{opacity:0;position:absolute}.frame-footer__fx-band{inset:0}.frame-footer__fx-band--ours{background:color-mix(in srgb, var(--dw-del) 34%, transparent)}.frame-footer__fx-band--theirs{background:color-mix(in srgb, var(--dw-add) 34%, transparent)}.frame-footer__fx-sweep{background:linear-gradient(100deg, transparent 30%, color-mix(in srgb, var(--dw-add) 16%, transparent) 44%, color-mix(in srgb, var(--dw-add) 34%, transparent) 50%, color-mix(in srgb, var(--dw-add) 16%, transparent) 56%, transparent 70%);inset:0}.frame-footer__plus{font-family:var(--dw-font-mono);font-size:var(--dw-fs-20);font-weight:var(--dw-fw-medium);color:var(--dw-add);line-height:1;left:0}.frame-footer__merged{margin-left:var(--dw-space-3);padding:0 var(--dw-space-2);border-radius:var(--dw-r-1);white-space:nowrap;font-weight:var(--dw-fw-medium);background:var(--dw-add-bg);color:var(--dw-add);opacity:0;position:absolute;left:100%}@media (prefers-reduced-motion:no-preference){html.dw-anim .frame-footer--conflict .frame-footer__marker--sep:after{content:"";top:50%;left:calc(-1 * (var(--dw-gutter-w) + var(--dw-edge)));background:linear-gradient(to right, var(--dw-del), var(--dw-text) 50%, var(--dw-add));width:100vw;height:2px;box-shadow:0 0 6px color-mix(in srgb, var(--dw-text) 45%, transparent);opacity:0;animation:frame-footer-crack-scan .32s var(--dw-ease-out) 0s both, frame-footer-crack-fade .52s var(--dw-ease) .3s both;margin-top:-1px;position:absolute}html.dw-anim .frame-footer--conflict .frame-footer__fx-band--ours{animation:.48s step-end forwards frame-footer-band-ours}html.dw-anim .frame-footer--conflict .frame-footer__fx-band--theirs{animation:.48s step-end 40ms forwards frame-footer-band-theirs}html.dw-anim .frame-footer--conflict .frame-footer__inner{animation:.22s steps(4,end) .12s frame-footer-glitch}html.dw-anim .frame-footer--conflict .frame-footer__half--ours{animation:frame-footer-part-ours .48s var(--dw-ease-pop) .14s both}html.dw-anim .frame-footer--conflict .frame-footer__half--theirs{animation:frame-footer-part-theirs .48s var(--dw-ease-pop) .14s both}html.dw-anim .frame-footer--conflict .frame-footer__half--ours:after{animation:frame-footer-wipe-left .32s var(--dw-ease-expo) .16s both}html.dw-anim .frame-footer--conflict .frame-footer__half--theirs:after{animation:frame-footer-wipe-right .32s var(--dw-ease-expo) .2s both}html.dw-anim .frame-footer--conflict .frame-footer__half .frame-footer__row:before{animation:.5s step-end .2s both frame-footer-flicker}html.dw-anim .frame-footer--conflict .frame-footer__glyph g:has(>.dw-glyph__top){animation:frame-footer-split-top .7s var(--dw-ease-pop) .1s both}html.dw-anim .frame-footer--conflict .frame-footer__glyph g:has(>.dw-glyph__bottom){animation:frame-footer-split-bottom .7s var(--dw-ease-pop) .14s both}html.dw-anim .frame-footer--conflict .frame-footer__marker--ours{animation:frame-footer-wipe-left .18s var(--dw-ease-out) .26s both}html.dw-anim .frame-footer--conflict .frame-footer__marker--ours .frame-footer__chars{animation:.36s steps(12,end) .4s both frame-footer-type}html.dw-anim .frame-footer--conflict .frame-footer__marker--ours .frame-footer__type:after{animation:.36s steps(12,end) .4s both frame-footer-caret,.44s linear .4s forwards frame-footer-caret-once}html.dw-anim .frame-footer--conflict .frame-footer__marker--sep .frame-footer__chars{animation:.21s steps(7,end) .78s both frame-footer-type}html.dw-anim .frame-footer--conflict .frame-footer__marker--sep .frame-footer__type:after{animation:.21s steps(7,end) .78s both frame-footer-caret,.26s linear .78s forwards frame-footer-caret-once}html.dw-anim .frame-footer--conflict .frame-footer__marker--theirs{animation:frame-footer-wipe-left .18s var(--dw-ease-out) .86s both}html.dw-anim .frame-footer--conflict .frame-footer__marker--theirs .frame-footer__chars{animation:.54s steps(18,end) 1s both frame-footer-type}html.dw-anim .frame-footer--conflict .frame-footer__marker--theirs .frame-footer__type:after{animation:.54s steps(18,end) 1s both frame-footer-caret,1.06s step-end 1s infinite frame-footer-blink}html.dw-anim .frame-footer--conflict .frame-footer__resolve{animation:frame-footer-pop .22s var(--dw-ease-pop) 1.38s both}html.dw-anim .frame-footer--resolving .frame-footer__marker--theirs{animation:frame-footer-collapse .16s var(--dw-ease) 0s forwards}html.dw-anim .frame-footer--resolving .frame-footer__marker--sep{animation:frame-footer-collapse .16s var(--dw-ease) 30ms forwards}html.dw-anim .frame-footer--resolving .frame-footer__marker--ours{animation:frame-footer-collapse .16s var(--dw-ease) 60ms forwards}html.dw-anim .frame-footer--resolving .frame-footer__half--ours{animation:.22s cubic-bezier(.5,0,.9,.4) forwards frame-footer-close-ours}html.dw-anim .frame-footer--resolving .frame-footer__half--theirs{animation:.22s cubic-bezier(.5,0,.9,.4) forwards frame-footer-close-theirs}html.dw-anim .frame-footer--resolving .frame-footer__half:after{animation:frame-footer-fade-out .2s var(--dw-ease) 20ms forwards}html.dw-anim .frame-footer--merged .frame-footer__inner{animation:frame-footer-slam .26s var(--dw-ease-pop) 0s both}html.dw-anim .frame-footer--merged .frame-footer__fx-sweep{animation:frame-footer-sweep .64s var(--dw-ease) 20ms forwards}html.dw-anim .frame-footer--merged .frame-footer__merged{animation:frame-footer-merged 1.1s var(--dw-ease-out) 40ms forwards}html.dw-anim .frame-footer--merged .frame-footer__glyph g:has(>.dw-glyph__top){animation:frame-footer-heal-top .56s var(--dw-ease-pop) 0s both}html.dw-anim .frame-footer--merged .frame-footer__glyph g:has(>.dw-glyph__bottom){animation:frame-footer-heal-bottom .56s var(--dw-ease-pop) 30ms both}html.dw-anim .frame-footer--merged .frame-footer__plus{animation:frame-footer-plus .8s var(--dw-ease-out) .12s forwards}html.dw-anim .frame-footer--merged .frame-footer__plus:nth-child(2){animation:frame-footer-plus .76s var(--dw-ease-out) 80ms forwards}html.dw-anim .frame-footer--merged .frame-footer__plus:nth-child(4){animation:frame-footer-plus .86s var(--dw-ease-out) .2s forwards}html.dw-anim .frame-footer--merged .frame-footer__plus:nth-child(5){animation:frame-footer-plus .72s var(--dw-ease-out) .14s forwards}html.dw-anim .frame-footer--merged .frame-footer__plus:nth-child(7){animation:frame-footer-plus .88s var(--dw-ease-out) .26s forwards}html.dw-anim .frame-footer--merged .frame-footer__plus:nth-child(8){animation:frame-footer-plus .78s var(--dw-ease-out) 60ms forwards}html.dw-anim .frame-footer--merged .frame-footer__plus:nth-child(10){animation:frame-footer-plus .84s var(--dw-ease-out) .3s forwards}html.dw-anim .frame-footer--merged .frame-footer__plus:nth-child(11){animation:frame-footer-plus .74s var(--dw-ease-out) .18s forwards}}.frame-footer__plus:nth-child(2){--frame-footer-x:14px;--frame-footer-drift:-6px;--frame-footer-rise:-120px;top:88%}.frame-footer__plus:nth-child(3){--frame-footer-x:40px;--frame-footer-drift:8px;--frame-footer-rise:-150px;top:76%}.frame-footer__plus:nth-child(4){--frame-footer-x:24px;--frame-footer-drift:4px;--frame-footer-rise:-90px;top:64%}.frame-footer__plus:nth-child(5){--frame-footer-x:54px;--frame-footer-drift:-10px;--frame-footer-rise:-110px;top:92%}.frame-footer__plus:nth-child(6){--frame-footer-x:8px;--frame-footer-drift:12px;--frame-footer-rise:-140px;top:52%}.frame-footer__plus:nth-child(7){--frame-footer-x:34px;--frame-footer-drift:-4px;--frame-footer-rise:-170px;top:82%}.frame-footer__plus:nth-child(8){--frame-footer-x:48px;--frame-footer-drift:6px;--frame-footer-rise:-80px;top:40%}.frame-footer__plus:nth-child(9){--frame-footer-x:18px;--frame-footer-drift:-8px;--frame-footer-rise:-100px;top:70%}.frame-footer__plus:nth-child(10){--frame-footer-x:60px;--frame-footer-drift:2px;--frame-footer-rise:-130px;top:58%}.frame-footer__plus:nth-child(11){--frame-footer-x:28px;--frame-footer-drift:10px;--frame-footer-rise:-160px;top:96%}@keyframes frame-footer-crack-scan{0%{clip-path:inset(0 100% 0 0);opacity:1}to{clip-path:inset(0);opacity:1}}@keyframes frame-footer-crack-fade{0%{opacity:1}to{opacity:0}}@keyframes frame-footer-band-ours{0%{opacity:1;clip-path:inset(18% 0 76%);transform:translate(-14px)}20%{clip-path:inset(47% 0);transform:translate(9px)}40%{clip-path:inset(8% 0 89%);transform:translate(-6px)}60%{clip-path:inset(31% 0 62%);transform:translate(12px)}80%{clip-path:inset(41% 0 56%);transform:translate(-3px)}to{opacity:0}}@keyframes frame-footer-band-theirs{0%{opacity:1;clip-path:inset(63% 0 30%);transform:translate(14px)}20%{clip-path:inset(81% 0 14%);transform:translate(-9px)}40%{clip-path:inset(55% 0 41%);transform:translate(7px)}60%{clip-path:inset(88% 0 7%);transform:translate(-12px)}80%{clip-path:inset(71% 0 26%);transform:translate(4px)}to{opacity:0}}@keyframes frame-footer-glitch{25%{transform:translate(-4px)}50%{transform:translate(4px)skew(-2deg)}75%{transform:translate(-1px)}}@keyframes frame-footer-part-ours{0%{transform:translate(-6px,14px)}}@keyframes frame-footer-part-theirs{0%{transform:translate(6px,-14px)}}@keyframes frame-footer-wipe-left{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes frame-footer-wipe-right{0%{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0)}}@keyframes frame-footer-flicker{0%{opacity:0}15%{opacity:1}30%{opacity:.2}45%{opacity:1}60%{opacity:0}80%{opacity:1}}@keyframes frame-footer-split-top{0%{transform:none}30%{transform:translate(-6px,-2px)}38%{transform:translate(2px,-4px)}}@keyframes frame-footer-split-bottom{0%{transform:none}30%{transform:translate(6px,2px)}38%{transform:translate(-2px,4px)}}@keyframes frame-footer-type{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes frame-footer-caret{0%{transform:translateX(calc(var(--frame-footer-n) * -1ch))}to{transform:none}}@keyframes frame-footer-caret-once{0%,90%{opacity:1}to{opacity:0}}@keyframes frame-footer-blink{0%{opacity:1}50%{opacity:0}}@keyframes frame-footer-pop{0%{opacity:0;transform:scale(.82)}}@keyframes frame-footer-collapse{to{opacity:0;transform:scaleY(.1)}}@keyframes frame-footer-close-ours{to{transform:translateY(10px)}}@keyframes frame-footer-close-theirs{to{transform:translateY(-10px)}}@keyframes frame-footer-fade-out{to{opacity:0}}@keyframes frame-footer-slam{0%{transform:translateY(-5px)scaleY(1.015)}}@keyframes frame-footer-sweep{0%{opacity:1;transform:translate(-70%)}80%{opacity:1}to{opacity:0;transform:translate(70%)}}@keyframes frame-footer-merged{0%{opacity:0;transform:translate(-8px)}14%,78%{opacity:1;transform:none}to{opacity:0;transform:none}}@keyframes frame-footer-heal-top{0%{transform:translate(-34px,-22px)}}@keyframes frame-footer-heal-bottom{0%{transform:translate(34px,22px)}}@keyframes frame-footer-plus{0%{opacity:0;transform:translate(var(--frame-footer-x), 0) scale(.6)}18%{opacity:1}to{opacity:0;transform:translate(calc(var(--frame-footer-x) + var(--frame-footer-drift)), var(--frame-footer-rise)) scale(1.1) rotate(90deg)}}@media (width<=47.5rem){.frame-footer{--frame-footer-glyph:11rem;padding:calc(var(--dw-diagonal-h) + var(--dw-space-5)) var(--dw-frame-pad-sm) var(--dw-space-6);background:var(--dw-canvas)}.frame-footer:before{background:var(--frame-footer-cut-sm,var(--dw-panel))}.frame-footer__row:before{display:none}.frame-footer__mark{top:calc(var(--dw-diagonal-h) - .5rem);bottom:auto;right:-3.5rem}.frame-footer__inner{max-width:none}.frame-footer__brand{padding-inline-end:6rem}.frame-main:has(>.dw-page-hero:last-child)+.frame-footer .frame-footer__brand{padding-inline-end:0}.frame-footer__nav{justify-self:stretch;gap:var(--dw-space-5) var(--dw-space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.frame-footer__links{gap:0}.frame-footer__links a{min-height:var(--dw-target);align-items:center}.frame-footer__marker{white-space:pre-wrap}.frame-footer--conflict .frame-footer__half,.frame-footer--resolving .frame-footer__half{padding:var(--dw-space-3) var(--dw-space-2);padding-inline-start:calc(var(--dw-space-2) + 2px)}.frame-footer--conflict .frame-footer__half .frame-footer__brand,.frame-footer--resolving .frame-footer__half .frame-footer__brand{padding-inline-end:4rem}.frame-footer--conflict .frame-footer__nav,.frame-footer--resolving .frame-footer__nav{gap:var(--dw-space-5) var(--dw-space-3);grid-template-columns:minmax(0,1fr) max-content}.frame-footer__merged{margin:2px 0 0;top:100%;left:0}}
