:root{--paper:#fff;--studio:#f3f4f6;--line:#e3e5e9;--ink:#000;--graphite:#454a54;--mute:#6b717c;--volt:#0a5cff;--arc:#3cc8ff;--off:#c9cdd4;--wrap:1240px;--gutter:clamp(16px,4vw,48px)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--graphite);font-family:"Archivo",system-ui,sans-serif;font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
h1,h2,h3,p,figure,dl,dd{margin:0}
h1,h2,h3{color:var(--ink);text-wrap:balance}
a{color:inherit}
:focus-visible{outline:3px solid var(--volt);outline-offset:3px;border-radius:8px}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter)}
.btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:0 28px 0 22px;border-radius:999px;border:0;background:var(--ink);color:#fff;font:inherit;font-size:1rem;font-weight:600;text-decoration:none;cursor:pointer}
.btn::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,transparent 30%,#ffffff47 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.btn:hover::after,.btn:focus-visible::after{transform:translateX(120%)}
.btn-volt{background:var(--volt)}
.btn-sm{min-height:42px;padding:0 17px;font-size:.82rem}
.led{flex:none;width:8px;height:8px;border-radius:50%;background:#5e6370}
.btn-volt .led{background:#ffffff8c}
.topbar{position:fixed;inset:0 0 auto;z-index:50;background:#ffffffdf;border-bottom:1px solid transparent;transition:border-color .3s,transform .35s ease}
.topbar.is-scrolled{border-bottom-color:var(--line)}
.topbar-in{height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-size:1.125rem;font-weight:800;letter-spacing:-.02em;white-space:nowrap}
.topnav{display:flex;align-items:center;gap:28px}
.topnav>a:not(.btn){text-decoration:none;font-size:.9375rem;font-weight:500}
.grad{background:linear-gradient(90deg,var(--volt),var(--arc));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--volt)}
.foot{border-top:1px solid var(--line)}
.foot-in{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:32px}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
