@font-face{font-family:Refresh Geist;src:url(/fonts/geist-latin-wght-normal.woff2) format("woff2");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:Refresh Martian;src:url(/fonts/martian-mono-latin-wght-normal.woff2) format("woff2");font-style:normal;font-weight:100 800;font-display:swap}.landing-refresh{--ink: #0e1116;--body: #38463f;--muted: #525a57;--green: #008f5a;--deep: #005c3a;--divider: #dce3df;--gutter: clamp(24px, 4.2vw, 80px);margin:0;background:#fff;color:var(--ink);font-family:Refresh Geist,Arial,sans-serif;-webkit-font-smoothing:antialiased}.landing-refresh *{box-sizing:border-box}.landing-refresh :where(h1,h2,h3,p){margin:0}.landing-refresh a{color:inherit;text-decoration:none}.landing-refresh :where(button,input){font:inherit}.landing-refresh :where(a,button,input):focus-visible{outline:2px solid var(--deep);outline-offset:5px}.landing-refresh .refresh-skip:hover{text-decoration:underline;text-underline-offset:5px}.refresh-skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.refresh-skip:focus{position:absolute;z-index:5;left:24px;top:16px;background:#fff;padding:12px}.refresh-hero{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(0,1fr);gap:24px;padding:20px}.refresh-left{display:flex;flex-direction:column;min-width:0;min-height:720px;padding:20px clamp(24px,3.2vw,64px) 0}.refresh-header{display:flex;align-items:center;justify-content:space-between;gap:24px}.refresh-header>a{display:inline-flex;align-items:center;min-height:44px}.refresh-header img{display:block;width:112px;height:auto}.refresh-contact{font-size:14px;padding:9px 17px;min-height:40px!important;border:1px solid var(--divider);border-radius:3px;background:#fff;transition:border-color .18s,background-color .18s}.refresh-contact:focus-visible{background:#fff;border-color:var(--ink)}@media(hover:hover){.refresh-contact:hover{background:#fff;border-color:#8a958e}}.refresh-copy{flex:1;display:flex;flex-direction:column;justify-content:center;padding:64px 0 72px}.refresh-copy h1{font-size:clamp(50px,4.3vw,80px);font-weight:450;line-height:1.04;letter-spacing:-.05em;text-wrap:pretty}.refresh-copy h1 span{display:block}.refresh-copy h1 span:last-child{white-space:nowrap}.refresh-description{text-wrap:pretty;max-width:530px;margin-top:32px;font-size:20px;line-height:1.55;color:var(--body)}.refresh-form-area{width:100%;max-width:530px;margin-top:30px}.refresh-field-label{display:block;margin-bottom:10px;font-size:14px;font-weight:500}.refresh-form-frame{display:grid;min-height:90px;border:1px solid var(--divider);border-radius:4px;background:#fff;padding:8px}#refresh-form{width:100%;margin:0;grid-area:1 / 1;align-self:center;min-width:0}.refresh-controls{display:flex;gap:8px;align-items:center}.refresh-controls input{min-width:0;width:100%;flex:1;height:54px;padding:14px 10px;background:#fff;border:0;border-radius:2px;color:var(--ink);font-size:16px}.refresh-controls input:focus-visible{outline-offset:-2px}.refresh-controls input::placeholder{color:var(--muted);opacity:1}.refresh-button{--button-height: 54px;display:inline-flex;align-items:stretch;justify-content:center;min-height:var(--button-height);padding:0;border:1px solid var(--ink);border-radius:3px;background:var(--ink);color:#fff!important;font-size:16px;line-height:1.4;font-weight:450;white-space:nowrap;cursor:pointer;transition:background-color .18s ease-out}.refresh-button-label{display:flex;align-items:center;justify-content:center;padding:0 20px;min-width:112px}.refresh-endcap{flex:0 0 calc(var(--button-height) - 2px);width:calc(var(--button-height) - 2px);border-left:1px solid #ffffff24;display:grid;place-items:center;background:#ffffff05;transition:background-color .18s ease-out}.refresh-endcap svg{grid-area:1 / 1;transition:opacity .16s ease-out,transform .18s ease-out}.refresh-endcap .refresh-spinner,.refresh-endcap .refresh-sent{opacity:0}.refresh-button:disabled{cursor:default}.refresh-button:focus-visible .refresh-plus{transform:translate(2px)}@media(hover:hover){.refresh-button:not(:disabled):hover{background:#252729}.refresh-button:not(:disabled):hover .refresh-endcap{background:#ffffff0b}.refresh-button:not(:disabled):hover .refresh-plus{transform:translate(2px)}}.refresh-button:not(:disabled):active{background:#343638}.refresh-closing .refresh-button{--button-height: 46px}.refresh-form-tail{display:grid;min-height:40px;margin-top:6px;align-items:start}#form-helper{grid-area:1 / 1;padding-top:6px;font-size:14px;line-height:1.5;color:var(--muted)}.refresh-feedback-area{display:grid;min-height:48px}.refresh-feedback-measure{grid-area:1 / 1;visibility:hidden;font-size:14px;line-height:1.6;overflow-wrap:anywhere}#form-feedback{grid-area:1 / 1;font-size:14px;line-height:1.6;color:var(--body)}#form-feedback a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.refresh-shader{position:absolute;inset:0;opacity:0}.refresh-shader canvas{display:block;width:100%;height:100%;object-fit:cover}.refresh-eyebrow{font-family:Refresh Martian,monospace;font-size:11px;line-height:1.6;letter-spacing:.04em;font-weight:450;color:var(--muted);margin-bottom:24px}.refresh-art-wrap{position:relative;min-width:0;display:grid}#refresh-motion-control{position:absolute;top:100%;right:0;margin-top:8px;padding:6px 0 6px 12px;border:0;background:none;color:var(--muted);font-size:12px;cursor:pointer;min-height:44px}#refresh-motion-control:hover{color:var(--ink)}.refresh-art{position:relative;isolation:isolate;overflow:hidden;border-radius:8px;background:#061a14;display:grid;place-items:center;min-width:0}.refresh-field{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.refresh-symbol{position:relative;width:19%;max-width:140px;height:auto;pointer-events:none}.refresh-editorial{max-width:1064px;padding:0 24px;margin:100px auto 0}.refresh-journey{display:grid;grid-template-columns:200px minmax(0,660px);gap:72px;border-top:1px solid var(--divider);padding-top:64px}.refresh-index{position:sticky;top:80px;align-self:start;border-left:1px solid var(--divider)}.refresh-index a{position:relative;display:flex;align-items:center;gap:14px;padding:12px 0 12px 18px;font-size:14px;color:var(--muted);line-height:1.5;font-weight:500;transition:color .15s ease-out}.refresh-index a span{font-family:Refresh Martian,monospace;font-size:10px;color:var(--muted)}.refresh-index a[aria-current]{color:var(--ink)}.refresh-index a[aria-current]:before{content:"";position:absolute;left:-1px;top:12px;bottom:12px;width:2px;background:var(--green)}.refresh-chapter{scroll-margin-top:64px}.refresh-chapter>.refresh-label{display:none}.refresh-chapter+.refresh-chapter{margin-top:80px}.refresh-label{font-family:Refresh Martian,monospace;font-size:11px;line-height:1.6;letter-spacing:.025em;color:var(--muted);padding-top:10px}.refresh-reading{min-width:0}.refresh-reading h2{font-size:42px;font-weight:450;letter-spacing:-.04em;line-height:1.12;text-wrap:pretty}.refresh-reading p{font-size:19px;line-height:1.65;color:var(--body);margin-top:22px}.refresh-reading h2+p{margin-top:28px}.refresh-reading .refresh-emphasis{color:var(--ink);font-weight:500;margin-top:32px}#shift .refresh-emphasis{font-size:21px;line-height:1.4;letter-spacing:-.02em;max-width:520px}.refresh-example{margin-top:32px;padding:26px 0 0;border-top:1px solid var(--divider)}.refresh-reading .refresh-example-eyebrow{font-family:Refresh Martian,monospace;font-size:11px;font-weight:450;letter-spacing:.04em;color:var(--muted);margin:0 0 14px}.refresh-example h3{font-size:25px;font-weight:500;letter-spacing:-.025em;line-height:1.25}.refresh-reading .refresh-example p:not(.refresh-example-eyebrow){margin-top:18px}.refresh-reading .refresh-example .refresh-example-conclusion{color:var(--ink)}.refresh-chapter-body>p:first-child{margin-top:28px}.refresh-evidence{margin:32px 0 0}.refresh-evidence>div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:20px;padding:18px 0;border-top:1px solid var(--divider)}.refresh-evidence>div:last-child{border-bottom:1px solid var(--divider)}.refresh-evidence dt{font-size:15px;font-weight:500;line-height:1.6}.refresh-evidence dd{margin:0;font-size:17px;line-height:1.6;color:var(--body)}.refresh-reading .refresh-scope{margin-top:24px;font-size:16px;line-height:1.6;color:var(--muted)}.refresh-reading .refresh-foundation{margin-top:28px;font-size:16px;line-height:1.6;color:var(--muted)}.refresh-closing{display:grid;grid-template-columns:200px minmax(0,660px);gap:72px;margin-top:72px}.refresh-closing .refresh-reading{grid-column:2;border-top:1px solid var(--divider);padding-top:40px}.refresh-closing .refresh-reading h2{font-size:36px}.refresh-closing .refresh-reading p{max-width:570px;margin-top:20px}.refresh-closing .refresh-button{margin-top:28px}.refresh-footer{margin:88px var(--gutter) 0;border-top:1px solid var(--divider);padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--muted);font-size:14px;line-height:1.5}.refresh-footer nav{display:flex;gap:28px;flex-wrap:wrap}.refresh-footer a{display:inline-flex;align-items:center;min-height:44px}.refresh-footer a{background-image:linear-gradient(currentColor,currentColor);background-size:0 1px;background-repeat:no-repeat;background-position:left calc(50% + 12px);transition:background-size .18s ease-out}.landing-refresh .refresh-footer a:focus-visible{background-size:100% 1px}@media(hover:hover){.landing-refresh .refresh-footer a:hover{text-decoration:none;background-size:100% 1px}}@media(min-width:1000px)and (max-width:1199px){.refresh-left{padding-inline:24px}.refresh-copy{padding-block:60px}}@media(max-width:999px){.refresh-hero{display:flex;flex-direction:column;gap:40px;padding:28px 32px 0}.refresh-left{padding:0;min-height:0}.refresh-copy{padding:64px 0 0;max-width:700px}.refresh-copy h1{font-size:60px}.refresh-description{font-size:20px;max-width:600px}.refresh-art{height:320px}.refresh-symbol{width:96px}.refresh-editorial{padding-inline:32px;margin-top:80px}.refresh-journey,.refresh-closing{display:block}.refresh-index{display:none}.refresh-chapter>.refresh-label{display:block;padding-top:0;margin-bottom:20px}.refresh-reading{max-width:660px}.refresh-reading h2{font-size:36px}}@media(max-width:799px){.refresh-chapter{display:block}.refresh-label{padding-top:0;margin-bottom:20px}.refresh-chapter+.refresh-chapter{margin-top:64px}.refresh-reading{max-width:660px}.refresh-closing .refresh-reading{padding-top:32px}}@media(max-width:599px){.landing-refresh{--gutter: 24px}.refresh-hero{padding:20px 24px 0;gap:32px}.refresh-copy{padding-top:48px}.refresh-eyebrow{font-size:10px;letter-spacing:.04em;margin-bottom:20px}.refresh-copy h1{font-size:44px;line-height:1.08;letter-spacing:-.045em}.refresh-copy h1 span{display:inline}.refresh-description{margin-top:24px;font-size:18px;line-height:1.6}.refresh-form-area{margin-top:28px}.refresh-form-frame{min-height:134px}.refresh-controls .refresh-button{width:100%}.refresh-controls .refresh-button-label{flex:1}.refresh-controls{flex-direction:column;align-items:stretch}.refresh-controls input{flex:auto}.refresh-art{height:240px}.refresh-symbol{width:76px}.refresh-editorial{margin-top:64px;padding-inline:24px}.refresh-reading h2{font-size:32px}.refresh-reading p{font-size:18px}.refresh-reading .refresh-example,.refresh-reading .refresh-foundation{font-size:16px}.refresh-example h3{font-size:23px}.refresh-reading h2+p{margin-top:24px}.refresh-closing .refresh-reading h2{font-size:32px}.refresh-evidence li{font-size:16px}.refresh-footer{margin-top:64px;align-items:flex-start;flex-direction:column;gap:12px}.refresh-footer nav{gap:8px 24px}.refresh-footer nav a:first-child{flex-basis:100%}}@media(max-width:359px){.landing-refresh{--gutter: 20px}.refresh-hero,.refresh-editorial{padding-inline:20px}.refresh-copy h1{font-size:38px}.refresh-reading h2,.refresh-closing .refresh-reading h2{font-size:29px}.refresh-art{height:220px}}@media(prefers-reduced-motion:reduce){.landing-refresh *,.landing-refresh *:before,.landing-refresh *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.refresh-button svg{transform:none!important}}@media(prefers-reduced-motion:no-preference){.refresh-motion-pending .landing-refresh :is(.refresh-header,.refresh-eyebrow,#hero-heading,.refresh-description,.refresh-form-area){opacity:0}}.landing-refresh .refresh-line-mask{padding-block:.1em;margin-block:-.1em}.refresh-hardware{position:relative;margin:0;min-width:0;overflow:hidden;display:grid;place-items:center;background:#ececed;border-radius:8px}.refresh-hardware img{display:block;width:145%;max-width:none;height:auto}.refresh-hardware figcaption{position:absolute;left:28px;right:28px;bottom:28px;display:flex;justify-content:space-between;gap:16px;font-size:14px;line-height:1.5}.refresh-hardware figcaption span:last-child{color:var(--muted)}.refresh-architecture{margin:36px 0 28px}.refresh-flow{display:grid;grid-template-columns:90px 22px minmax(0,1fr) 54px 96px;align-items:start}.refresh-endpoint{padding-top:62px;text-align:center}.refresh-endpoint strong{display:block;font-size:15px;line-height:1.35;font-weight:500}.refresh-endpoint>span{display:block;font-size:12px;line-height:1.5;color:var(--muted);margin-top:7px}.refresh-boundary{padding:20px 16px 22px;border:1px solid #b9c8c0;background:#fafbfa}.refresh-boundary-label{font-size:14px;font-weight:500;line-height:1.5;text-align:center}.refresh-internal{display:grid;grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr);align-items:center;margin-top:24px;text-align:center}.refresh-checks,.refresh-call{font-size:16px;font-weight:450;line-height:1.4}.refresh-call{color:var(--deep)}.refresh-path{height:1px;background:var(--green);position:relative}.refresh-path:after{content:"";position:absolute;right:1px;top:-3px;width:6px;height:6px;border-top:1px solid var(--green);border-right:1px solid var(--green);transform:rotate(45deg)}.refresh-incoming,.refresh-outgoing{margin-top:88px}.refresh-incoming{background:#a3b1a9}.refresh-incoming:after{border-color:#a3b1a9}.refresh-outgoing>span{position:absolute;bottom:12px;left:0;width:100%;text-align:center;font-size:12px;line-height:1.35;color:var(--deep)}.refresh-credential{grid-column:3;display:flex;flex-direction:column;align-items:center;font-size:14px;line-height:1.4;color:var(--body)}.refresh-resource-path{height:24px;width:1px;margin:10px 0;background:#a3b1a9;position:relative}.refresh-resource-path:before{content:"";position:absolute;left:-3px;top:1px;width:6px;height:6px;border-left:1px solid #a3b1a9;border-top:1px solid #a3b1a9;transform:rotate(45deg)}.refresh-architecture figcaption{margin-top:12px;font-size:13px;line-height:1.5;color:var(--muted)}@media(max-width:999px){.refresh-hardware{height:320px}.refresh-hardware img{width:120%}.refresh-hardware figcaption{bottom:18px;left:24px;right:24px}}@media(max-width:599px){.refresh-hardware{height:240px}.refresh-hardware img{width:150%;margin-top:-20px}.refresh-hardware figcaption{font-size:12px;left:16px;right:16px;bottom:16px;gap:12px}.refresh-journey{padding-top:40px}#shift .refresh-emphasis{font-size:20px}.refresh-evidence>div{grid-template-columns:1fr;gap:6px;padding:16px 0}.refresh-evidence dd{font-size:16px}.refresh-flow{display:flex;flex-direction:column;align-items:center}.refresh-endpoint{padding-top:0}.refresh-endpoint>span{font-size:13px;margin-top:3px}.refresh-incoming,.refresh-outgoing{margin:12px 0;height:28px;width:1px}.refresh-incoming:after,.refresh-outgoing:after{top:auto;bottom:1px;right:-3px;transform:rotate(135deg)}.refresh-outgoing>span{bottom:0;left:14px;width:80px;text-align:left}.refresh-boundary{width:100%}.refresh-closing{margin-top:56px}}@media(max-width:359px){.refresh-hardware{height:220px}}@media(max-width:599px){.refresh-flow{align-items:stretch}.refresh-endpoint{width:calc(50% + 2px)}.refresh-incoming,.refresh-outgoing{margin-left:calc(25% + 1px)}.refresh-checks{grid-column:1;grid-row:1}.refresh-internal>.refresh-path{grid-column:1;grid-row:2;justify-self:center;width:1px;height:24px;margin:12px 0}.refresh-internal>.refresh-path:after{top:auto;bottom:1px;right:-3px;transform:rotate(135deg)}.refresh-call{grid-column:1;grid-row:3}.refresh-credential{display:contents}.refresh-resource-path{grid-column:2;grid-row:3;width:26px;height:1px;margin:0}.refresh-resource-path:before{left:1px;top:-3px;transform:rotate(-45deg)}.refresh-credential>span:last-child{grid-column:3;grid-row:3;font-size:14px;line-height:1.4;color:var(--body)}}.refresh-confirmation{grid-area:1 / 1;align-self:center;display:flex;align-items:flex-start;gap:10px;padding:12px;min-width:0;visibility:hidden;opacity:0;transform:translateY(4px)}.refresh-confirmation>svg{flex:0 0 18px;margin-top:3px;color:var(--green)}.refresh-confirmation>div{min-width:0}.refresh-confirmation h2{font-size:18px;line-height:1.35;font-weight:500;letter-spacing:-.02em}.refresh-confirmation p{margin-top:6px;font-size:15px;line-height:1.5;color:var(--body);overflow-wrap:anywhere}.refresh-reset{grid-area:1 / 1;justify-self:start;padding:6px 0;min-height:40px;border:0;background:#fff;color:var(--muted);font-size:14px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.refresh-reset:hover{color:var(--ink)}.refresh-confirmation:focus-visible{outline:2px solid var(--deep);outline-offset:6px;border-radius:2px}.refresh-form-area[data-state=success] #refresh-form{opacity:0;visibility:hidden;transform:translateY(-4px)}.refresh-form-area[data-state=success] .refresh-confirmation{opacity:1;visibility:visible;transform:none}.refresh-form-area[data-state=success] #form-helper{visibility:hidden}.refresh-form-area:is([data-state=submitting],[data-state=sent]) .refresh-plus{opacity:0}.refresh-form-area[data-state=submitting] .refresh-spinner{opacity:1;animation:refresh-spin .9s linear infinite}.refresh-form-area[data-state=sent] .refresh-sent{opacity:1}@keyframes refresh-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){.refresh-form-area[data-state=success] #refresh-form{transition:opacity .26s ease-out,transform .26s ease-out,visibility 0s .26s}.refresh-form-area[data-state=success] .refresh-confirmation{transition:opacity .28s ease-out,transform .28s ease-out}.refresh-form-area:is([data-state=submitting],[data-state=sent]) [data-submit-label]{animation:refresh-button-content .16s ease-out}@keyframes refresh-button-content{0%{opacity:.6}to{opacity:1}}}@media(prefers-reduced-motion:reduce){.refresh-confirmation,.refresh-form-area[data-state=success] #refresh-form{transform:none}}
