*,*:before,*:after{box-sizing:border-box}html{background:var(--base);-webkit-text-size-adjust:100%;text-size-adjust:100%}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{margin:0;min-height:100svh;background:var(--base);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-body);line-height:1.6;overflow-x:clip;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body.is-locked{overflow:hidden}h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin:0}:where(ul,ol)[role=list]{list-style:none;padding:0}h1,h2,h3{font-family:var(--font-body);font-weight:600;color:var(--ink);hyphens:manual}h2{font-family:var(--font-display);font-size:var(--fs-h2);line-height:1;letter-spacing:-.045em;text-wrap:balance}.display-key{font-size:var(--fs-h2-key)}h3{font-size:var(--fs-h3);line-height:1.1;letter-spacing:-.02em}.g{color:var(--accent-ink)}@supports ((-webkit-background-clip: text) or (background-clip: text)){.g,.g .rv-word{background-image:var(--grad-title);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}}p{text-wrap:pretty}a{color:inherit;text-decoration:none}img,svg,picture{display:block;max-width:100%}img{height:auto}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--focus);outline-offset:3px}::selection{background:var(--accent);color:var(--on-accent)}[hidden]{display:none!important}.icon{width:20px;height:20px;flex:none;--icon-accent: var(--accent)}.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;top:var(--s-3);left:var(--s-3);z-index:200;padding:var(--s-3) var(--s-4);border-radius:var(--r-md);background:var(--accent);color:var(--on-accent);font-weight:600;transform:translateY(-200%);transition:transform var(--dur-base) var(--ease-out)}.skip-link:focus-visible,.skip-link:focus{transform:translateY(0)}.container{width:var(--container);margin-inline:auto}[id]{scroll-margin-top:calc(var(--header-h) + 16px)}.section{position:relative;padding-block:var(--section-y);overflow-x:clip}.section>.container{position:relative;z-index:2}.lead{font-size:var(--fs-lead);line-height:1.6;color:var(--muted);max-width:54ch}.lead strong{color:var(--ink);font-weight:600}.mono{font-family:var(--font-mono)}.nowrap{white-space:nowrap}.sky{position:absolute;inset:0;z-index:0;pointer-events:none}.sky__b{position:absolute;display:block;width:var(--w, clamp(420px, 58vw, 1000px));aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgb(var(--c) / 1),rgb(var(--c) / .55) 45%,rgb(var(--c) / 0));opacity:var(--o, 1)}.sky__b--peach{--c: 255 201 174}.sky__b--apricot{--c: 255 158 110;--o: .6}.sky__b--sky{--c: 188 214 255}.sky__b--mint{--c: 200 240 222}.sky__b--md{--w: clamp(360px, 46vw, 780px)}@media(min-width:1024px)and (prefers-reduced-motion:no-preference){.sky--live .sky__b{will-change:transform;animation:sky-drift-a 18s ease-in-out infinite alternate}.sky--live .sky__b:nth-child(2){animation:sky-drift-b 22s ease-in-out infinite alternate}.sky--live .sky__b:nth-child(3){animation:sky-drift-a 20s ease-in-out infinite alternate-reverse}html.sky-paused .sky--live .sky__b{animation-play-state:paused}}@keyframes sky-drift-a{to{transform:translate3d(80px,60px,0) scale(1.1)}}@keyframes sky-drift-b{to{transform:translate3d(-70px,40px,0) scale(.92)}}.glass{position:relative;background:var(--glass);border:1px solid var(--edge);border-radius:var(--r-xl);box-shadow:var(--sh-glass)}.glass--hi{background:var(--glass-hi)}.glass--blur{background:var(--glass-hi);box-shadow:var(--sh-float);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.glass--blur{background:var(--glass-solid)}}html.glass-lite .glass--blur{background:var(--glass-solid);-webkit-backdrop-filter:none;backdrop-filter:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
