:root{--ink-950:#03141a;--ink-900:#061f26;--ink-800:#0b2d35;--ink-700:#134049;--ink-600:#2a5a63;--paper:#f3f6f4;--paper-2:#e6ede9;--white:#fff;--mint-300:#8ff8dc;--mint-400:#3ef0c3;--mint-500:#16d6a6;--mint-700:#07735e;--uv-300:#c2b5ff;--uv-500:#7d63ff;--uv-700:#4b33c9;--text:#0a1f24;--text-muted:#4a6064;--text-inverse:#e9f4f1;--text-inverse-muted:#9db7b4;--line:#0a1f241f;--line-inverse:#e9f4f11f;--radius-sm:10px;--radius:18px;--radius-lg:28px;--shadow-sm:0 1px 2px #03141a0f, 0 2px 8px #03141a0d;--shadow:0 2px 6px #03141a0d, 0 18px 40px -12px #03141a2e;--shadow-glow:0 0 0 1px #3ef0c359, 0 10px 40px -8px #3ef0c373;--gutter:clamp(16px, 4vw, 40px);--container:1240px;--header-h:72px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--spectrum:linear-gradient(90deg, var(--mint-400), #5fd3ff 45%, var(--uv-500))}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 16px);overflow-x:clip}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{background:var(--paper);min-height:100dvh;color:var(--text);font-family:var(--font-body),system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:1rem;line-height:1.65;overflow-x:clip}img,svg,video{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}a{color:inherit;text-decoration:none}ul[role=list],ol[role=list]{padding:0;list-style:none}h1,h2,h3,h4{font-family:var(--font-display),system-ui,sans-serif;letter-spacing:-.025em;text-wrap:balance;font-variation-settings:"wdth" 92;font-weight:700;line-height:1.05}p{text-wrap:pretty}::selection{background:var(--mint-400);color:var(--ink-950)}.container{width:100%;max-width:calc(var(--container) + var(--gutter)*2);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:clamp(72px,10vw,128px);position:relative}.section--dark{background:var(--ink-900);color:var(--text-inverse)}.section--tint{background:var(--paper-2)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:1000;border-radius:var(--radius-sm);background:var(--mint-400);color:var(--ink-950);transition:transform .2s var(--ease-out);padding:10px 16px;font-weight:700;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus-visible{transform:translateY(0)}.tag{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;font-variant-numeric:tabular-nums;color:var(--mint-700);align-items:center;gap:10px;font-size:.72rem;font-weight:700;display:inline-flex}.tag:before{content:"";width:7px;height:7px;box-shadow:0 0 0 3px color-mix(in srgb, currentColor 18%, transparent);background:currentColor;border-radius:2px}.section--dark .tag,[data-theme=dark] .tag,.tag[data-theme=dark]{color:var(--mint-400)}.tag__code{opacity:.8;border:1px solid;border-radius:5px;padding:2px 7px;font-size:.66rem}.accent{font-family:var(--font-serif),Georgia,serif;letter-spacing:-.01em;font-variation-settings:normal;font-style:italic;font-weight:400}.h-display{font-size:clamp(2.5rem,6.4vw,5.4rem)}.h-section{font-size:clamp(2rem,4.4vw,3.4rem)}.h-card{letter-spacing:-.015em;font-size:clamp(1.15rem,1.6vw,1.35rem)}.lead{color:var(--text-muted);max-width:62ch;font-size:clamp(1.05rem,1.4vw,1.22rem)}.section--dark .lead,[data-theme=dark] .lead,.lead[data-theme=dark]{color:var(--text-inverse-muted)}.section-head{gap:18px;max-width:820px;margin-bottom:clamp(40px,6vw,72px);display:grid}.section-head--center{text-align:center;justify-items:center;margin-inline:auto}.btn{--btn-bg:var(--ink-900);--btn-fg:var(--white);background:var(--btn-bg);min-height:52px;color:var(--btn-fg);letter-spacing:-.005em;white-space:nowrap;isolation:isolate;transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-out),background-color .25s;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 24px;font-size:.98rem;font-weight:700;display:inline-flex;position:relative;overflow:hidden}.btn:focus-visible{outline:2px solid var(--mint-400);outline-offset:3px}.btn svg{flex:none;width:18px;height:18px}.btn:after{content:"";z-index:-1;background:linear-gradient(110deg,#0000 30%,#ffffff59 50%,#0000 70%);position:absolute;inset:0;transform:translate(-120%)}@media (hover:hover) and (pointer:fine){.btn:hover{transform:translateY(-2px)}.btn:hover:after{transition:transform .8s var(--ease-out);transform:translate(120%)}}.btn:active{transform:translateY(0)scale(.98)}.btn--mint{--btn-bg:var(--mint-400);--btn-fg:var(--ink-950);box-shadow:0 8px 30px -8px #3ef0c399}@media (hover:hover) and (pointer:fine){.btn--mint:hover{box-shadow:var(--shadow-glow)}}.btn--ghost{--btn-bg:transparent;--btn-fg:currentColor;box-shadow:inset 0 0 0 1.5px}.btn--glass{--btn-fg:var(--white);-webkit-backdrop-filter:blur(16px)saturate(140%);background:#ffffff14;border:1px solid #ffffff1f}.btn--block{width:100%}.btn--sm{min-height:42px;padding:0 18px;font-size:.9rem}.pulse-dot{background:var(--mint-500);border-radius:50%;flex:none;width:8px;height:8px;position:relative}.pulse-dot:after{content:"";border-radius:inherit;background:inherit;position:absolute;inset:0}@media (prefers-reduced-motion:no-preference){.pulse-dot:after{animation:pulse 2s var(--ease-out) infinite}}@keyframes pulse{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(3.2)}}.check-list{gap:12px;padding:0;list-style:none;display:grid}.check-list li{padding-left:34px;line-height:1.5;position:relative}.check-list li:before{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2303141a' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/13px no-repeat,var(--mint-400);border-radius:7px;width:22px;height:22px;position:absolute;top:1px;left:0}.check-list--warn li:before{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M12 7v6M12 17h.01'/%3E%3C/svg%3E") center/14px no-repeat,var(--uv-500)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
