@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Montserrat-400.woff2)format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/Montserrat-500.woff2)format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/Montserrat-600.woff2)format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/Montserrat-700.woff2)format("woff2")}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/HankenGrotesk-Variable.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/JetBrainsMono-Regular.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/JetBrainsMono-Medium.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/JetBrainsMono-SemiBold.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/JetBrainsMono-Bold.woff2)format("woff2")}:root{--vp-green:#88c351;--vp-graphite:#54595f;--vp-ink:#4b4b4b;--vp-purple:#7250c8;--vp-cyan:#1189b8;--vp-olive:#8fa781;--vp-navy:#405ea1;--vp-red:#b93a26;--vp-teal:#23778c;--vp-white:#fff;--vp-green-50:#f2f9ea;--vp-green-100:#e0f1cc;--vp-green-200:#c6e6a2;--vp-green-300:#add978;--vp-green-400:#98cd5f;--vp-green-500:#88c351;--vp-green-600:#6fa73e;--vp-green-700:#56862f;--vp-green-800:#3f6622;--vp-green-900:#294418;--vp-gray-0:#fff;--vp-gray-50:#f7f8f9;--vp-gray-100:#eef0f2;--vp-gray-200:#dde1e5;--vp-gray-300:#c2c8ce;--vp-gray-400:#9aa1a8;--vp-gray-500:#74797f;--vp-gray-600:#54595f;--vp-gray-700:#4b4b4b;--vp-gray-800:#33373b;--vp-gray-900:#1e2024;--vp-black:#101214;--bg:var(--vp-white);--bg-muted:var(--vp-gray-50);--bg-subtle:var(--vp-gray-100);--bg-inverse:var(--vp-gray-900);--surface:var(--vp-white);--surface-2:var(--vp-gray-50);--surface-3:var(--vp-gray-100);--fg:var(--vp-gray-700);--fg-strong:var(--vp-gray-900);--fg-muted:var(--vp-gray-500);--fg-subtle:var(--vp-gray-400);--fg-inverse:var(--vp-white);--border:var(--vp-gray-200);--border-strong:var(--vp-gray-300);--primary:var(--vp-green-500);--primary-hover:var(--vp-green-600);--primary-active:var(--vp-green-700);--primary-soft:var(--vp-green-50);--on-primary:var(--vp-white);--accent:var(--vp-purple);--info:var(--vp-cyan);--enterprise:var(--vp-navy);--modules:var(--vp-teal);--warning:#e2a53a;--danger:var(--vp-red);--success:var(--vp-green-600);--info-soft:#e2f1f8;--danger-soft:#fbe6e1;--warning-soft:#fbf1de;--accent-soft:#ece6fa;--font-display:"Montserrat", "Helvetica Neue", Arial, system-ui, sans-serif;--font-sans:"Hanken Grotesk", "Montserrat", "Helvetica Neue", Arial, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fs-xs:12px;--fs-sm:14px;--fs-base:16px;--fs-md:18px;--fs-lg:20px;--fs-xl:24px;--fs-2xl:30px;--fs-3xl:36px;--fs-4xl:48px;--fs-5xl:60px;--fs-6xl:72px;--lh-tight:1.15;--lh-snug:1.3;--lh-base:1.5;--lh-loose:1.7;--tracking-tight:-.01em;--tracking-base:0em;--tracking-wide:.04em;--tracking-caps:.08em;--space-0:0;--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-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-xl:16px;--radius-pill:999px;--shadow-xs:0 1px 2px #141c240f;--shadow-sm:0 1px 3px #141c2414, 0 1px 2px #141c240a;--shadow-md:0 6px 16px #141c2414, 0 2px 4px #141c240a;--shadow-lg:0 18px 40px #141c241f, 0 4px 10px #141c240d;--shadow-xl:0 30px 60px #141c242e;--shadow-green:0 8px 24px #88c35159;--shadow-focus:0 0 0 3px #88c35159;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--dur-fast:.12s;--dur-base:.2s;--dur-slow:.36s;--container-max:1240px;--container-pad:24px}html{font-family:var(--font-sans);color:var(--fg);background:var(--bg)}body{font-weight:var(--fw-regular);font-size:var(--fs-base);line-height:var(--lh-base);-webkit-font-smoothing:antialiased;margin:0}h1,.h1{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:clamp(40px, 5vw, var(--fs-5xl));line-height:var(--lh-tight);letter-spacing:var(--tracking-tight);color:var(--fg-strong);margin:0 0 var(--space-4)}h2,.h2{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:clamp(28px, 3.5vw, var(--fs-4xl));line-height:var(--lh-snug);letter-spacing:var(--tracking-tight);color:var(--fg-strong);margin:0 0 var(--space-4)}h3,.h3{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:var(--fs-2xl);line-height:var(--lh-snug);color:var(--fg-strong);margin:0 0 var(--space-3)}h4,.h4{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:var(--fs-xl);line-height:var(--lh-snug);color:var(--fg-strong);margin:0 0 var(--space-3)}h5,.h5{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:var(--fs-lg);line-height:var(--lh-snug);color:var(--fg-strong);margin:0 0 var(--space-2)}h6,.h6{font-family:var(--font-display);font-weight:var(--fw-medium);font-size:var(--fs-md);line-height:var(--lh-snug);color:var(--fg-strong);margin:0 0 var(--space-2)}p,.p{font-size:var(--fs-base);line-height:var(--lh-base);color:var(--fg);margin:0 0 var(--space-4)}.eyebrow{font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-muted)}.caption,small{font-size:var(--fs-sm);color:var(--fg-muted);line-height:var(--lh-snug)}a{color:var(--primary-hover);transition:color var(--dur-fast) var(--ease-out);text-decoration:none}a:hover{color:var(--primary-active)}code,.code{font-family:var(--font-mono);background:var(--surface-3);border-radius:var(--radius-sm);color:var(--vp-gray-800);padding:2px 6px;font-size:.92em}::selection{background:var(--vp-green-200);color:var(--vp-gray-900)}.container{width:100%;max-width:var(--container-max);padding-inline:var(--container-pad);margin-inline:auto}.section{padding-block:var(--space-24)}.section--muted{background:var(--bg-muted)}.section--dark{background:var(--bg-inverse);color:var(--vp-gray-300)}.grid-auto{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));display:grid}.text-primary{color:var(--primary)}h2 .text-primary,h3 .text-primary{color:inherit}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn{font-family:var(--font-sans);font-weight:var(--fw-medium);font-size:var(--fs-sm);border-radius:var(--radius-md);cursor:pointer;transition:background var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out);border:1.5px solid #0000;justify-content:center;align-items:center;gap:8px;padding:10px 18px;line-height:1.2;text-decoration:none;display:inline-flex}.btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-primary:hover{background:var(--primary-hover);color:var(--on-primary)}.btn-primary:active{background:var(--primary-active)}.btn-secondary{color:var(--primary-active);border-color:var(--primary);background:0 0}.btn-secondary:hover{background:var(--primary-soft);color:var(--primary-active)}.btn-ghost{color:var(--vp-graphite);background:0 0}.btn-ghost:hover{background:var(--vp-gray-100);color:var(--vp-gray-900)}.btn-dark{background:var(--vp-graphite);color:var(--fg-inverse)}.btn-dark:hover{background:var(--vp-gray-800);color:var(--fg-inverse)}.btn-danger{background:var(--danger);color:var(--fg-inverse)}.btn-danger:hover{color:var(--fg-inverse);background:#9a2f1e}.btn-sm{font-size:var(--fs-xs);padding:6px 12px}@media (pointer:coarse){.btn-sm{padding-block:10px}}.btn-lg{font-size:var(--fs-base);padding:14px 28px}.btn[disabled],.btn[aria-disabled=true]{opacity:.5;pointer-events:none}.badge{font-family:var(--font-sans);letter-spacing:var(--tracking-caps);text-transform:uppercase;border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--vp-green-800);align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.badge--info{background:var(--info-soft);color:#0b6a8f}.badge--danger{background:var(--danger-soft);color:var(--danger)}.badge--warning{background:var(--warning-soft);color:#8a5a0b}.badge--accent{background:var(--accent-soft);color:var(--accent)}.badge--neutral{background:var(--surface-3);color:var(--vp-graphite)}.card{background:var(--surface);border:1px solid var(--vp-gray-100);border-radius:var(--radius-lg);padding:var(--space-6);transition:transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out)}.card--interactive:hover{box-shadow:var(--shadow-lg);border-color:var(--border);transform:translateY(-2px)}.field{flex-direction:column;gap:6px;display:flex}.label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--fg-strong)}.input{font-size:var(--fs-sm);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--fg-strong);width:100%;transition:border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out);padding:10px 12px}@media (width<=767px),(pointer:coarse){.input{font-size:var(--fs-base)}}.input::placeholder{color:var(--fg-subtle)}.input:focus{border-color:var(--primary);box-shadow:var(--shadow-focus);outline:none}.input[aria-invalid=true]{border-color:var(--danger)}.hint{font-size:var(--fs-xs);color:var(--fg-muted)}.hint--error{color:var(--danger)}.alert{border-radius:var(--radius-md);font-size:var(--fs-sm);line-height:var(--lh-base);background:var(--primary-soft);color:var(--vp-green-800);align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.alert strong{font-weight:var(--fw-semibold);display:block}.alert--info{background:var(--info-soft);color:#0b6a8f}.alert--warning{background:var(--warning-soft);color:#8a5a0b}.alert--danger{background:var(--danger-soft);color:var(--danger)}@media (prefers-reduced-motion:no-preference){[data-reveal]{opacity:0;transition:opacity var(--dur-slow) var(--ease-out), transform var(--dur-slow) var(--ease-out);transform:translateY(8px)}[data-reveal].is-visible{opacity:1;transform:none}}*,:before,:after{box-sizing:border-box}img,svg,video{max-width:100%;display:block}img{height:auto}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{text-wrap:pretty}h1,h2,h3{overflow-wrap:break-word}.muted{color:var(--fg-muted)}.prose{max-width:720px;font-size:var(--fs-md);line-height:var(--lh-loose)}.prose>*+*{margin-top:var(--space-5)}.prose h2{font-size:var(--fs-3xl);margin-top:var(--space-12)}.prose h3{font-size:var(--fs-xl);margin-top:var(--space-8)}.prose p{font-size:inherit;line-height:inherit;margin:0}.prose>*+p{margin-top:var(--space-5)}.prose ul,.prose ol{padding-left:var(--space-6)}.prose li+li{margin-top:var(--space-2)}.prose a{text-underline-offset:3px;text-decoration:underline}.prose img{border-radius:var(--radius-lg)}.prose blockquote{padding:var(--space-4) var(--space-6);background:var(--bg-muted);border-radius:var(--radius-lg);color:var(--fg-strong);margin-inline:0}.prose pre{padding:var(--space-5);border-radius:var(--radius-lg);font-family:var(--font-mono);font-size:var(--fs-sm);line-height:1.7;overflow-x:auto}.prose pre code{color:inherit;font-size:inherit;background:0 0;padding:0}.prose{overflow-wrap:anywhere}.prose table{overflow-wrap:normal;max-width:100%;display:block;overflow-x:auto}.prose hr{border:0;border-top:1px solid var(--border);margin-block:var(--space-12)}.actions{text-align:center;margin:0}.search{align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.search .field{flex:0 15rem}.search .field--grow{flex:18rem}.search .check{align-items:center;gap:var(--space-2);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--vp-graphite);padding-block:10px;display:inline-flex}.search .check input{accent-color:var(--primary);width:16px;height:16px}.count{margin-bottom:var(--space-6)}.empty{margin-block:var(--space-8)}.more{text-align:center;margin:var(--space-10) 0 0}.results{margin:0;padding:0;list-style:none}.pcard{gap:var(--space-2);padding:var(--space-6);flex-direction:column;display:flex}.pcard__top{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.pcard__logo{width:96px;height:48px;color:var(--fg-subtle);align-items:center;display:flex}.pcard__logo img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%}.pcard__name{font-size:var(--fs-lg);margin:0}.pcard__place{font-size:var(--fs-sm);color:var(--vp-graphite);margin:0}.pcard__type{margin:0}.pcard__desc{margin:var(--space-2) 0 0;font-size:var(--fs-sm);color:var(--fg-muted);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.pcard__links{padding-top:var(--space-3);gap:var(--space-4);font-size:var(--fs-sm);font-weight:var(--fw-medium);flex-wrap:wrap;margin:auto 0 0;display:flex}.topbar[data-astro-cid-nazmfhjt]{z-index:50;backdrop-filter:saturate(180%)blur(8px);border-bottom:1px solid var(--border);background:#ffffffeb;position:sticky;top:0}.topbar__inner[data-astro-cid-nazmfhjt]{align-items:center;gap:var(--space-8);padding-block:16px;display:flex}.topbar__menu[data-astro-cid-nazmfhjt]{align-items:center;gap:var(--space-8);flex:1;display:flex}.topbar__nav[data-astro-cid-nazmfhjt]{flex:1;gap:4px;display:flex}.topbar__link[data-astro-cid-nazmfhjt]{border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--vp-graphite);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:8px 12px;font-family:inherit;text-decoration:none;display:inline-flex}.topbar__link[data-astro-cid-nazmfhjt]:hover{color:var(--primary-active);background:var(--bg-muted)}.topbar__link[data-astro-cid-nazmfhjt]:focus-visible{box-shadow:var(--shadow-focus);outline:none}.topbar__link[data-astro-cid-nazmfhjt].is-active{color:var(--primary-active)}.topbar__actions[data-astro-cid-nazmfhjt]{align-items:center;gap:12px;display:flex}.topbar__toggle[data-astro-cid-nazmfhjt]{color:var(--vp-graphite);cursor:pointer;border-radius:var(--radius-md);background:0 0;border:0;margin-left:auto;padding:10px;display:none}.dd[data-astro-cid-nazmfhjt]{position:relative}.dd[data-astro-cid-nazmfhjt] .dd__chevron{transition:transform var(--dur-base) var(--ease-out)}.dd[data-astro-cid-nazmfhjt][data-open=true] .dd__chevron{transform:rotate(180deg)}.dd__panel[data-astro-cid-nazmfhjt]{display:none}.dd[data-astro-cid-nazmfhjt][data-open=true] .dd__panel[data-astro-cid-nazmfhjt]{display:flex}.dd__group[data-astro-cid-nazmfhjt]{min-width:200px}.dd__title[data-astro-cid-nazmfhjt]{font-size:11px;font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-muted);padding:0 12px 8px}.dd__list[data-astro-cid-nazmfhjt]{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.dd__link[data-astro-cid-nazmfhjt]{border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--vp-graphite);white-space:nowrap;padding:8px 12px;display:block}.dd__link[data-astro-cid-nazmfhjt]:hover{background:var(--bg-muted);color:var(--primary-active)}.dd__link[data-astro-cid-nazmfhjt]:focus-visible{box-shadow:var(--shadow-focus);outline:none}.dd__link[data-astro-cid-nazmfhjt].is-active{color:var(--primary-active)}@media (width>=1081px){.dd__panel[data-astro-cid-nazmfhjt]{z-index:60;gap:var(--space-6);padding:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:dd-in var(--dur-base) var(--ease-out);margin-top:4px;position:absolute;top:100%;left:0}.dd__panel[data-astro-cid-nazmfhjt]:before{content:"";height:8px;position:absolute;top:-8px;left:0;right:0}}@keyframes dd-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.dd__panel[data-astro-cid-nazmfhjt]{animation:none}}@media (width<=1080px){.topbar__inner[data-astro-cid-nazmfhjt]{gap:var(--space-4);flex-wrap:wrap}.topbar__toggle[data-astro-cid-nazmfhjt]{display:inline-flex}.topbar__menu[data-astro-cid-nazmfhjt]{align-items:stretch;gap:var(--space-4);padding-bottom:var(--space-4);flex-direction:column;flex-basis:100%;max-height:calc(100dvh - 72px);display:none;overflow-y:auto}.topbar[data-astro-cid-nazmfhjt][data-open=true] .topbar__menu[data-astro-cid-nazmfhjt]{display:flex}.topbar__nav[data-astro-cid-nazmfhjt]{flex-direction:column}.topbar__link[data-astro-cid-nazmfhjt]{padding:12px}.dd__trigger[data-astro-cid-nazmfhjt]{justify-content:space-between;width:100%}.dd__panel[data-astro-cid-nazmfhjt]{gap:var(--space-4);padding:var(--space-2) 0 var(--space-4) var(--space-4);flex-direction:column}.topbar__actions[data-astro-cid-nazmfhjt]{flex-direction:column;align-items:stretch}}.footer[data-astro-cid-jo6i4kqk]{background:var(--bg-inverse);color:var(--vp-gray-300);padding:72px 0 32px}.footer__grid[data-astro-cid-jo6i4kqk]{gap:var(--space-8);grid-template-columns:1.4fr repeat(4,1fr);margin-bottom:56px;display:grid}.footer__desc[data-astro-cid-jo6i4kqk]{font-size:var(--fs-sm);color:var(--vp-gray-400);max-width:280px;margin:18px 0 0;line-height:1.6}.footer__address[data-astro-cid-jo6i4kqk]{margin-top:var(--space-5);color:var(--vp-gray-400);font-size:13px;font-style:normal;line-height:1.6}.footer__heading[data-astro-cid-jo6i4kqk]{font-size:11px;font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-inverse);margin-bottom:var(--space-4)}.footer__links[data-astro-cid-jo6i4kqk]{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.footer__links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--vp-gray-300);font-size:var(--fs-sm)}.footer__links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--primary)}.footer__bottom[data-astro-cid-jo6i4kqk]{border-top:1px solid var(--vp-gray-800);padding-top:var(--space-6);justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.footer__address[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--vp-gray-300)}.footer__address[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--primary)}.footer__legal[data-astro-cid-jo6i4kqk]{color:var(--vp-gray-500);gap:var(--space-2) var(--space-6);flex-wrap:wrap;align-items:center;font-size:13px;display:flex}.footer__legal-links[data-astro-cid-jo6i4kqk]{gap:var(--space-2) var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.footer__legal-links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--vp-gray-400)}.footer__legal-links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--primary)}.footer__social[data-astro-cid-jo6i4kqk]{gap:12px;display:flex}.footer__social[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{background:var(--vp-gray-800);width:32px;height:32px;color:var(--vp-gray-400);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.footer__social[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{background:var(--primary);color:var(--on-primary)}@media (width<=960px){.footer__grid[data-astro-cid-jo6i4kqk]{grid-template-columns:repeat(2,1fr)}.footer__brand[data-astro-cid-jo6i4kqk]{grid-column:1/-1}}@media (width<=520px){.footer__grid[data-astro-cid-jo6i4kqk]{grid-template-columns:1fr}}
