:root,html[data-theme=dark]{color-scheme:dark;--brand:#4de450;--brand-hover:#56d858;--brand-dim:#4de45029;--brand-glow:#4de45059;--brand-ink:#010101;--bg:#020607;--bg-elevated:#0a1c0e;--surface:#121212;--surface-2:#17181b;--surface-3:#151515;--surface-4:#0c0c0c;--line:#4de45024;--line-soft:#ffffff0f;--line-strong:#ffffff14;--line-ghost:#ffffff2e;--text:#fff;--muted:#7c7c7c;--muted-2:#a0a0a0;--nav-link:#ffffffc7;--header-bg:#020607f0;--promo-bg:#010101;--section-alt:#010101;--danger:#e54b4b;--select-bg:#ffffff0f;--select-border:#ffffff1f;--theme-toggle-bg:#ffffff0f;--toast-bg:#080e0af0;--theme-color:#020607;--font:"Sora", system-ui, sans-serif;--font-display:"Instrument Serif", Georgia, serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--radius:8px;--radius-pill:999px;--max:1240px;--header-h:64px;--gutter:16px}html[data-theme=light]{color-scheme:light;--brand:#1a9e3f;--brand-hover:#158a36;--brand-dim:#1a9e3f1f;--brand-glow:#1a9e3f38;--brand-ink:#fff;--bg:#f3f6f3;--bg-elevated:#fff;--surface:#fff;--surface-2:#e8eee9;--surface-3:#fff;--surface-4:#eef3ef;--line:#1a9e3f38;--line-soft:#0c141014;--line-strong:#0c14101a;--line-ghost:#0c141029;--text:#0c1410;--muted:#5a6a60;--muted-2:#3d4d44;--nav-link:#0c1410b8;--header-bg:#f3f6f3eb;--promo-bg:#0d1a12;--section-alt:#e8eee9;--danger:#c62828;--select-bg:#0c14100a;--select-border:#0c141024;--theme-toggle-bg:#0c14100d;--toast-bg:#fffffff5;--theme-color:#f3f6f3}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;line-height:1.55;transition:background .2s,color .2s}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,.btn{font:inherit;cursor:pointer}.container{width:min(100% - (var(--gutter) * 2), var(--max));margin-inline:auto}@media (width>=768px){:root{--gutter:32px}}@media (width>=1024px){:root{--gutter:70px}}.btn{border-radius:var(--radius);letter-spacing:.01em;border:1px solid #0000;justify-content:center;align-items:center;gap:.45rem;padding:.95rem 1.6rem;font-size:.95rem;font-weight:700;transition:transform .18s,background .18s,box-shadow .18s,border-color .18s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--brand);color:var(--brand-ink);box-shadow:0 0 24px var(--brand-glow)}.btn-primary:hover{background:var(--brand-hover)}.btn-ghost{border-color:var(--line-ghost);color:var(--text);background:0 0}.btn-ghost:hover{border-color:var(--brand);background:var(--brand-dim)}.section{padding:5rem 0}@media (width>=768px){.section{padding:6.25rem 0}}.section-head{text-align:center;max-width:44rem;margin:0 auto 3rem}.section-head h2{font-family:var(--font-display);letter-spacing:-.015em;text-transform:none;margin:0 0 1rem;font-size:clamp(2rem,4.2vw,3.1rem);font-style:italic;font-weight:400;line-height:1.2}.section-head h2 .hl{color:var(--brand)}.section-head p{color:var(--muted-2);margin:0;font-size:1.02rem}.hl{color:var(--brand)}.js-reveal-ready .reveal{opacity:0;transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0s);will-change:opacity, transform;transform:translateY(22px)}.js-reveal-ready .reveal.is-in{opacity:1;will-change:auto;transform:translate(0,0)}.reveal-d1{--reveal-delay:90ms}.reveal-d2{--reveal-delay:.17s}.reveal-d3{--reveal-delay:.25s}.reveal-d4{--reveal-delay:.33s}.reveal-stagger>.reveal:first-child{--reveal-delay:0s}.reveal-stagger>.reveal:nth-child(2){--reveal-delay:70ms}.reveal-stagger>.reveal:nth-child(3){--reveal-delay:.14s}.reveal-stagger>.reveal:nth-child(4){--reveal-delay:.21s}.reveal-stagger>.reveal:nth-child(5){--reveal-delay:.28s}.reveal-stagger>.reveal:nth-child(6){--reveal-delay:.35s}.js-reveal-ready .hero:not(.is-in) *,.js-reveal-ready .hero:not(.is-in) :before,.js-reveal-ready .hero:not(.is-in) :after,.js-reveal-ready section.section:not(.is-in) *,.js-reveal-ready section.section:not(.is-in) :before,.js-reveal-ready section.section:not(.is-in) :after,.js-reveal-ready .cta-band:not(.is-in) *,.js-reveal-ready .cta-band:not(.is-in) :before,.js-reveal-ready .cta-band:not(.is-in) :after{animation-play-state:paused!important}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.js-reveal-ready .reveal{opacity:1;transform:none}}
