.footer-sub[data-astro-cid-sz7xmlte]{margin-block-start:var(--f-s5)}.footer-contact[data-astro-cid-sz7xmlte] p[data-astro-cid-sz7xmlte]{margin-block-start:var(--f-s3)}.footer-contact[data-astro-cid-sz7xmlte] .footer-label[data-astro-cid-sz7xmlte]+p[data-astro-cid-sz7xmlte]{margin-block-start:.15rem}@font-face{font-family:Hanken Grotesk;src:url(/fonts/hanken-grotesk-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Hanken Grotesk;src:url(/fonts/hanken-grotesk-latin-ext-wght-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{color-scheme:light dark;--f-bg: #f5f6f7;--f-bg-2: #e9ecef;--f-ink: #121a22;--f-ink-2: #3e4a57;--f-ink-3: #59636f;--f-accent: #1d5f8a;--f-rule: #d6dbe0;--f-edge: #7a8693;--f-btn: #121a22;--f-btn-ink: #f5f6f7;--f-btn-hover: #1d5f8a;--f-shadow: 0 1px 0 rgb(18 26 34 / .05), 0 18px 40px -28px rgb(18 26 34 / .45);--color-bg: var(--f-bg);--color-text: var(--f-ink);--color-text-muted: var(--f-ink-2);--color-surface-muted: var(--f-bg-2);--color-border: var(--f-edge);--color-heading: var(--f-ink);--color-link: var(--f-accent);--color-on-surface: var(--f-ink);--color-banner-bg: var(--f-bg-2);--color-banner-text: var(--f-ink-2);--font-frame: "Hanken Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-body: var(--font-frame);--font-heading: var(--font-frame);--f-step-5: clamp(2.4rem, 1.35rem + 3.3vw, 4.25rem);--f-step-4: clamp(2rem, 1.45rem + 1.9vw, 3.125rem);--f-step-3: clamp(1.5rem, 1.25rem + .9vw, 2rem);--f-step-2: clamp(1.1875rem, 1.08rem + .45vw, 1.4375rem);--f-body: 1.125rem;--f-small: .9375rem;--f-label: .8125rem;--f-s1: .25rem;--f-s2: .5rem;--f-s3: .75rem;--f-s4: 1rem;--f-s5: 1.5rem;--f-s6: 2rem;--f-s7: 3rem;--f-s8: 4rem;--f-s9: 6rem;--f-s10: 8rem;--f-section: clamp(4.5rem, 3rem + 5vw, 8rem);--f-max: 80rem;--f-gutter: clamp(1.25rem, 5vw - .5rem, 4.5rem);--board-inset: clamp(0rem, 3vw - .75rem, 1.5rem);--board-radius: 6px;--f-col-gap: clamp(1.25rem, .6rem + 2.4vw, 3.5rem);--measure: 40rem;--space: 1rem;--ease-out: cubic-bezier(.22, .61, .36, 1);--ease-wipe: cubic-bezier(.55, .05, .2, 1)}@media(prefers-color-scheme:dark){:root{--f-bg: #0d1217;--f-bg-2: #141b22;--f-ink: #e8edf2;--f-ink-2: #b3bec9;--f-ink-3: #93a0ad;--f-accent: #7db4dc;--f-rule: #26313b;--f-edge: #6c7a88;--f-btn: #e8edf2;--f-btn-ink: #0d1217;--f-btn-hover: #7db4dc;--f-shadow: 0 1px 0 rgb(0 0 0 / .4), 0 22px 44px -30px rgb(0 0 0 / .9)}}@media(max-width:47.99em){:root{--board-radius: 0px}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;font-family:var(--font-body);font-size:var(--f-body);line-height:1.6;color:var(--f-ink);background-color:var(--f-bg);font-variant-numeric:lining-nums;font-kerning:normal;overflow-wrap:break-word;-webkit-font-smoothing:antialiased}main :is(h1,h2,h3,h4,h5,h6,p,li,dt,dd,summary,figcaption,th,td){overflow-wrap:break-word}.break-any{overflow-wrap:anywhere}img{max-width:100%;height:auto}h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--font-heading);color:var(--f-ink);font-weight:500;text-wrap:balance}p,li,dd{text-wrap:pretty}p{margin:0}a{color:var(--f-accent);text-underline-offset:.18em;text-decoration-thickness:1px}ul,ol,dl,dd,figure{margin:0;padding:0}.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--f-accent);outline-offset:3px}.skip-link{position:absolute;z-index:50;inset-block-start:0;inset-inline-start:0;padding-block:.75rem;padding-inline:1.25rem;background:var(--f-bg);color:var(--f-ink);border:1px solid var(--f-edge);font-weight:600;text-decoration:none;transform:translateY(-200%)}.skip-link:focus{transform:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important;scroll-behavior:auto!important}}html:focus-within{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}}:target{scroll-margin-block-start:var(--f-s6)}.f-wrap{inline-size:min(100% - 2 * var(--f-gutter),var(--f-max));margin-inline:auto}.board{position:relative;margin-inline:var(--board-inset);border-radius:var(--board-radius);overflow:clip;box-shadow:var(--f-shadow)}.board-in{inline-size:min(100% - 2 * (var(--f-gutter) - var(--board-inset)),var(--f-max));margin-inline:auto}.demo-banner{margin:0;padding-block:.55rem;padding-inline:var(--f-gutter);background:var(--f-bg-2);color:var(--f-ink-2);border-block-end:1px solid var(--f-rule);text-align:center;font-size:.875rem;line-height:1.45;font-weight:500;letter-spacing:.01em}.lang-suggest{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem 1rem;padding-block:.6rem;padding-inline:var(--f-gutter);background:var(--f-bg);color:var(--f-ink);border-block-end:1px solid var(--f-rule);text-align:center;font-size:.9375rem}.lang-suggest-message{margin:0}.lang-suggest-action{display:inline-flex;align-items:center;min-block-size:2.25rem;padding-inline:.5rem;color:var(--f-ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--f-accent)}.lang-suggest-dismiss{cursor:pointer;min-block-size:2.25rem;font:inherit;color:var(--f-ink);background:transparent;border:1px solid var(--f-edge);border-radius:999px;padding-inline:.9rem}.f-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-block-size:2.75rem;padding-block:.55rem;padding-inline:1.25rem;border:1px solid var(--f-btn);border-radius:999px;background:var(--f-btn);color:var(--f-btn-ink);font:inherit;font-size:1rem;font-weight:600;line-height:1.2;letter-spacing:.005em;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.f-btn:hover{background:var(--f-btn-hover);border-color:var(--f-btn-hover)}.f-btn:focus-visible{outline:2px solid var(--f-btn);outline-offset:3px}.f-btn--line{background:transparent;color:var(--f-ink);border-color:var(--f-edge)}.f-btn--line:hover{background:transparent;border-color:var(--f-ink)}.f-btn--line:focus-visible{outline-color:var(--f-accent)}.f-arrow{display:inline-block;flex:none;inline-size:.95em;block-size:.95em;vertical-align:-.1em}.f-btn .f-arrow{inline-size:.95em;block-size:.95em;flex:none;transition:transform .25s var(--ease-out)}.f-btn:hover .f-arrow{transform:translate(.18em)}.site-header{position:relative;z-index:5;background:var(--f-bg);border-block-end:1px solid var(--f-rule)}.site-header__in{display:flex;align-items:center;justify-content:space-between;gap:var(--f-s3);min-block-size:4.25rem;padding-block:var(--f-s3)}.site-header__in>*{min-inline-size:0}.lockup{display:inline-flex;align-items:center;gap:.7rem;color:var(--f-ink);text-decoration:none}.lockup__mark{display:grid;grid-template-columns:repeat(3,.55rem);gap:2px;flex:none}.lockup__mark span{display:block;block-size:1.6rem;border-radius:1.5px;box-shadow:inset 0 0 0 1px #121a222e}.lockup__mark span:nth-child(1){background:#201f1f}.lockup__mark span:nth-child(2){background:#faf5e4}.lockup__mark span:nth-child(3){background:#e5ddc8}@media(prefers-color-scheme:dark){.lockup__mark span{box-shadow:inset 0 0 0 1px #e8edf247}}.lockup__text{display:grid;line-height:1.1}.lockup__name{font-size:1.1875rem;font-weight:650;letter-spacing:-.012em}.lockup__sub{margin-block-start:.2rem;font-size:.8125rem;font-weight:500;color:var(--f-ink-3);letter-spacing:.01em}.site-header__tools{display:flex;align-items:center;gap:var(--f-s3);flex:none}.site-header .f-btn{min-block-size:2.5rem;padding-inline:1.1rem;font-size:.9375rem}.lang-switch{display:inline-flex;align-items:center;gap:2px;padding:2px;border:1px solid var(--f-edge);border-radius:999px}.lang-switch__item{display:inline-flex;align-items:center;justify-content:center;min-inline-size:2.25rem;min-block-size:2.125rem;padding-inline:.5rem;border-radius:999px;font-size:.8125rem;font-weight:650;line-height:1;letter-spacing:.06em;white-space:nowrap}.lang-switch__item--current{background:var(--f-bg-2);color:var(--f-ink);box-shadow:inset 0 0 0 1px var(--f-edge)}.site-header .lang-switch a.lang-switch__item{min-block-size:2.125rem;color:var(--f-ink-2);text-decoration:none;transition:color .2s ease}.site-header .lang-switch a.lang-switch__item:hover{color:var(--f-ink);text-decoration:underline;text-decoration-color:var(--f-accent);text-underline-offset:.3em}.site-header .lang-switch a.lang-switch__item:focus-visible{outline:2px solid var(--f-accent);outline-offset:2px}@media(max-width:26em){.lockup{gap:.55rem}.site-header__tools{gap:var(--f-s2)}.lang-switch__item{min-inline-size:2rem;padding-inline:.4rem}.lockup__name{font-size:1.0625rem}.lockup__sub{font-size:.75rem}.site-header .f-btn{padding-inline:.85rem;font-size:.875rem}}@media(max-width:29.99em){.lockup__sub{display:none}.lockup__name{white-space:nowrap}}@media(max-width:22.49em){.lockup__mark{display:none}.lockup__name{font-size:1rem}.lang-switch__item{min-inline-size:1.85rem;padding-inline:.3rem;font-size:.75rem}.site-header .f-btn{padding-inline:.7rem;font-size:.8125rem}}.f-kicker{font-size:var(--f-small);font-weight:600;color:var(--f-accent);letter-spacing:.01em}.f-title{font-size:var(--f-step-4);line-height:1.08;letter-spacing:-.022em}.f-lead{font-size:var(--f-step-2);line-height:1.5;color:var(--f-ink-2)}.f-num{font-variant-numeric:lining-nums tabular-nums}.f-block{padding-block:var(--f-section)}.board-cap{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--f-s2) var(--f-s5);padding-block:0 var(--f-s4);font-size:var(--f-small);color:var(--f-ink-2)}.board-cap__num{font-weight:600;color:var(--f-ink)}.board-cap__num b{color:var(--f-accent);font-weight:600}.board-cap a{display:inline-flex;align-items:center;min-block-size:1.75rem;color:var(--f-ink-2);text-decoration:none;font-variant-numeric:lining-nums}.board-cap a:hover{color:var(--f-ink);text-decoration:underline}.board-cap .cap-arrow{flex:none;inline-size:.85em;block-size:.85em;margin-inline-start:.3em}.dir{scroll-margin-block-start:var(--f-s5)}.dir:target .board-cap__num{text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--f-accent);text-underline-offset:.35em}.site-footer{margin-block-start:var(--f-section);padding-block:var(--f-s8) var(--f-s6);background:var(--f-bg-2);color:var(--f-ink-2);font-size:var(--f-small);line-height:1.55}.site-footer__grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr);gap:var(--f-s7) var(--f-col-gap)}.site-footer h2{margin-block-end:var(--f-s3);font-size:var(--f-small);font-weight:650;color:var(--f-ink)}.site-footer p+p{margin-block-start:var(--f-s2)}.site-footer ul{list-style:none;display:grid;gap:.15rem}.site-footer a{display:inline-flex;align-items:center;min-block-size:1.75rem;color:var(--f-ink);text-decoration:underline;text-decoration-color:var(--f-edge)}.site-footer a:hover{text-decoration-color:var(--f-ink)}.site-footer address{font-style:normal}.site-footer .lockup{margin-block-end:var(--f-s4);text-decoration:none}.footer-label{display:block;color:var(--f-ink-3);font-size:var(--f-label);font-weight:600;letter-spacing:.01em}.footer-base{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--f-s3) var(--f-s6);margin-block-start:var(--f-s7);padding-block-start:var(--f-s4);border-block-start:1px solid var(--f-rule)}.language-picker ul{display:flex;flex-wrap:wrap;gap:0 var(--f-s4);list-style:none;margin:0;padding:0}.language-picker a{display:inline-flex;align-items:center;min-block-size:1.75rem;color:var(--f-ink-2);text-decoration:none}.language-picker a[aria-current=true]{color:var(--f-ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--f-accent)}@media(max-width:63.99em){.site-footer__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.site-footer__grid>:first-child{grid-column:1 / -1}}@media(max-width:39.99em){.site-footer__grid{grid-template-columns:minmax(0,1fr)}}.contact-form{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--f-s5)}.contact-form .form-field{display:grid;gap:.4rem;margin:0}.contact-form label{font-weight:600;font-size:1rem;color:var(--f-ink)}.contact-form .form-required,.contact-form .form-optional{font-weight:400;color:var(--f-ink-3)}.contact-form input[type=text],.contact-form input[type=email],.contact-form select,.contact-form textarea{font:inherit;font-size:1rem;color:var(--f-ink);background:var(--f-bg);border:1px solid var(--f-edge);border-radius:8px;padding-block:.7rem;padding-inline:.85rem;min-inline-size:0;max-inline-size:100%}.contact-form select{appearance:none;padding-inline-end:2.5rem;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 1.2rem) 52%,calc(100% - .85rem) 52%;background-size:.36rem .36rem;background-repeat:no-repeat}.contact-form textarea{min-block-size:9rem;resize:vertical}.contact-form :is(input,select,textarea):focus-visible{outline:2px solid var(--f-accent);outline-offset:2px}.contact-form button{justify-self:start}.form-error{display:none}.form-error:target{display:block;margin:0;padding:var(--f-s4);border:1px solid var(--f-edge);border-radius:8px;font-weight:600}.form-noscript{padding:var(--f-s4);border:1px solid var(--f-edge);border-radius:8px}.form-noscript a{overflow-wrap:anywhere}.contact-form .form-extra{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.turnstile-slot{container-type:inline-size;min-block-size:65px}@container (max-width: 21.5rem){.turnstile-slot .cf-turnstile{transform:scale(.86);transform-origin:0 0}.turnstile-slot{min-block-size:56px}}@keyframes f-wipe-x{0%{clip-path:inset(-.25em 100% -.35em -.25em)}to{clip-path:inset(-.25em -.25em -.35em -.25em)}}@keyframes f-wipe-y{0%{clip-path:inset(-.25em -.25em 100% -.25em);transform:translateY(.75rem)}to{clip-path:inset(-.25em -.25em -.35em -.25em);transform:translateY(0)}}@keyframes f-rise{0%{clip-path:inset(0 0 100% 0);transform:translateY(105%)}to{clip-path:inset(0 0 0 0);transform:translateY(0)}}@keyframes f-draw-x{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes f-fade{0%{opacity:0}to{opacity:1}}:is(html.motion [data-unit].is-pending,html.motion [data-unit].is-in:not(.is-now)) [data-anim=reveal]{animation:f-wipe-y .8s var(--ease-out) var(--rd, 0s) backwards}:is(html.motion [data-unit].is-pending,html.motion [data-unit].is-in:not(.is-now)) [data-anim=reveal-x]{animation:f-wipe-x .75s var(--ease-wipe) var(--rd, 0s) backwards}:is(html.motion [data-unit].is-pending,html.motion [data-unit].is-in:not(.is-now)) [data-anim=rule]{transform-origin:0 50%;animation:f-draw-x .9s var(--ease-wipe) var(--rd, 0s) backwards}html.motion [data-unit].is-pending :is([data-anim],[data-anim] *),html.motion [data-unit][data-anim].is-pending{animation-play-state:paused!important}
