@font-face{font-family:Inter;src:url(/fonts/inter-var.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:Oswald;src:url(/fonts/oswald-var.woff2) format("woff2");font-weight:300 700;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:Newsreader;src:url(/fonts/newsreader-normal-latin.woff2) format("woff2");font-weight:200 720;font-style:normal;font-display:swap}@font-face{font-family:Newsreader;src:url(/fonts/newsreader-italic-latin.woff2) format("woff2");font-weight:200 720;font-style:italic;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/plexmono-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}:root{color-scheme:light;--f-bg: #f7f4ef;--f-bg-2: #efeae1;--f-bg-3: #e8e2d6;--f-ink: #1b1e22;--f-body: #3a4046;--f-muted: #5c636c;--f-line: rgba(30, 42, 52, .16);--f-line-strong: rgba(30, 42, 52, .32);--f-field-border: #6b7280;--f-accent-text: #8a5a12;--f-amber: #e8a13a;--f-slate: #324b57;--f-cream: #f5efe1;--color-bg: var(--f-bg);--color-text: var(--f-body);--color-text-muted: var(--f-muted);--color-surface-muted: var(--f-bg-2);--color-border: var(--f-field-border);--color-heading: var(--f-ink);--color-link: var(--f-accent-text);--color-on-surface: var(--f-body);--color-banner-bg: #2c4350;--color-banner-text: #f5efe1;--f-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--f-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-body: var(--f-sans);--font-heading: var(--f-sans);--fs-hero: clamp(2.6rem, 6vw, 5rem);--fs-h2: clamp(1.9rem, 3.6vw, 3rem);--fs-h3: clamp(1.3rem, 2vw, 1.7rem);--fs-lede: clamp(1.1rem, 1.6vw, 1.34rem);--maxw: 1180px;--measure: 68ch;--gutter: clamp(1.25rem, 5vw, 4rem);--space: 1rem;--radius: 8px;--radius-sm: 4px}@supports (color: light-dark(#fff,#000)){:root{color-scheme:light dark;--f-bg: light-dark(#f7f4ef, #0f1417);--f-bg-2: light-dark(#efeae1, #161d22);--f-bg-3: light-dark(#e8e2d6, #1c252b);--f-ink: light-dark(#1b1e22, #eef2f4);--f-body: light-dark(#3a4046, #c4ced4);--f-muted: light-dark(#5c636c, #93a0a8);--f-line: light-dark(rgba(30, 42, 52, .16), rgba(230, 240, 244, .12));--f-line-strong: light-dark(rgba(30, 42, 52, .32), rgba(230, 240, 244, .22));--f-field-border: light-dark(#6b7280, #74828d);--f-accent-text: light-dark(#8a5a12, #f4b968)}}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);font-size:1.0625rem;line-height:1.62;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-wrap:anywhere}main :is(h1,h2,h3,h4,h5,h6,p,li,dt,dd,summary,figcaption,th,td){overflow-wrap:anywhere}img{max-width:100%;height:auto}h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--font-heading);color:var(--color-heading);font-weight:750;line-height:1.08;letter-spacing:-.02em}p{margin:0}a{color:var(--f-accent-text)}.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}.container--narrow{max-width:880px}.eyebrow{display:inline-flex;align-items:center;gap:.7rem;font-family:var(--f-mono);font-size:.74rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--f-accent-text)}.eyebrow:before{content:"";inline-size:26px;block-size:2px;background:var(--f-amber);flex:none}.lede{font-size:var(--fs-lede);line-height:1.55;color:var(--f-body)}.button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:48px;padding-block:.85rem;padding-inline:1.5rem;font-family:var(--f-sans);font-weight:650;font-size:1rem;line-height:1.1;text-decoration:none;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;transition:transform .14s ease,background .16s ease,border-color .16s ease,color .16s ease}.button,.btn-primary{background:var(--f-slate);color:var(--f-cream);border-color:var(--f-slate)}.button:hover,.btn-primary:hover{background:#26333c;border-color:#26333c;transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--f-ink);border-color:var(--f-line-strong)}.btn-ghost:hover{border-color:var(--f-slate);color:var(--f-slate)}.btn-lg{min-height:54px;padding-block:1rem;padding-inline:1.75rem;font-size:1.05rem}.skip-link{position:absolute;z-index:100;inset-block-start:0;inset-inline-start:0;padding-block:.75rem;padding-inline:1.5rem;background:var(--f-slate);color:var(--f-cream);font-weight:600;text-decoration:none;transform:translateY(-200%)}.skip-link:focus{transform:none}:focus-visible{outline:3px solid var(--f-accent-text);outline-offset:2px}@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}.hero .hero-bg,.hero canvas.hero-bg{display:none!important}.hero .hero-poster{display:block!important}}.demo-banner{margin:0;padding-block:.7rem;padding-inline:var(--gutter);background:var(--color-banner-bg);color:var(--color-banner-text);text-align:center;font-family:var(--f-mono);font-size:.8rem;font-weight:500;letter-spacing:.03em}.lang-suggest{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem 1rem;padding-block:.7rem;padding-inline:var(--gutter);background:var(--f-bg-2);color:var(--f-body);border-block-end:1px solid var(--f-line);text-align:center;font-size:.9rem}.lang-suggest-message{margin:0}.lang-suggest-action{display:inline-flex;align-items:center;justify-content:center;min-inline-size:24px;min-height:24px;padding-block:.375rem;padding-inline:.6rem;color:var(--f-accent-text);font-weight:600;text-decoration:underline}.lang-suggest-dismiss{cursor:pointer;font:inherit;color:var(--f-body);background:transparent;border:1px solid var(--f-line-strong);border-radius:var(--radius-sm);min-height:24px;padding-block:.375rem;padding-inline:.75rem}.lang-suggest-dismiss:hover{border-color:var(--f-slate)}.site-header{position:sticky;inset-block-start:0;z-index:50;background:var(--f-bg);border-block-end:1px solid var(--f-line)}.header-inner{display:flex;align-items:center;gap:1.25rem;min-height:68px}.header-inner>*{min-inline-size:0}.site-header .brand{display:inline-flex;align-items:center;gap:.75rem;flex:none;text-decoration:none;color:var(--f-ink);padding-block:.3rem}.site-header .brand img{display:block;height:30px;width:auto}.site-header .brand .brand-tag{font-family:var(--f-mono);font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--f-muted);border-inline-start:1px solid var(--f-line-strong);padding-inline-start:.75rem;line-height:1.25;max-width:12ch}.brand .logo-dark{display:none}@media(prefers-color-scheme:dark){.brand .logo-light{display:none}.brand .logo-dark{display:block}}.primary-nav{margin-inline-start:auto;min-inline-size:0}.nav-inline{display:none;flex-wrap:wrap;align-items:center;gap:.3rem .5rem;list-style:none;margin:0;padding:0}.nav-inline a{display:inline-flex;align-items:center;justify-content:center;min-height:24px;min-inline-size:24px;padding-block:.5rem;padding-inline:.7rem;color:var(--f-body);font-size:.92rem;font-weight:550;text-decoration:none;border-radius:var(--radius-sm);overflow-wrap:anywhere;transition:color .15s ease,background .15s ease}.nav-inline a:hover,.nav-inline a[aria-current=page]{color:var(--f-ink);background:var(--f-bg-2)}.header-cta{flex:none}.nav-menu{position:relative}.nav-menu>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;min-height:44px;padding-block:.55rem;padding-inline:.9rem;border:1px solid var(--f-line-strong);border-radius:var(--radius-sm);color:var(--f-ink);font-weight:600;font-size:.95rem}.nav-menu>summary::-webkit-details-marker{display:none}.nav-menu>summary:after{content:"";width:8px;height:8px;border-inline-end:2px solid currentColor;border-block-end:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .18s ease}.nav-menu[open]>summary{border-color:var(--f-slate);color:var(--f-slate)}.nav-menu[open]>summary:after{transform:rotate(-135deg) translateY(-1px)}.nav-menu>ul{position:absolute;inset-inline-end:0;inset-block-start:calc(100% + .55rem);min-width:232px;background:var(--f-bg);border:1px solid var(--f-line-strong);border-radius:var(--radius);padding:.4rem;display:grid;gap:.1rem;list-style:none;margin:0;box-shadow:0 22px 50px #141e263d;z-index:60}.nav-menu>ul a{display:block;min-height:24px;padding-block:.65rem;padding-inline:.8rem;border-radius:var(--radius-sm);color:var(--f-body);text-decoration:none;font-size:.97rem;font-weight:550;overflow-wrap:anywhere}.nav-menu>ul a:hover{color:var(--f-ink);background:var(--f-bg-2)}@media(min-width:64em){.nav-inline{display:flex}.nav-menu{display:none}}@media(max-width:30em){.header-cta,.site-header .brand .brand-tag{display:none}}.v-shot img{display:block;width:100%;height:auto;border-radius:10px}.v-shot img.bp-shot-dark{display:none}@media(prefers-color-scheme:dark){.v-shot img.bp-shot-light{display:none}.v-shot img.bp-shot-dark{display:block}}.page-hero{padding-block:clamp(3rem,6vw,5rem) clamp(2rem,4vw,3rem);border-block-end:1px solid var(--f-line);background:var(--f-bg-2)}.page-hero h1{font-size:clamp(2.2rem,5vw,3.6rem);max-width:20ch;margin-block-start:.9rem}.page-hero .lede{margin-block-start:1.2rem;max-width:56ch}.contact-layout{padding-block:clamp(3rem,6vw,5rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(2rem,5vw,4rem);align-items:start}@media(max-width:52em){.contact-layout{grid-template-columns:minmax(0,1fr)}}.contact-facts h2{font-size:var(--fs-h3);margin-block-end:1rem}.contact-list{list-style:none;padding:0;margin:0;display:grid;gap:.6rem}.contact-list li{color:var(--f-body)}.contact-list a{color:var(--f-accent-text);overflow-wrap:anywhere;display:inline-flex;align-items:center;min-height:24px}.contact-note{margin-block-start:1.75rem;padding:1.1rem 1.25rem;border:1px solid var(--f-line);border-inline-start:3px solid var(--f-amber);border-radius:var(--radius-sm);background:var(--f-bg-2);color:var(--f-muted);font-size:.94rem}.form-card{background:var(--f-bg-2);border:1px solid var(--f-line);border-radius:var(--radius);padding:clamp(1.5rem,3vw,2.25rem)}.form-card h2{font-size:var(--fs-h3);margin-block-end:.5rem}.contact-form{display:grid;grid-template-columns:minmax(0,1fr);gap:1.1rem;margin-block-start:calc(var(--space) * 1.25)}.contact-form .form-field{display:grid;gap:.35rem;margin:0}.contact-form label{font-weight:600;font-size:.94rem;color:var(--f-ink)}.contact-form .form-required{font-weight:400;color:var(--f-muted);font-family:var(--f-mono);font-size:.78rem}.contact-form input[type=text],.contact-form input[type=email],.contact-form textarea{font:inherit;color:var(--f-ink);background:var(--f-bg);border:1px solid var(--f-field-border);border-radius:var(--radius-sm);padding-block:.7rem;padding-inline:.85rem;min-inline-size:0;max-inline-size:100%}.contact-form textarea{min-height:8rem;line-height:1.5}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--f-accent-text);outline-offset:1px;border-color:var(--f-accent-text)}.contact-form .cf-turnstile{margin-block-start:.2rem}.contact-form button{justify-self:start}.form-noscript{color:var(--f-muted);font-size:.92rem}.form-noscript a{color:var(--f-accent-text)}.form-error{display:none}.form-error:target{display:block;margin:0;padding-block:.75rem;padding-inline:1rem;border:1px solid var(--f-amber);border-radius:var(--radius-sm);background:#e8a13a1a;color:var(--f-ink);font-weight:600}.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}@media(max-width:40em){.button,.btn,.contact-form button{white-space:normal;text-align:center}}.site-footer{margin-block-start:0;background:var(--f-bg-2);border-block-start:1px solid var(--f-line);padding-block:clamp(2.75rem,5vw,4rem) 2rem;color:var(--f-muted);font-size:.92rem}.foot-top{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:2rem;padding-block-end:2rem;border-block-end:1px solid var(--f-line)}@media(max-width:60em){.foot-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.foot-brand{grid-column:1 / -1}}@media(max-width:40em){.foot-top{grid-template-columns:minmax(0,1fr)}}.foot-brand img{height:26px;width:auto;display:block}.foot-brand .foot-desc{margin-block-start:1rem;max-width:34ch;color:var(--f-muted);font-size:.9rem;line-height:1.55}.footer-contact{font-style:normal;margin-block-start:1rem;line-height:1.8;color:var(--f-body)}.footer-contact a{color:var(--f-body);text-decoration:none;overflow-wrap:anywhere;display:inline-flex;align-items:center;min-height:24px}.footer-contact a:hover{color:var(--f-accent-text)}.foot-col-label{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--f-muted);margin-block-end:.85rem}.foot-nav{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}.foot-nav a{display:inline-flex;align-items:center;min-height:24px;color:var(--f-body);font-size:.92rem;text-decoration:none}.foot-nav a:hover{color:var(--f-accent-text)}.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.5rem;align-items:center;padding-block-start:1.75rem}.language-picker ul{display:flex;flex-wrap:wrap;gap:.4rem 1rem;list-style:none;margin:0;padding:0}.language-picker a{display:inline-flex;align-items:center;min-height:24px;min-inline-size:24px;padding-inline:.15rem;color:var(--f-muted);text-decoration:none;font-size:.86rem}.language-picker a:hover{color:var(--f-accent-text)}.language-picker a[aria-current=true]{color:var(--f-ink);font-weight:700;text-decoration:underline}.footer-legal{margin:0;color:var(--f-muted);font-size:.82rem}.utility{min-block-size:60vh;display:grid;place-items:center;text-align:center;padding-block:clamp(3.5rem,9vw,7rem)}.utility .utility-inner{max-width:44ch}.utility .eyebrow{justify-content:center;margin-block-end:1rem}.utility h1{font-size:clamp(2rem,5vw,3rem);margin-block-end:1rem}.utility p{color:var(--f-muted);font-size:1.1rem;line-height:1.6;margin-block-end:2rem}
