@font-face{font-family:'Outfit';font-style:normal;font-weight:100 900;font-display:swap;src:url('/assets/9120586e-52c1-48f2-bd30-fbe4085e2081.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0300-036F,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Outfit';font-style:normal;font-weight:100 900;font-display:swap;src:url('/assets/d4bbd098-c874-4fcc-85b8-88e19dc4739e.woff2') format('woff2');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:'Manrope';font-style:normal;font-weight:100 900;font-display:swap;src:url('/assets/b6d87e68-fe4e-4e3d-a72d-173c42ff477f.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0300-036F,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Manrope';font-style:normal;font-weight:100 900;font-display:swap;src:url('/assets/23c67b19-c658-4d12-8852-9e8c1b98dfca.woff2') format('woff2');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:'JetBrains Mono';font-style:normal;font-weight:100 900;font-display:swap;src:url('/assets/6ff27f7e-ebb7-408e-b162-bd56b28f0e92.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0300-036F,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:100 900;font-display:swap;src:url('/assets/bd5ab284-7046-4282-88bd-6402dfeb2cc5.woff2') format('woff2');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;}
:root{
/* ---- Brand core (sampled from the Kambiall logo) ---- */
--kb-green:#55B729;--kb-green-300:#A5E27F;--kb-green-400:#79CC4E;--kb-green-500:#55B729;--kb-green-600:#46A01F;--kb-green-700:#3A8619;--kb-green-800:#2C6714;
--kb-forest:#004529;--kb-forest-400:#0C7A4C;--kb-forest-500:#00663B;--kb-forest-600:#005D32;--kb-forest-700:#004529;--kb-forest-800:#00341F;
--kb-teal:#00AA74;--kb-teal-400:#2FD08C;--kb-teal-600:#008D5E;
--kb-lime:#C7F04C;
/* Signature gradient, lifted straight off the logo mark */
--kb-gradient-mark:linear-gradient(135deg,#00AA74 0%,#005D32 100%); /* @kind color */
--kb-gradient-brand:linear-gradient(135deg,#00AA74 0%,#55B729 100%); /* @kind color */
--kb-gradient-hero:linear-gradient(168deg,#00AA74 0%,#0C7A4C 38%,#004529 78%,#02251A 100%); /* @kind color */
--kb-gradient-fade-forest:linear-gradient(180deg,rgba(2,26,16,0) 0%,rgba(2,26,16,.72) 46%,#021A10 100%); /* @kind color */

/* ---- Forest neutrals: the dark product surface scale ---- */
--forest-1000:#01120B;--forest-950:#021A10;--forest-900:#04251A;--forest-850:#073322;--forest-800:#0B3F2B;--forest-700:#12523A;--forest-600:#1B6A4C;--forest-500:#2A8460;--forest-400:#4C9E7D;--forest-300:#7FB9A2;--forest-200:#A9CFBF;--forest-100:#D3E6DC;

/* ---- Paper neutrals: the light marketing / document scale ---- */
--paper:#FFFFFF;--paper-tint:#F4F9F1;--paper-sunken:#E9F2E5;--paper-line:#DCE8DC;
--ink-900:#04241A;--ink-800:#123528;--ink-700:#2A4A3C;--ink-600:#4A6B5E;--ink-500:#6A8A7C;--ink-400:#8FAA9D;

/* ---- Semantic hues ---- */
--success:#2FD08C;--success-dim:rgba(47,208,140,.16);--success-ink:#0B6B45;
--warning:#F2B01E;--warning-dim:rgba(242,176,30,.16);--warning-ink:#7A5405;
--danger:#E24B33;--danger-dim:rgba(226,75,51,.16);--danger-ink:#8E2716;
--info:#3CA0E8;--info-dim:rgba(60,160,232,.16);--info-ink:#0F5C93;

/* ---- Semantic aliases: DARK product surface (default app theme) ---- */
--bg-app:var(--forest-950);
--bg-surface:var(--forest-900);
--bg-surface-raised:var(--forest-850);
--bg-surface-selected:var(--forest-800);
--bg-sheet:var(--forest-900);
--bg-scrim:rgba(1,18,11,.72);
--bg-input:rgba(255,255,255,.03);
--text-primary:#FFFFFF;
--text-secondary:#A9CFBF;
--text-tertiary:#7FB9A2;
--text-disabled:#4C9E7D;
--text-brand:var(--kb-green-400);
--text-inverse:var(--ink-900);
--border-subtle:rgba(255,255,255,.08);
--border-default:rgba(169,207,191,.30);
--border-strong:rgba(169,207,191,.55);
--border-brand:var(--kb-green);
--icon-default:#FFFFFF;
--icon-muted:var(--forest-300);
--icon-accent:var(--kb-teal-400);
--focus-ring:0 0 0 3px rgba(85,183,41,.45);

/* ---- Semantic aliases: ACTIONS ---- */
--action-primary-bg:var(--kb-green);--action-primary-fg:#03210E;--action-primary-bg-hover:var(--kb-green-400);--action-primary-bg-active:var(--kb-green-600);
--action-secondary-bg:transparent;--action-secondary-fg:#FFFFFF;--action-secondary-border:var(--border-default);--action-secondary-bg-hover:rgba(255,255,255,.06);
--action-tertiary-fg:var(--kb-green-400);
--action-danger-bg:var(--danger);--action-danger-fg:#FFFFFF;
--action-disabled-bg:var(--forest-800);--action-disabled-fg:var(--forest-400);
}

/* ---- Light theme scope: marketing pages, documents, light modals ---- */
.kb-theme-light{
--bg-app:var(--paper);
--bg-surface:var(--paper);
--bg-surface-raised:var(--paper-tint);
--bg-surface-selected:var(--paper-sunken);
--bg-sheet:var(--paper);
--bg-scrim:rgba(4,36,26,.48);
--bg-input:var(--paper);
--text-primary:var(--ink-900);
--text-secondary:var(--ink-600);
--text-tertiary:var(--ink-500);
--text-disabled:var(--ink-400);
--text-brand:var(--kb-green-700);
--text-inverse:#FFFFFF;
--border-subtle:rgba(4,36,26,.07);
--border-default:var(--paper-line);
--border-strong:#B9CFBB;
--icon-default:var(--ink-900);
--icon-muted:var(--ink-500);
--icon-accent:var(--kb-forest-500);
--action-primary-fg:#FFFFFF;
--action-secondary-fg:var(--ink-900);
--action-secondary-bg-hover:var(--paper-sunken);
--action-tertiary-fg:var(--kb-green-700);
--action-disabled-bg:var(--paper-sunken);--action-disabled-fg:var(--ink-400);
}

:root{
--font-display:"Outfit","Outfit Fallback",system-ui,sans-serif;
--font-ui:"Manrope",system-ui,-apple-system,sans-serif;
--font-editorial:"Instrument Serif","Iowan Old Style",Georgia,serif;
--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,monospace;
--font-body:var(--font-ui);

--weight-extralight:200;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;

/* Sizes — mobile-first product scale (pt-equivalent px) */
--text-display-xl:44px;--text-display-l:36px;--text-display-m:30px;
--text-title-1:28px;--text-title-2:22px;--text-title-3:18px;
--text-body-l:17px;--text-body:15px;--text-body-s:14px;
--text-label:13px;--text-caption:12px;--text-micro:11px;

/* Web / marketing scale */
--text-hero:clamp(40px,6.2vw,84px);
--text-section:clamp(28px,3.4vw,46px);

--leading-tight:1.06; /* @kind other */--leading-snug:1.18; /* @kind other */--leading-normal:1.35; /* @kind other */--leading-relaxed:1.55; /* @kind other */--leading-loose:1.7; /* @kind other */
--tracking-wordmark:.34em;--tracking-tagline:.22em;--tracking-eyebrow:.14em;--tracking-tight:-.02em;--tracking-snug:-.01em;--tracking-normal:0;
}

:root{
--space-0:0;--space-1:2px;--space-2:4px;--space-3:8px;--space-4:12px;--space-5:16px;--space-6:20px;--space-7:24px;--space-8:32px;--space-9:40px;--space-10:48px;--space-11:64px;--space-12:80px;--space-13:96px;--space-14:128px;
/* Layout constants read off the product screens */
--gutter-mobile:24px;--gutter-web:32px;
--content-max:1200px;--prose-max:68ch;
--control-h-lg:60px;--control-h-md:52px;--control-h-sm:40px;--control-h-xs:32px;
--tap-min:44px;
--tabbar-h:64px;--topbar-h:56px;
}

:root{
--radius-xs:6px;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:24px;--radius-2xl:32px;
--radius-card:18px;--radius-sheet:28px;--radius-input:999px;--radius-field:14px;--radius-pill:999px;--radius-circle:50%;
--border-hair:1px;--border-thick:2px;
}

:root{
/* Light-surface shadows are green-tinted, never neutral grey */
--shadow-xs:0 1px 2px rgba(4,36,26,.06);
--shadow-sm:0 1px 2px rgba(4,36,26,.06),0 2px 6px rgba(4,36,26,.06);
--shadow-md:0 6px 18px rgba(4,36,26,.10);
--shadow-lg:0 16px 40px rgba(4,36,26,.14);
--shadow-xl:0 28px 70px rgba(4,36,26,.18);
--shadow-brand:0 10px 28px rgba(85,183,41,.32);
--shadow-sheet:0 -18px 48px rgba(1,18,11,.55);
/* Dark surfaces separate with hairlines + inner light, not drop shadows */
--inset-hairline:inset 0 1px 0 rgba(255,255,255,.05);
--inset-brand:inset 0 0 0 1px rgba(85,183,41,.45);
--blur-glass:saturate(140%) blur(18px); /* @kind other */
}

:root{
--dur-instant:80ms; /* @kind other */
--dur-fast:140ms; /* @kind other */
--dur-base:220ms; /* @kind other */
--dur-slow:340ms; /* @kind other */
--dur-sheet:420ms; /* @kind other */
--ease-standard:cubic-bezier(.2,.8,.2,1); /* @kind other */
--ease-out:cubic-bezier(.16,1,.3,1); /* @kind other */
--ease-in:cubic-bezier(.4,0,1,1); /* @kind other */
--ease-inout:cubic-bezier(.65,0,.35,1); /* @kind other */
--transition-control:background-color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard); /* @kind other */
--press-scale:.97; /* @kind other */
}
@media (prefers-reduced-motion:reduce){:root{
--dur-instant:0ms; /* @kind other */
--dur-fast:0ms; /* @kind other */
--dur-base:0ms; /* @kind other */
--dur-slow:0ms; /* @kind other */
--dur-sheet:0ms; /* @kind other */
--press-scale:1; /* @kind other */
}}

.kb-wordmark{font-family:var(--font-display);font-weight:var(--weight-light);letter-spacing:var(--tracking-wordmark);text-transform:uppercase}
.kb-tagline{font-family:var(--font-display);font-weight:var(--weight-medium);letter-spacing:var(--tracking-tagline);text-transform:uppercase;font-size:var(--text-micro)}
.kb-eyebrow{font-family:var(--font-ui);font-weight:var(--weight-bold);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;font-size:var(--text-label)}
.kb-editorial{font-family:var(--font-editorial);font-weight:var(--weight-regular);letter-spacing:var(--tracking-snug);line-height:var(--leading-tight)}
.kb-numeric{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}
.kb-gradient-text{background:var(--kb-gradient-brand);-webkit-background-clip:text;background-clip:text;color:transparent}
.kb-focus:focus-visible{outline:none;box-shadow:var(--focus-ring)}
a{color:var(--text-brand);text-decoration-color:color-mix(in oklab,currentColor 45%,transparent);text-underline-offset:3px}
a:hover{color:var(--kb-green-300);text-decoration-color:currentColor}
.kb-theme-light a:hover{color:var(--kb-green-800)}

