.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}.lang-switcher[data-astro-cid-7e6x2uym]{background:var(--paper-2);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:2px;padding:3px;display:inline-flex}.lang-option[data-astro-cid-7e6x2uym]{font-family:var(--font-mono);letter-spacing:.06em;color:var(--muted);transition:background .2s var(--ease-out), color .2s, box-shadow .2s, transform .2s;border-radius:999px;align-items:center;gap:6px;padding:5px 10px 5px 6px;font-size:11px;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.lang-option[data-astro-cid-7e6x2uym]:hover{background:var(--paper-3);color:var(--ink)}.lang-option[data-astro-cid-7e6x2uym].is-active{background:var(--ink);color:var(--paper);box-shadow:0 2px 8px #0a0f1c1f}.lang-flag[data-astro-cid-7e6x2uym]{background:#fff;border:1px solid #0a0f1c14;border-radius:999px;flex:none;place-items:center;width:20px;height:20px;display:grid;overflow:hidden}.lang-option[data-astro-cid-7e6x2uym].is-active .lang-flag[data-astro-cid-7e6x2uym]{border-color:#f8f5ef33}.flag-img[data-astro-cid-7e6x2uym]{object-fit:cover;border-radius:999px;width:20px;height:20px;display:block}.flag-us[data-astro-cid-7e6x2uym]{transform-origin:50%;transform:scale(1.11)}.flag-qc[data-astro-cid-7e6x2uym]{transform:scale(1.02)}.lang-switcher--mobile[data-astro-cid-7e6x2uym]{background:var(--paper-3);justify-content:center;width:100%;margin-top:12px;padding:6px}.lang-switcher--mobile[data-astro-cid-7e6x2uym] .lang-option[data-astro-cid-7e6x2uym]{flex:1;justify-content:center;padding:10px;font-size:12px}.lang-switcher--mobile[data-astro-cid-7e6x2uym] .lang-flag[data-astro-cid-7e6x2uym],.lang-switcher--mobile[data-astro-cid-7e6x2uym] .flag-img[data-astro-cid-7e6x2uym]{width:22px;height:22px}.site-header--dark .lang-switcher[data-astro-cid-7e6x2uym]{background:#ffffff0f;border-color:#f8f5ef1f}.site-header--dark .lang-option[data-astro-cid-7e6x2uym]{color:#f8f5ef99}.site-header--dark .lang-option[data-astro-cid-7e6x2uym]:hover{color:var(--paper);background:#ffffff14}.site-header--dark .lang-option[data-astro-cid-7e6x2uym].is-active{background:var(--paper);color:var(--ink)}::view-transition-old(root),::view-transition-new(root){animation-duration:var(--dur-4,.6s);animation-timing-function:var(--ease-out-expo,cubic-bezier(.16, 1, .3, 1))}::view-transition-old(root){animation-name:webao-theme-hold}::view-transition-new(root){animation-name:webao-theme-reveal}@keyframes webao-theme-hold{0%{opacity:1}to{opacity:1}}@keyframes webao-theme-reveal{0%{clip-path:circle(0px at var(--vt-x,50%) var(--vt-y,80px))}to{clip-path:circle(var(--vt-r,150vmax) at var(--vt-x,50%) var(--vt-y,80px))}}@media (prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation-duration:.01ms}}.cc[data-astro-cid-6mtfvfpm]{display:none}@media (hover:hover) and (pointer:fine){.cc[data-astro-cid-6mtfvfpm]{display:block}}@media (prefers-reduced-motion:reduce){.cc[data-astro-cid-6mtfvfpm]{display:none!important}}.cc-layer[data-astro-cid-6mtfvfpm]{z-index:8000;pointer-events:none;opacity:0;will-change:transform;transition:opacity .3s;position:fixed;top:0;left:0}.cc-ring-i[data-astro-cid-6mtfvfpm]{border:1.5px solid color-mix(in srgb, var(--ink) 30%, transparent);width:34px;height:34px;transition:transform .38s var(--ease-spring), opacity .25s ease, border-color .25s ease, background-color .25s ease;border-radius:50%;margin:-17px 0 0 -17px;display:block}.cc-shape[data-astro-cid-6mtfvfpm]{opacity:0;transition:opacity .22s ease, transform .38s var(--ease-spring);position:absolute;top:0;left:0;transform:scale(.5)}.cc-shard[data-astro-cid-6mtfvfpm]{background:var(--accent);width:10px;height:10px;box-shadow:0 0 14px color-mix(in srgb, var(--accent) 55%, transparent);opacity:1;border-radius:2px;margin:-5px 0 0 -5px;transform:scale(1)rotate(45deg)}.cc-dotm[data-astro-cid-6mtfvfpm]{background:var(--ink);border-radius:50%;width:6px;height:6px;margin:-3px 0 0 -3px}.cc-corners[data-astro-cid-6mtfvfpm]{width:0;height:0}.cc-corners[data-astro-cid-6mtfvfpm] i[data-astro-cid-6mtfvfpm]{border:0 solid var(--ink);width:11px;height:11px;position:absolute}.cc-corners[data-astro-cid-6mtfvfpm] i[data-astro-cid-6mtfvfpm]:first-child{border-top-width:2px;border-left-width:2px;border-top-left-radius:3px;top:-19px;left:-19px}.cc-corners[data-astro-cid-6mtfvfpm] i[data-astro-cid-6mtfvfpm]:nth-child(2){border-top-width:2px;border-right-width:2px;border-top-right-radius:3px;top:-19px;left:8px}.cc-corners[data-astro-cid-6mtfvfpm] i[data-astro-cid-6mtfvfpm]:nth-child(3){border-bottom-width:2px;border-left-width:2px;border-bottom-left-radius:3px;top:8px;left:-19px}.cc-corners[data-astro-cid-6mtfvfpm] i[data-astro-cid-6mtfvfpm]:nth-child(4){border-bottom-width:2px;border-right-width:2px;border-bottom-right-radius:3px;top:8px;left:8px}html.cc-ready .cc-layer[data-astro-cid-6mtfvfpm]{opacity:1}html.cc-m-link .cc-shard[data-astro-cid-6mtfvfpm]{opacity:0;transform:scale(.5)rotate(45deg)}html.cc-m-link .cc-dotm[data-astro-cid-6mtfvfpm]{opacity:1;transform:scale(1)}html.cc-m-link .cc-ring-i[data-astro-cid-6mtfvfpm]{border-color:color-mix(in srgb, var(--accent) 65%, transparent);background:color-mix(in srgb, var(--accent) 7%, transparent);transform:scale(1.55)}html.cc-m-btn .cc-shard[data-astro-cid-6mtfvfpm]{opacity:0;transform:scale(.5)rotate(45deg)}html.cc-m-btn .cc-dotm[data-astro-cid-6mtfvfpm]{opacity:1;transform:scale(1)}html.cc-m-btn .cc-ring-i[data-astro-cid-6mtfvfpm]{border-color:color-mix(in srgb, var(--accent) 85%, transparent);background:color-mix(in srgb, var(--accent) 10%, transparent);transform:scale(1.28)}html.cc-m-media .cc-shard[data-astro-cid-6mtfvfpm]{opacity:0;transform:scale(.5)rotate(45deg)}html.cc-m-media .cc-corners[data-astro-cid-6mtfvfpm]{opacity:1;transform:scale(1)}html.cc-m-media .cc-ring-i[data-astro-cid-6mtfvfpm]{opacity:0;transform:scale(.7)}html.cc-down .cc-ring-i[data-astro-cid-6mtfvfpm]{transform:scale(.92)}html.cc-down.cc-m-link .cc-ring-i[data-astro-cid-6mtfvfpm]{transform:scale(1.35)}html.cc-down.cc-m-btn .cc-ring-i[data-astro-cid-6mtfvfpm]{transform:scale(1.12)}html.cc-off .cc-layer[data-astro-cid-6mtfvfpm],html.cc-away .cc-layer[data-astro-cid-6mtfvfpm]{opacity:0!important}html.cc-ready,html.cc-ready [data-astro-cid-6mtfvfpm]:not(input):not(textarea):not(select):not([contenteditable=true]){cursor:none}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-variant-ligatures:common-ligatures;scroll-behavior:smooth;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;overflow-x:clip}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--line-strong);border:2px solid var(--paper);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{background:var(--paper);min-height:100vh;color:var(--ink);line-height:1.5;font-family:var(--font-sans);overflow-x:clip}img,svg,video,canvas{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--ink);color:var(--paper)}.hero-grid>*,.intro-grid>*,.feature-grid>*,.steps>*,.split-head>*,.demo-strip>*,.agency-grid>*,.craft-grid>*,.faq-grid>*,.cta-inner>*,.compare-grid>*,.timeline-grid>*,.quote-card>*,.demos-hero-grid>*,.demo-grid>*,.contact-grid>*,.info-grid>*,.field-grid>*,.footer-grid>*,.faq-mini-grid>*,.shell>*,.browser-bar>*,.preview-meta>*,.search>*,.demo-browse>*,.demo-foot>*,.compare-foot>*{min-width:0}.oglyph{line-height:1;display:inline-block;transform:translateY(-.05em)}.scroll-progress{z-index:100;pointer-events:none;background:0 0;height:2px;position:fixed;top:0;left:0;right:0}.scroll-progress-bar{background:linear-gradient(90deg, var(--accent) 0%, var(--accent-mid) 50%, var(--ink) 100%);transform-origin:0;will-change:transform;width:100%;height:100%;transform:scaleX(0)}.fracture-divider{background:var(--line);clip-path:polygon(0 43%,8% 57%,15% 36%,24% 57%,33% 43%,42% 64%,51% 36%,60% 57%,69% 43%,78% 64%,87% 36%,94% 57%,100% 43%,100% 57%,94% 71%,87% 50%,78% 78%,69% 57%,60% 71%,51% 50%,42% 78%,33% 57%,24% 71%,15% 50%,8% 71%,0 57%);height:14px}.fracture-reveal{clip-path:polygon(0% 49.8%,12.5% 50.3%,25% 49.6%,37.5% 50.2%,50% 49.7%,62.5% 50.4%,75% 49.5%,87.5% 50.1%,100% 49.9%,100% 50.6%,87.5% 51.1%,75% 50.3%,62.5% 51.2%,50% 50.5%,37.5% 51%,25% 50.4%,12.5% 51.3%,0% 50.5%);transition:clip-path var(--dur-5) var(--ease-out-expo);will-change:clip-path}.fracture-reveal.is-visible{clip-path:polygon(0% -3%,12.5% 2%,25% -2%,37.5% 3%,50% -1%,62.5% 2.5%,75% -2.5%,87.5% 1.5%,100% -2%,100% 103%,87.5% 98%,75% 102.5%,62.5% 97.5%,50% 101%,37.5% 98.5%,25% 102%,12.5% 99%,0% 101.5%)}.crack-fill{background:var(--line);height:2px;position:relative;overflow:hidden}.crack-fill:after{content:"";background:var(--accent);transform:scaleX(var(--fill,0));transform-origin:0;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.fracture-reveal{clip-path:none;will-change:auto;transition:none}.fracture-divider{clip-path:none;height:1px}}.to-top{z-index:60;border:1px solid var(--line);background:color-mix(in srgb, var(--paper) 88%, transparent);backdrop-filter:blur(12px);width:44px;height:44px;color:var(--ink);cursor:pointer;box-shadow:var(--shadow-md);opacity:0;transition:opacity .25s var(--ease-out), transform .25s var(--ease-out), background .2s;pointer-events:none;border-radius:14px;place-items:center;display:grid;position:fixed;bottom:20px;right:20px;transform:translateY(12px)}.to-top:not([hidden]){pointer-events:auto}.to-top.is-visible{opacity:1;transform:none}.to-top:hover{background:var(--paper-3)}.to-top:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){.to-top{transition:opacity .15s;transform:none}}:root{--paper:#f8f5ef;--paper-2:#efe9de;--paper-3:#fffdf8;--ink:#0a0f1c;--ink-2:#141c2b;--ink-3:#2a354a;--muted:#6b7288;--muted-2:#8a96a8;--line:#0a0f1c14;--line-strong:#0a0f1c24;--line-on-dark:#f8f5ef1a;--line-on-dark-strong:#f8f5ef29;--accent:#ff3b30;--accent-hover:#e6352b;--accent-soft:#fff0ef;--accent-dark:#1a0a08;--accent-text:#ff3b30;--accent-soft-text:#7a1f1a;--accent-mid:#ff7a3d;--accent-glow:#ff3b303d;--accent-underline:linear-gradient(90deg, #ff3b3029, #ff3b3014);--success:#0e7a5a;--card-bg:#fff;--card-dark-bg:#10151f;--accent-card-bg:#0a0f1c;--accent-card-text:#f8f5ef;--accent-card-soft:#f8f5efad;--accent-card-chip:#f8f5ef14;--accent-card-chip-line:#f8f5ef1a;--section-dark-bg:#0a0f1c;--section-ink2-bg:#141c2b;--section-dark-text:#f8f5ef;--section-dark-soft:#f8f5efa3;--on-dark-btn-bg:#f8f5ef;--on-dark-btn-text:#0a0f1c;--hero-glow-a:#ff3b300f;--hero-glow-b:#0a0f1c0a;--cta-glow-a:#ff3b3038;--focus-ring:#0a0f1c14;--error-text:#b91c1c;--error-bg:#fff0ef;--error-border:#ffd4d0;--success-text:#0e7a5a;--success-bg:#ecfdf5;--success-border:#a7f3d0;--font-display:"Instrument Serif", Georgia, serif;--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--text-xs:.72rem;--text-sm:.8125rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.28rem;--text-2xl:1.6rem;--text-3xl:2rem;--text-4xl:2.8rem;--text-5xl:3.8rem;--text-6xl:5rem;--text-7xl:6.5rem;--text-8xl:8.5rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--radius-xl:28px;--radius-pill:999px;--r-sm:var(--radius-sm);--r-md:var(--radius-md);--r-lg:var(--radius-xl);--r-full:var(--radius-pill);--shadow-sm:0 1px 2px #0a0f1c0f, 0 4px 16px #0a0f1c0f;--shadow-md:0 8px 30px #0a0f1c1a, 0 2px 8px #0a0f1c0f;--shadow-lg:0 20px 60px #0a0f1c24, 0 4px 16px #0a0f1c1a;--ease-out:cubic-bezier(.16,1,.3,1);--ease-out-expo:cubic-bezier(.16,1,.3,1);--ease-in-out:cubic-bezier(.65,0,.35,1);--ease-spring:cubic-bezier(.34,1.56,.64,1);--dur-1:.12s;--dur-2:.24s;--dur-3:.4s;--dur-4:.6s;--dur-5:.9s;--stagger:90ms;--header-h:64px;--content-max:1280px;--content-pad:clamp(16px, 4vw, 40px)}[data-theme=dark]{--paper:#070b14;--paper-2:#0c1120;--paper-3:#121828;--ink:#f8f5ef;--ink-2:#e9e4d8;--ink-3:#a6b0c3;--muted:#8b95ab;--muted-2:#5f6b85;--line:#f8f5ef17;--line-strong:#f8f5ef2b;--line-on-dark:#f8f5ef1a;--line-on-dark-strong:#f8f5ef2e;--accent:#0043e0;--accent-hover:#003bb8;--accent-soft:#0043e024;--accent-dark:#0a1030;--accent-text:#4d7fff;--accent-soft-text:#8fadff;--accent-mid:#36f;--accent-glow:#0043e061;--accent-underline:linear-gradient(90deg, #0043e061, #0043e01a);--success:#34d399;--card-bg:#0d1322;--card-dark-bg:#0a0f1c;--accent-card-bg:#f8f5ef;--accent-card-text:#070b14;--accent-card-soft:#070b14ad;--accent-card-chip:#070b140f;--accent-card-chip-line:#070b141f;--section-dark-bg:#04060c;--section-ink2-bg:#0a0f1c;--section-dark-text:#f8f5ef;--section-dark-soft:#f8f5efa3;--on-dark-btn-bg:#f8f5ef;--on-dark-btn-text:#0a0f1c;--hero-glow-a:#0043e01f;--hero-glow-b:#00000047;--cta-glow-a:#0043e047;--focus-ring:#0043e047;--error-text:#ff9b93;--error-bg:#2a100d;--error-border:#5c231d;--success-text:#4ade9c;--success-bg:#0a2118;--success-border:#1c4a37;--shadow-sm:0 1px 2px #00000073, 0 4px 16px #00000061;--shadow-md:0 8px 30px #00000080, 0 2px 8px #00000061;--shadow-lg:0 20px 60px #0009, 0 4px 16px #00000073}html{color-scheme:light}html[data-theme=dark]{color-scheme:dark}html.theming,html.theming *,html.theming :before,html.theming :after{transition:background-color .45s var(--ease-out), border-color .45s var(--ease-out), color .45s var(--ease-out), fill .45s var(--ease-out), stroke .45s var(--ease-out), box-shadow .45s var(--ease-out), outline-color .45s var(--ease-out)!important}@media (prefers-reduced-motion:reduce){html.theming,html.theming *,html.theming :before,html.theming :after{transition:none!important}}.display{font-family:var(--font-display);letter-spacing:-.03em;font-weight:400;line-height:.9}.sans{font-family:var(--font-sans);letter-spacing:-.02em}.mono{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase}.eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:500}.prose{color:var(--ink-3);font-size:clamp(1rem,1.6vw,1.125rem);line-height:1.7}.prose strong{color:var(--ink);font-weight:600}.shell{width:min(var(--content-max), 100% - var(--content-pad)*2);margin-inline:auto}.section{padding-block:clamp(48px,8vw,120px);position:relative}.section--tight{padding-block:clamp(32px,5vw,72px)}.section--dark{background:var(--section-dark-bg);color:var(--section-dark-text)}.section--ink2{background:var(--section-ink2-bg);color:var(--section-dark-text)}.grain{isolation:isolate;position:relative}.grain:before{content:"";pointer-events:none;z-index:-1;opacity:.045;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.95' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");position:absolute;inset:0}.section--dark.grain:before{mix-blend-mode:soft-light;opacity:.08}[data-theme=dark] .grain:before{mix-blend-mode:soft-light;opacity:.07}@media (prefers-reduced-motion:no-preference){.grain:before{animation:12s steps(6,end) infinite grainShift}@keyframes grainShift{0%,to{transform:translate(0)}20%{transform:translate(-2%,-1%)}40%{transform:translate(1%,2%)}60%{transform:translate(-1%,1.5%)}80%{transform:translate(2%,-1.5%)}}}.site-header{z-index:50;height:var(--header-h);background:color-mix(in srgb, var(--paper) 88%, transparent);backdrop-filter:blur(16px)saturate(1.2);border-bottom:1px solid var(--line);align-items:center;display:flex;position:sticky;top:0}.site-header--dark{background:color-mix(in srgb, var(--ink) 86%, transparent);border-bottom-color:var(--line-on-dark);color:var(--paper)}.header-inner{width:min(var(--content-max), 100% - var(--content-pad)*2);justify-content:space-between;align-items:center;gap:24px;margin-inline:auto;display:flex}.header-right{align-items:center;gap:14px;display:flex}.brand{letter-spacing:-.03em;align-items:center;gap:10px;font-size:1.25rem;font-weight:650;display:flex}.brand-mark{background:var(--ink);width:32px;height:32px;color:var(--paper);font-family:var(--font-display);border-radius:8px;place-items:center;font-size:1.05rem;line-height:1;display:grid}.site-header--dark .brand-mark{background:var(--paper);color:var(--ink)}.brand-logo{border-radius:6px;width:auto;height:34px;display:block}.brand-logo--dark,[data-theme=dark] .brand-logo--light{display:none}[data-theme=dark] .brand-logo--dark{display:block}.nav{align-items:center;gap:6px;display:flex}.nav a,.nav button{letter-spacing:-.01em;border-radius:var(--radius-pill);transition:background .2s var(--ease-out), color .2s var(--ease-out);color:inherit;cursor:pointer;background:0 0;border:0;padding:8px 12px;font-size:13.5px;font-weight:500}.nav a:hover{background:var(--line)}.site-header--dark .nav a:hover{background:var(--line-on-dark)}.nav .cta{background:var(--ink);color:var(--paper);margin-left:6px;padding:9px 16px}.site-header--dark .nav .cta{background:var(--paper);color:var(--ink)}.nav .cta:hover{background:var(--ink-2)}.site-header--dark .nav .cta:hover{background:var(--paper-2)}.menu-toggle{border:1px solid var(--line);background:var(--paper-3);border-radius:10px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:none}.site-header--dark .menu-toggle{border-color:var(--line-on-dark);background:#ffffff0f}.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{content:"";width:16px;height:1.5px;transition:transform .3s var(--ease-out), opacity .2s;background:currentColor;border-radius:999px;display:block;position:relative}.menu-toggle span:before{position:absolute;top:-5px}.menu-toggle span:after{position:absolute;top:5px}.menu-toggle[aria-expanded=true] span{background:0 0}.menu-toggle[aria-expanded=true] span:before{transform:translateY(5px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:after{transform:translateY(-5px)rotate(-45deg)}.mobile-panel{inset:var(--header-h) 0 auto 0;background:var(--paper);border-bottom:1px solid var(--line);padding:12px var(--content-pad) 20px;z-index:49;display:none;position:fixed}.mobile-panel.open{display:block}.mobile-panel a{border-bottom:1px solid var(--line);letter-spacing:-.02em;justify-content:space-between;align-items:center;padding:16px 4px;font-size:1.05rem;font-weight:550;display:flex}.mobile-panel a:last-child{border-bottom:0}@media (width<=860px){.nav{display:none}.menu-toggle{display:inline-flex}.header-right>.lang-switcher:not(.lang-switcher--mobile){display:none}}@media (width<=480px){.brand-domain{display:none}.header-inner{gap:12px}.header-right{gap:10px}}.site-footer{background:var(--section-dark-bg);color:var(--section-dark-text);border-top:1px solid var(--line-on-dark);padding-block:64px 32px}.footer-grid{grid-template-columns:1.2fr .8fr .8fr .8fr;gap:40px;display:grid}.footer-brand p{color:#f8f5efa3;max-width:36ch;margin-top:12px;font-size:14px;line-height:1.6}.footer-col h4{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:#f8f5ef70;margin-bottom:16px;font-size:11px}.footer-col a{color:#f8f5efd6;padding:6px 0;font-size:14px;transition:color .2s;display:block}.footer-col a:hover{color:var(--paper)}.footer-bottom{border-top:1px solid var(--line-on-dark);color:#f8f5ef75;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:48px;padding-top:20px;font-size:13px;display:flex}@media (width<=900px){.footer-grid{grid-template-columns:1fr 1fr}}@media (width<=520px){.footer-grid{grid-template-columns:1fr}}.btn{letter-spacing:-.01em;border-radius:var(--radius-pill);cursor:pointer;transition:transform .2s var(--ease-out), background .2s, color .2s, border-color .2s, box-shadow .2s;white-space:nowrap;user-select:none;isolation:isolate;border:1px solid #0000;justify-content:center;align-items:center;gap:10px;padding:14px 20px;font-size:14.5px;font-weight:600;line-height:1;display:inline-flex;position:relative;overflow:clip}.btn:after{content:"";transition:transform .6s var(--ease-out);pointer-events:none;opacity:0;background:linear-gradient(100deg,#0000 30%,#ffffff38 50%,#0000 70%);position:absolute;inset:0;transform:translate(-100%)}.btn:hover:after{opacity:1;transform:translate(100%)}.btn:active{transform:translateY(1px)scale(.98)}.btn:focus-visible{outline-offset:3px}.btn--primary{background:var(--accent);color:#fff;box-shadow:0 8px 20px var(--accent-glow)}.btn--primary:hover{background:var(--accent-hover);box-shadow:0 12px 28px var(--accent-glow);transform:translateY(-1px)}.btn--dark{background:var(--ink);color:var(--paper)}.btn--dark:hover{background:var(--ink-2);transform:translateY(-1px)}.btn--ghost{color:var(--ink);border-color:var(--line-strong);background:0 0}.btn--ghost:hover{background:var(--paper-2)}.section--dark .btn--ghost{color:var(--paper);border-color:var(--line-on-dark-strong)}.section--dark .btn--ghost:hover{background:#ffffff14}.btn--sm{padding:10px 14px;font-size:13px}.btn svg{width:16px;height:16px;transition:transform .25s var(--ease-out);flex:none}.btn:hover svg{transform:translate(2px)}.btn--magnetic{will-change:transform;transition:transform .15s linear,background .2s,box-shadow .2s}.btn--on-dark{background:var(--on-dark-btn-bg);color:var(--on-dark-btn-text);box-shadow:none}.btn--on-dark:hover{background:var(--on-dark-btn-bg);filter:brightness(.93);transform:translateY(-1px);box-shadow:0 10px 24px #00000040}.btn--ghost-on-dark{color:var(--section-dark-text);border-color:var(--line-on-dark-strong);background:0 0}.btn--ghost-on-dark:hover{background:#ffffff14}.form-status--error{color:var(--error-text);background:var(--error-bg);border-color:var(--error-border)}.form-status--success{color:var(--success-text);background:var(--success-bg);border-color:var(--success-border)}.theme-toggle{border:1px solid var(--line);background:var(--paper-2);cursor:pointer;width:40px;height:40px;transition:background .25s var(--ease-out), border-color .25s var(--ease-out), transform .15s var(--ease-out), box-shadow .25s var(--ease-out);border-radius:12px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative;overflow:clip}.theme-toggle:hover{background:var(--paper-3);border-color:var(--line-strong)}.theme-toggle:active{transform:scale(.9)}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}[data-theme=dark] .theme-toggle:hover{border-color:#0043e08c;box-shadow:0 0 0 3px #0043e02e}.theme-toggle .tt-icon{width:20px;height:20px;transition:transform .55s var(--ease-spring), opacity .28s var(--ease-out);position:absolute}.theme-toggle .tt-sun{opacity:1;transform:rotate(0)scale(1)}.theme-toggle .tt-moon{opacity:0;transform:rotate(-120deg)scale(.2)}[data-theme=dark] .theme-toggle .tt-sun{opacity:0;transform:rotate(120deg)scale(.2)}[data-theme=dark] .theme-toggle .tt-moon{opacity:1;transform:rotate(0)scale(1)}@media (prefers-reduced-motion:reduce){.theme-toggle .tt-icon{transition:opacity .15s}.theme-toggle .tt-sun,.theme-toggle .tt-moon,[data-theme=dark] .theme-toggle .tt-sun,[data-theme=dark] .theme-toggle .tt-moon{transform:none}}[data-reveal]{opacity:0;transition:opacity .7s var(--ease-out), transform .7s var(--ease-out);transition-delay:var(--d,0s);will-change:opacity, transform;transform:translateY(18px)}[data-reveal].is-visible{opacity:1;transform:none}[data-reveal=scale]{transform:translateY(12px)scale(.98)}[data-reveal=fade]{transform:none}.stagger>*,.stagger>:first-child{--d:0s}.stagger>:nth-child(2){--d:80ms}.stagger>:nth-child(3){--d:.16s}.stagger>:nth-child(4){--d:.24s}.stagger>:nth-child(5){--d:.32s}.stagger>:nth-child(6){--d:.4s}.parallax{will-change:transform;transition:transform .1s linear}.hover-lift{transition:transform .4s var(--ease-out), box-shadow .4s var(--ease-out)}.hover-lift:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.card{background:var(--paper-3);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:clip}.card--dark{background:var(--card-dark-bg);border-color:var(--line-on-dark);color:var(--section-dark-text)}.marquee{border-block:1px solid var(--line);background:var(--paper-3);padding-block:14px;overflow:clip}.marquee-track{will-change:transform;align-items:center;gap:32px;width:max-content;animation:28s linear infinite marquee;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}.marquee{position:relative}.marquee:before,.marquee:after{content:"";z-index:1;pointer-events:none;width:56px;position:absolute;top:0;bottom:0}.marquee:before{background:linear-gradient(90deg, var(--paper-3) 0%, transparent 100%);left:0}.marquee:after{background:linear-gradient(270deg, var(--paper-3) 0%, transparent 100%);right:0}@media (prefers-reduced-motion:reduce){.marquee:before,.marquee:after{display:none}}.marquee-item{font-family:var(--font-display);letter-spacing:-.02em;white-space:nowrap;color:var(--ink);align-items:center;gap:12px;font-size:1.35rem;display:inline-flex}.marquee-item i{background:var(--accent);border-radius:99px;width:6px;height:6px;display:inline-block}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.marquee-track{animation:none}[data-reveal]{opacity:1;transition:none;transform:none}}@media (hover:none){.marquee-track{animation-duration:36s}}.ratio{position:relative;overflow:clip}.ratio>*{position:absolute;inset:0}.divider{background:var(--line);height:1px}.skip-link{background:var(--ink);color:var(--paper);z-index:100;border-radius:8px;padding:8px 12px;position:absolute;top:8px;left:-9999px}.skip-link:focus{left:12px}.cluster{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.stack>*+*{margin-top:var(--gap,16px)}.grid{gap:var(--gap,24px);display:grid}.center{place-items:center;display:grid}.upper{text-transform:uppercase;letter-spacing:.08em}.muted{color:var(--muted)}.accent{color:var(--accent)}.measure{max-width:62ch}@media (width<=700px){:root{--content-pad:16px}}
