:root{--space-950: #03050b;--space-900: #05070e;--space-800: #080c17;--space-700: #0c1322;--space-600: #121b2e;--ink: #e8eefb;--ink-soft: #aeb9cd;--ink-dim: #6d7c95;--cyan: #5eead4;--sky: #38bdf8;--violet: #8b7bf7;--accent: var(--cyan);--grad-aurora: linear-gradient(120deg, #5eead4 0%, #38bdf8 50%, #8b7bf7 100%);--grad-edge: linear-gradient(135deg, rgba(94, 234, 212, .9), rgba(56, 189, 248, .9));--line: rgba(122, 162, 224, .14);--line-strong: rgba(122, 162, 224, .28);--glass: rgba(255, 255, 255, .024);--glass-2: rgba(255, 255, 255, .045);--glow-cyan: 0 0 0 1px rgba(94, 234, 212, .18), 0 18px 60px -18px rgba(56, 189, 248, .45);--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", "JetBrains Mono", "Fira Code", "Cascadia Code", Menlo, Consolas, monospace;--fs-eyebrow: clamp(.72rem, .68rem + .2vw, .8rem);--fs-body: clamp(1rem, .96rem + .25vw, 1.075rem);--fs-lead: clamp(1.1rem, 1rem + .6vw, 1.35rem);--fs-h3: clamp(1.25rem, 1.1rem + .7vw, 1.6rem);--fs-h2: clamp(1.9rem, 1.4rem + 2.2vw, 3rem);--fs-display: clamp(2.7rem, 1.6rem + 5.4vw, 6rem);--container: 1140px;--gutter: clamp(1.15rem, 5vw, 2.5rem);--section-y: clamp(4.5rem, 9vw, 8.5rem);--radius: 18px;--radius-lg: 26px;--ease: cubic-bezier(.22, 1, .36, 1);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font-sans);font-size:var(--fs-body);line-height:1.65;color:var(--ink-soft);background:var(--space-900);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;position:relative}img,picture,svg,canvas{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--sky);outline-offset:3px;border-radius:4px}.bg-stage{position:fixed;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(120% 90% at 78% -10%,rgba(56,189,248,.16),transparent 55%),radial-gradient(90% 80% at 8% 12%,rgba(139,123,247,.13),transparent 55%),radial-gradient(120% 120% at 50% 110%,rgba(94,234,212,.1),transparent 60%),var(--space-900)}#starfield{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:0;transition:opacity 1.2s ease}#starfield.ready{opacity:1}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:var(--section-y);position:relative}.section--tight{padding-block:clamp(3rem,6vw,5rem)}.eyebrow{font-family:var(--font-mono);font-size:var(--fs-eyebrow);letter-spacing:.32em;text-transform:uppercase;color:var(--cyan);display:inline-flex;align-items:center;gap:.7em}.eyebrow:before{content:"";width:1.6rem;height:1px;background:var(--grad-edge)}h1,h2,h3,h4{color:var(--ink);line-height:1.08;font-weight:600;letter-spacing:-.02em}.h2{font-size:var(--fs-h2)}.h3{font-size:var(--fs-h3);letter-spacing:-.015em}.lead{font-size:var(--fs-lead);color:var(--ink-soft);line-height:1.55}.gradient-text{background:var(--grad-aurora);-webkit-background-clip:text;background-clip:text;color:transparent}.section-head{max-width:60ch;margin-bottom:clamp(2.2rem,5vw,3.5rem)}.section-head .h2{margin-top:.7rem}.btn{display:inline-flex;align-items:center;gap:.6em;padding:.82em 1.4em;border-radius:999px;font-weight:550;font-size:.96rem;border:1px solid transparent;transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s var(--ease),border-color .3s var(--ease);will-change:transform}.btn svg{width:1.05em;height:1.05em}.btn--primary{background:var(--grad-edge);color:#04111a;box-shadow:0 12px 38px -14px #38bdf8b3}.btn--primary:hover{transform:translateY(-2px);box-shadow:0 18px 48px -14px #38bdf8d9}.btn--ghost{background:var(--glass);border-color:var(--line-strong);color:var(--ink);backdrop-filter:blur(8px)}.btn--ghost:hover{border-color:var(--cyan);transform:translateY(-2px);background:var(--glass-2)}.card{position:relative;background:var(--glass);border:1px solid var(--line);border-radius:var(--radius);backdrop-filter:blur(10px);transition:border-color .4s var(--ease),transform .4s var(--ease),background .4s var(--ease)}.card:hover{border-color:var(--line-strong)}.card--edge:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:var(--grad-edge);opacity:.6;border-radius:var(--radius) var(--radius) 0 0}.chip{display:inline-flex;align-items:center;padding:.42em .85em;border-radius:999px;font-size:.84rem;color:var(--ink-soft);background:var(--glass);border:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.01em;transition:color .3s var(--ease),border-color .3s var(--ease),background .3s var(--ease)}.chip:hover{color:var(--ink);border-color:var(--cyan);background:var(--glass-2)}[data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform .9s var(--ease);will-change:opacity,transform}[data-reveal].is-in{opacity:1;transform:none}[data-reveal-delay]{transition-delay:var(--d, 0ms)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}[data-reveal]{opacity:1!important;transform:none!important}#starfield{display:none}}::selection{background:#38bdf852;color:#fff}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--space-950)}::-webkit-scrollbar-thumb{background:#1b2740;border-radius:999px;border:2px solid var(--space-950)}::-webkit-scrollbar-thumb:hover{background:#25344f}.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}.mono{font-family:var(--font-mono)}.text-dim{color:var(--ink-dim)}.nav__link.is-active{color:var(--cyan);background:var(--glass-2)}.skip-link:focus{position:fixed;top:1rem;left:1rem;z-index:200;width:auto;height:auto;clip:auto;margin:0;padding:.7rem 1.1rem;border-radius:12px;background:var(--space-700);border:1px solid var(--cyan);color:var(--ink)}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-smooth iframe{pointer-events:none}.cc[data-astro-cid-garwan2p]{position:fixed;z-index:200;left:50%;bottom:1.2rem;transform:translate(-50%);width:min(92vw,560px);display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.2rem;padding:1rem 1.2rem;background:#080c17f0;backdrop-filter:blur(14px) saturate(140%);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:0 22px 60px -22px #000000bf}.cc[data-astro-cid-garwan2p][hidden]{display:none}.cc__text[data-astro-cid-garwan2p]{flex:1 1 240px;margin:0;font-size:.85rem;line-height:1.5;color:var(--ink-soft)}.cc__actions[data-astro-cid-garwan2p]{display:flex;gap:.6rem;margin-left:auto}.cc__btn[data-astro-cid-garwan2p]{padding:.5em 1.15em;font-size:.85rem}@media(max-width:480px){.cc[data-astro-cid-garwan2p]{flex-direction:column;align-items:stretch;text-align:left}.cc__actions[data-astro-cid-garwan2p]{margin-left:0}.cc__btn[data-astro-cid-garwan2p]{flex:1}}.footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--line);padding-block:2.6rem}.footer__inner[data-astro-cid-sz7xmlte]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.2rem 2rem}.footer__tag[data-astro-cid-sz7xmlte]{font-size:.85rem;margin-top:.25rem}.footer__nav[data-astro-cid-sz7xmlte]{display:flex;flex-wrap:wrap;gap:1.2rem}.footer__nav[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{font-size:.9rem;color:var(--ink-soft);transition:color .25s var(--ease)}.footer__nav[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--cyan)}.footer__copy[data-astro-cid-sz7xmlte]{font-size:.78rem;width:100%;padding-top:1.4rem;border-top:1px solid var(--line)}.footer__cookies[data-astro-cid-sz7xmlte]{font:inherit;color:var(--ink-soft);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.footer__cookies[data-astro-cid-sz7xmlte]:hover{color:var(--cyan)}
