:root{--color-primary: oklch(.46 .063 200);--color-primary-soft: oklch(.7 .085 192);--color-primary-deep: oklch(.36 .058 200);--color-secondary: oklch(.78 .13 178);--color-accent: oklch(.92 .2 108);--color-copper: oklch(.62 .12 52);--color-surface: oklch(.965 .014 78);--color-surface-muted: oklch(.95 .016 78);--color-surface-deep: oklch(.935 .018 78);--color-ink: oklch(.21 .028 200);--color-ink-soft: oklch(.28 .032 200);--color-ink-muted: oklch(.46 .022 200);--color-ink-faint: oklch(.5 .018 200);--color-ink-inverse: oklch(.975 .008 78);--color-border: oklch(.88 .008 250);--color-border-strong: oklch(.78 .012 250);--color-success: oklch(.65 .15 152);--color-warning: oklch(.78 .16 78);--color-danger: oklch(.6 .2 28);--font-sans: "Helvetica Neue", Helvetica, Arial, "DM Sans", system-ui, sans-serif;--font-serif: ui-serif, Georgia, Cambria, "Times New Roman", serif;--font-mono: ui-monospace, "SF Mono", Menlo, Monaco, Consolas, monospace;--font-body: var(--font-sans);--font-display: var(--font-sans);--text-xs: clamp(.75rem, .73rem + .06vw, .8125rem);--text-sm: clamp(.875rem, .85rem + .08vw, .9375rem);--text-base: clamp(.95rem, .9rem + .2vw, 1.05rem);--text-lg: clamp(1.125rem, 1.07rem + .18vw, 1.1875rem);--text-xl: clamp(1.25rem, 1.17rem + .27vw, 1.375rem);--text-2xl: clamp(1.5rem, 1.36rem + .5vw, 1.75rem);--text-3xl: clamp(1.875rem, 1.65rem + .81vw, 2.25rem);--text-4xl: clamp(2.25rem, 1.91rem + 1.21vw, 3rem);--text-5xl: clamp(3rem, 2.41rem + 2.14vw, 4rem);--leading-tight: 1.15;--leading-snug: 1.3;--leading-normal: 1.55;--leading-relaxed: 1.7;--tracking-tight: -.02em;--tracking-normal: 0;--tracking-wide: .04em;--tracking-widest: .16em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 999px;--motion-fast: .15s;--motion-base: .25s;--motion-slow: .4s;--motion-ease-out: cubic-bezier(.2, .8, .2, 1);--motion-ease-in-out: cubic-bezier(.65, 0, .35, 1);--motion-ease-spring: cubic-bezier(.16, 1, .3, 1);--content-max: 72rem;--content-narrow: 42rem;--content-wide: 90rem;--space-chapter-y: clamp(3rem, 1.5rem + 2vw, 4.5rem);color-scheme:light}*,*:before,*:after{box-sizing:border-box}html{background:var(--color-surface);color:var(--color-ink);font-family:var(--font-body);font-size:100%;line-height:var(--leading-normal);scroll-behavior:smooth;scroll-padding-top:5rem;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{margin:0;font-size:var(--text-base);font-weight:380;font-feature-settings:"ss01";overflow-x:clip}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);margin:0}p{margin:0}img{display:block;max-width:100%;height:auto}a{color:inherit}::selection{background:var(--color-primary);color:var(--color-ink-inverse)}:focus-visible{outline:2px solid var(--color-primary-soft);outline-offset:3px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.site-header.svelte-oiwvqb{position:fixed;top:0;left:0;right:0;z-index:50;padding-block:clamp(1rem,.7rem + 1vw,1.5rem);background:var(--color-ink);color:var(--color-ink-inverse);border-bottom:1px solid transparent;transition:background var(--motion-slow) var(--motion-ease-out),backdrop-filter var(--motion-slow) var(--motion-ease-out),-webkit-backdrop-filter var(--motion-slow) var(--motion-ease-out),border-color var(--motion-slow) var(--motion-ease-out),padding var(--motion-slow) var(--motion-ease-out)}.header-inner.svelte-oiwvqb{max-width:var(--content-wide);margin:0 auto;padding:0 clamp(1.5rem,.8rem + 3vw,3.5rem);display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"brand nav hamburger";gap:var(--space-6);align-items:center}.brand.svelte-oiwvqb{grid-area:brand}.desktop-nav.svelte-oiwvqb{grid-area:nav}.hamburger.svelte-oiwvqb{grid-area:hamburger}@media(min-width:110rem){.header-inner.svelte-oiwvqb{grid-template-columns:1fr auto;grid-template-areas:"nav hamburger";gap:var(--space-8)}}.site-header.scrolled.svelte-oiwvqb{background:var(--color-ink);border-bottom-color:color-mix(in oklch,var(--color-ink-inverse),transparent 88%);padding-block:clamp(.6rem,.4rem + .6vw,.95rem)}.brand.svelte-oiwvqb{display:inline-flex;align-items:center;text-decoration:none}@media(min-width:110rem){.brand.svelte-oiwvqb{position:absolute;top:50%;inset-inline-start:clamp(1.5rem,.8rem + 3vw,3.5rem);transform:translateY(-50%);z-index:1}}.brand-logo.svelte-oiwvqb{display:block;height:clamp(2rem,1.6rem + .6vw,2.5rem);width:auto;filter:brightness(0) invert(1);opacity:.95;transition:opacity var(--motion-base) var(--motion-ease-out)}.brand.svelte-oiwvqb:hover .brand-logo:where(.svelte-oiwvqb){opacity:1}.desktop-nav.svelte-oiwvqb{display:none;justify-self:start}.desktop-nav.svelte-oiwvqb ul:where(.svelte-oiwvqb){list-style:none;margin:0;padding:0;display:flex;gap:var(--space-6)}.desktop-nav.svelte-oiwvqb a:where(.svelte-oiwvqb){font-size:var(--text-sm);color:color-mix(in oklch,var(--color-ink-inverse),transparent 15%);text-decoration:none;padding-block:var(--space-2);position:relative;transition:color var(--motion-base) var(--motion-ease-out)}.desktop-nav.svelte-oiwvqb a:where(.svelte-oiwvqb):after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--color-accent);transition:right var(--motion-slow) var(--motion-ease-spring)}.desktop-nav.svelte-oiwvqb a:where(.svelte-oiwvqb):hover{color:var(--color-ink-inverse)}.desktop-nav.svelte-oiwvqb a:where(.svelte-oiwvqb):hover:after{right:0}@media(min-width:960px){.desktop-nav.svelte-oiwvqb{display:block}}.hamburger.svelte-oiwvqb{display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;background:none;border:none;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent}@media(min-width:960px){.hamburger.svelte-oiwvqb{display:none}}.line.svelte-oiwvqb{display:block;width:22px;height:2px;background:var(--color-ink-inverse);border-radius:1px;transition:transform var(--motion-base) var(--motion-ease-out),opacity var(--motion-fast) var(--motion-ease-out)}.hamburger.active.svelte-oiwvqb .line-1:where(.svelte-oiwvqb){transform:translateY(8px) rotate(45deg)}.hamburger.active.svelte-oiwvqb .line-2:where(.svelte-oiwvqb){opacity:0}.hamburger.active.svelte-oiwvqb .line-3:where(.svelte-oiwvqb){transform:translateY(-8px) rotate(-45deg)}.menu-overlay.svelte-oiwvqb{position:fixed;inset:0;z-index:40;background:var(--color-ink);color:var(--color-ink-inverse);opacity:0;visibility:hidden;transform:translateY(-12px);transition:opacity var(--motion-base) var(--motion-ease-out),transform var(--motion-base) var(--motion-ease-out),visibility 0s var(--motion-base);overflow-y:auto;overscroll-behavior:contain;padding:var(--space-20) var(--space-6) var(--space-12)}.menu-overlay.menu-open.svelte-oiwvqb{opacity:1;visibility:visible;transform:translateY(0);transition:opacity var(--motion-base) var(--motion-ease-out),transform var(--motion-base) var(--motion-ease-out),visibility 0s}@media(min-width:960px){.menu-overlay.svelte-oiwvqb{display:none}}.menu-overlay.svelte-oiwvqb nav:where(.svelte-oiwvqb) ul:where(.svelte-oiwvqb){list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.menu-overlay.svelte-oiwvqb nav:where(.svelte-oiwvqb) a:where(.svelte-oiwvqb){display:block;padding:var(--space-3) 0;font-size:var(--text-xl);color:var(--color-ink-inverse);text-decoration:none;min-height:44px}.menu-overlay.svelte-oiwvqb nav:where(.svelte-oiwvqb) a:where(.svelte-oiwvqb):hover{color:var(--color-accent)}.site-footer.svelte-1sr6y3t{background:var(--color-ink);color:color-mix(in oklch,var(--color-ink-inverse),transparent 25%);border-top:none;padding:clamp(4rem,3rem + 4vw,7rem) 0 clamp(1.5rem,1rem + 1vw,2.5rem);margin-block-start:0}.footer-top.svelte-1sr6y3t{max-width:var(--content-wide);margin:0 auto var(--space-12);padding:0 clamp(1.5rem,.8rem + 3vw,3.5rem);display:flex;flex-direction:column;gap:var(--space-10)}@media(min-width:720px){.footer-top.svelte-1sr6y3t{flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:var(--space-10) var(--space-16)}}.footer-brand.svelte-1sr6y3t{display:grid;gap:var(--space-4);align-content:start}.brand.svelte-1sr6y3t{display:inline-flex;align-items:center;text-decoration:none}.brand-logo.svelte-1sr6y3t{display:block;height:clamp(2.25rem,1.7rem + 1vw,3rem);width:auto;filter:brightness(0) invert(1);opacity:.95;transition:opacity var(--motion-base) var(--motion-ease-out)}.brand.svelte-1sr6y3t:hover .brand-logo:where(.svelte-1sr6y3t){opacity:1}.brand-tagline.svelte-1sr6y3t{margin:0;font-size:var(--text-base);color:color-mix(in oklch,var(--color-ink-inverse),transparent 40%);max-width:28rem}.footer-cols.svelte-1sr6y3t{display:flex;flex-wrap:wrap;gap:var(--space-6) var(--space-10);align-content:start;justify-content:flex-start}@media(min-width:720px){.footer-cols.svelte-1sr6y3t{justify-content:flex-end}}.footer-col.svelte-1sr6y3t{display:grid;gap:var(--space-3);align-content:start;flex:0 0 auto;min-width:clamp(8rem,6rem + 6vw,12rem)}.footer-col.svelte-1sr6y3t .footer-heading:where(.svelte-1sr6y3t){font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-primary-soft);margin:0}.footer-col.svelte-1sr6y3t ul:where(.svelte-1sr6y3t){list-style:none;padding:0;margin:0;display:grid;gap:var(--space-2)}.footer-col.svelte-1sr6y3t a:where(.svelte-1sr6y3t){font-size:var(--text-sm);color:color-mix(in oklch,var(--color-ink-inverse),transparent 30%);text-decoration:none;display:inline-block;padding-block:2px;position:relative;transition:color var(--motion-base) var(--motion-ease-out)}.footer-col.svelte-1sr6y3t a:where(.svelte-1sr6y3t):after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--color-accent);transition:right var(--motion-slow) var(--motion-ease-spring)}.footer-col.svelte-1sr6y3t a:where(.svelte-1sr6y3t):hover{color:var(--color-ink-inverse)}.footer-col.svelte-1sr6y3t a:where(.svelte-1sr6y3t):hover:after{right:0}.footer-bottom.svelte-1sr6y3t{max-width:var(--content-wide);margin:0 auto;padding:var(--space-6) var(--space-6) 0;border-top:1px solid color-mix(in oklch,var(--color-ink-inverse),transparent 88%);display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between;align-items:center}.legal.svelte-1sr6y3t{margin:0;display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;font-size:var(--text-xs);color:color-mix(in oklch,var(--color-ink-inverse),transparent 50%)}.dot.svelte-1sr6y3t{opacity:.5}.bottom-meta.svelte-1sr6y3t{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.socials.svelte-1sr6y3t{list-style:none;padding:0;margin:0;display:flex;gap:var(--space-3)}.socials.svelte-1sr6y3t a:where(.svelte-1sr6y3t){display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;color:color-mix(in oklch,var(--color-ink-inverse),transparent 30%);border-radius:var(--radius-full);transition:color var(--motion-base) var(--motion-ease-out),background var(--motion-base) var(--motion-ease-out)}.socials.svelte-1sr6y3t a:where(.svelte-1sr6y3t):hover{color:var(--color-ink-inverse);background:color-mix(in oklch,var(--color-ink-inverse),transparent 90%)}.privacy-link.svelte-1sr6y3t{font-size:var(--text-xs);color:color-mix(in oklch,var(--color-ink-inverse),transparent 50%);text-decoration:underline;text-underline-offset:3px}.privacy-link.svelte-1sr6y3t:hover{color:var(--color-ink-inverse)}.footer-stub.svelte-1sr6y3t{max-width:var(--content-wide);margin:0 auto;padding:0 var(--space-6);font-size:var(--text-sm);font-weight:600;color:color-mix(in oklch,var(--color-ink-inverse),transparent 30%)}.faq-launcher.svelte-yeox72{position:fixed;inset-block-end:var(--space-6);inset-inline-end:var(--space-6);z-index:80;display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:var(--radius-full);border:none;background:var(--color-primary);color:var(--color-ink-inverse);cursor:pointer;box-shadow:0 12px 32px #0000002e;transition:transform var(--motion-base) var(--motion-ease-out),background var(--motion-base) var(--motion-ease-out)}.faq-launcher.svelte-yeox72:hover{transform:translateY(-2px);background:var(--color-primary-deep)}.faq-launcher.open.svelte-yeox72{background:var(--color-primary-deep)}.faq-panel.svelte-yeox72{position:fixed;inset-block-end:calc(var(--space-6) + 64px);inset-inline-end:var(--space-6);z-index:80;display:flex;flex-direction:column;width:min(22rem,calc(100vw - var(--space-12)));max-height:min(34rem,calc(100vh - 8rem));background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:0 24px 48px #0000002e;overflow:hidden;animation:svelte-yeox72-panel-in var(--motion-base) var(--motion-ease-out)}@keyframes svelte-yeox72-panel-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.faq-header.svelte-yeox72{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3);background:var(--color-primary);color:var(--color-ink-inverse)}.faq-title.svelte-yeox72{margin:0;font-size:var(--text-sm);font-weight:600}.faq-sub.svelte-yeox72{margin:0;font-size:var(--text-xs);opacity:.85}.faq-close.svelte-yeox72{background:transparent;border:none;color:inherit;padding:var(--space-1);cursor:pointer;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;transition:background var(--motion-fast) var(--motion-ease-out)}.faq-close.svelte-yeox72:hover{background:#ffffff26}.faq-list.svelte-yeox72{flex:1;overflow-y:auto;padding:var(--space-4);display:grid;gap:var(--space-3);font-size:var(--text-sm);line-height:var(--leading-snug);background:var(--color-surface)}.faq-empty.svelte-yeox72{margin:0;color:var(--color-ink-muted);font-size:var(--text-sm)}.faq-msg.svelte-yeox72{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface-muted);color:var(--color-ink);max-width:85%}.faq-msg.svelte-yeox72 p:where(.svelte-yeox72){margin:0;white-space:pre-wrap;word-break:break-word}.faq-msg.user.svelte-yeox72{justify-self:end;background:var(--color-primary);color:var(--color-ink-inverse)}.faq-msg.failed.svelte-yeox72{background:color-mix(in oklch,var(--color-danger),white 80%);color:var(--color-ink)}.faq-msg.svelte-yeox72 .md:where(.svelte-yeox72) p{margin:0;white-space:pre-wrap;word-break:break-word}.faq-msg.svelte-yeox72 .md:where(.svelte-yeox72) p+p{margin-top:var(--space-2)}.faq-msg.svelte-yeox72 .md:where(.svelte-yeox72) a{color:var(--color-primary);text-decoration:underline;text-underline-offset:3px;word-break:break-word}.faq-msg.svelte-yeox72 .md:where(.svelte-yeox72) a:hover{color:var(--color-primary-deep)}.faq-msg.svelte-yeox72 .md:where(.svelte-yeox72) ul,.faq-msg.svelte-yeox72 .md:where(.svelte-yeox72) ol{margin:var(--space-2) 0;padding-inline-start:1.25rem;display:grid;gap:var(--space-1)}.faq-msg.svelte-yeox72 .md:where(.svelte-yeox72) li{margin:0}.faq-msg.svelte-yeox72 .md:where(.svelte-yeox72) code{font-family:var(--font-mono);font-size:.9em;padding:.1em .3em;background:#0000000f;border-radius:var(--radius-sm)}.faq-msg.svelte-yeox72 .md:where(.svelte-yeox72) strong{font-weight:600}.faq-msg.svelte-yeox72 .md:where(.svelte-yeox72) em{font-style:italic}.typing.svelte-yeox72{display:inline-flex;align-items:center;gap:.3rem;padding-block:.2rem}.typing.svelte-yeox72 span:where(.svelte-yeox72){width:.45rem;height:.45rem;border-radius:var(--radius-full);background:var(--color-ink-faint);animation:svelte-yeox72-typing-bounce 1.2s var(--motion-ease-in-out) infinite}.typing.svelte-yeox72 span:where(.svelte-yeox72):nth-child(2){animation-delay:.15s}.typing.svelte-yeox72 span:where(.svelte-yeox72):nth-child(3){animation-delay:.3s}@keyframes svelte-yeox72-typing-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-.3rem);opacity:1}}@media(prefers-reduced-motion:reduce){.typing.svelte-yeox72 span:where(.svelte-yeox72){animation:svelte-yeox72-typing-pulse 1.6s var(--motion-ease-in-out) infinite;transform:none}@keyframes svelte-yeox72-typing-pulse{0%,to{opacity:.4}50%{opacity:1}}}.faq-input.svelte-yeox72{display:flex;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);background:var(--color-surface)}.faq-input.svelte-yeox72 input:where(.svelte-yeox72){flex:1;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font:inherit;color:var(--color-ink);background:var(--color-surface);transition:border-color var(--motion-fast) var(--motion-ease-out)}.faq-input.svelte-yeox72 input:where(.svelte-yeox72):focus-visible{outline:none;border-color:var(--color-primary)}.faq-input.svelte-yeox72 button:where(.svelte-yeox72){display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-ink-inverse);cursor:pointer;transition:background var(--motion-fast) var(--motion-ease-out)}.faq-input.svelte-yeox72 button:where(.svelte-yeox72):hover:not(:disabled){background:var(--color-primary-deep)}.faq-input.svelte-yeox72 button:where(.svelte-yeox72):disabled{opacity:.5;cursor:not-allowed}@media(prefers-reduced-motion:reduce){.faq-launcher.svelte-yeox72,.faq-input.svelte-yeox72 button:where(.svelte-yeox72),.faq-input.svelte-yeox72 input:where(.svelte-yeox72){transition:none}.faq-panel.svelte-yeox72{animation:none}}.edit-mode-banner[data-astro-cid-sckkx6r4]{background:#fef08a;padding:.5rem 1rem;margin:0;font-family:system-ui,sans-serif;font-size:.875rem}.skip-link[data-astro-cid-sckkx6r4]{position:absolute;inset-inline-start:.5rem;inset-block-start:.5rem;transform:translateY(-200%);background:#000;color:#fff;padding:.5rem .75rem;border-radius:.25rem;text-decoration:none;font-family:system-ui,sans-serif;font-size:.875rem;z-index:100;transition:transform .15s ease-out}.skip-link[data-astro-cid-sckkx6r4]:focus-visible{transform:translateY(0)}
