@font-face{
font-family:'TikTok Sans Fallback';
src:local('Arial'),local('Helvetica Neue'),local('Segoe UI');
size-adjust:102%;ascent-override:95%;descent-override:24%;line-gap-override:0%;
}
@font-face{
font-family:'Geist Fallback';
src:local('Segoe UI'),local('Helvetica Neue'),local('Arial');
size-adjust:104%;ascent-override:96%;descent-override:24%;line-gap-override:0%;
}
:root{
}
:root,[data-theme='light']{
--color-bg-canvas:#F5F2EC;--color-bg-surface:#FFFFFF;--color-bg-surface-raised:#FFFFFF;--color-bg-subtle:#FAF8F4;
--color-bg-sunken:#EAE6DD;--color-bg-inverse:#1D1740;--color-bg-scrim:rgb(18 16 43 / 0.60);
--color-text-primary:#12102B;--color-text-secondary:#55524B;--color-text-tertiary:#6B675E;--color-text-disabled:#7E7A70;--color-text-link:#3F3475;--color-text-accent:#6F4416;
--color-border-subtle:#EAE6DD;--color-border-default:#D9D4C9;--color-border-interactive:#8C877C;--color-border-strong:#12102B;
--color-border-inverse:rgb(255 255 255 / 0.14);
--color-on-inverse-primary:#F5F2EC;--color-on-inverse-secondary:#C9C4DD;--color-on-inverse-tertiary:#ADA6C2;
--color-on-inverse-link:#F7D34B;--color-on-inverse-fill:rgb(255 255 255 / 0.08);--color-on-inverse-fill-hover:rgb(255 255 255 / 0.14);
--color-on-inverse-accent-subtle:#412306;--color-on-inverse-success:#6CE9A6;--color-on-inverse-warning:#FEB273;
--color-on-inverse-error:#FDA29B;--color-on-inverse-info:#84CAFF;
--color-on-inverse-surface:#FFFFFF;--color-on-inverse-surface-primary:#12102B;--color-on-inverse-surface-secondary:#55524B;
--color-on-inverse-surface-tertiary:#6B675E;--color-on-inverse-surface-link:#3F3475;--color-on-inverse-surface-border:#EAE6DD;
--color-danger-solid:#B42318;--color-danger-solid-hover:#912018;--color-danger-solid-fg:#FFFFFF;
--color-primary-default:#1D1740;--color-primary-hover:#2C2456;--color-primary-active:#12102B;--color-primary-fg:#F5F2EC;
--color-accent-default:#F7D34B;--color-accent-hover:#F0C528;--color-accent-active:#E0B412;--color-accent-fg:#12102B;--color-accent-subtle:#FDF3C6;
--color-success-fg:#027A48;--color-success-bg:#D1FADF;--color-warning-fg:#B54708;--color-warning-bg:#FFEAD5;--color-error-fg:#B42318;--color-error-bg:#FEE4E2;--color-error-border:#F97066;
--color-info-fg:#175CD3;--color-info-bg:#D1E9FF;--color-focus-ring:#4A3F8F;--color-focus-offset:#F5F2EC;
--surface-text-primary:#12102B;--surface-text-secondary:#55524B;--surface-text-tertiary:#6B675E;--surface-text-link:#3F3475;
--surface-border-subtle:#EAE6DD;--surface-border-default:#D9D4C9;--surface-primary-default:#1D1740;--surface-primary-fg:#F5F2EC;
--surface-focus-ring:#4A3F8F;--surface-focus-offset:#FFFFFF;
color-scheme:light;
}
[data-theme='dark']{
--color-bg-canvas:#12102B;--color-bg-surface:#1D1740;--color-bg-surface-raised:#241D4B;--color-bg-subtle:#171232;
--color-bg-sunken:#0C0A1E;--color-bg-inverse:#F5F2EC;--color-bg-scrim:rgb(6 5 16 / 0.72);
--color-text-primary:#F5F2EC;--color-text-secondary:#C9C4DD;--color-text-tertiary:#ADA6C2;--color-text-disabled:#847BB0;--color-text-link:#F7D34B;--color-text-accent:#F7D34B;
--color-border-subtle:#241D4B;--color-border-default:#322A5C;--color-border-interactive:#7A72A0;--color-border-strong:#F5F2EC;
--color-border-inverse:rgb(18 16 43 / 0.14);
--color-on-inverse-primary:#12102B;--color-on-inverse-secondary:#55524B;--color-on-inverse-tertiary:#6B675E;
--color-on-inverse-link:#3F3475;--color-on-inverse-fill:rgb(18 16 43 / 0.06);--color-on-inverse-fill-hover:rgb(18 16 43 / 0.10);
--color-on-inverse-accent-subtle:#FDF3C6;--color-on-inverse-success:#027A48;--color-on-inverse-warning:#B54708;
--color-on-inverse-error:#B42318;--color-on-inverse-info:#175CD3;
--color-on-inverse-surface:#FFFFFF;--color-on-inverse-surface-primary:#12102B;--color-on-inverse-surface-secondary:#55524B;
--color-on-inverse-surface-tertiary:#6B675E;--color-on-inverse-surface-link:#3F3475;--color-on-inverse-surface-border:#EAE6DD;
--color-danger-solid:#FDA29B;--color-danger-solid-hover:#FECDCA;--color-danger-solid-fg:#55160C;
--color-primary-default:#F5F2EC;--color-primary-hover:#FFFFFF;--color-primary-active:#EAE6DD;--color-primary-fg:#12102B;
--color-accent-default:#F7D34B;--color-accent-hover:#FFE071;--color-accent-active:#F0C528;--color-accent-fg:#12102B;--color-accent-subtle:#412306;
--color-success-fg:#6CE9A6;--color-success-bg:#05603A;--color-warning-fg:#FEB273;--color-warning-bg:#7E2410;--color-error-fg:#FDA29B;--color-error-bg:#7A271A;--color-error-border:#D92D20;
--color-info-fg:#84CAFF;--color-info-bg:#194185;--color-focus-ring:#F7D34B;--color-focus-offset:#12102B;
--surface-text-primary:#F5F2EC;--surface-text-secondary:#C9C4DD;--surface-text-tertiary:#ADA6C2;--surface-text-link:#F7D34B;
--surface-border-subtle:#241D4B;--surface-border-default:#322A5C;--surface-primary-default:#F5F2EC;--surface-primary-fg:#12102B;
--surface-focus-ring:#F7D34B;--surface-focus-offset:#1D1740;
color-scheme:dark;
}
:root{
--font-display:"TikTok Sans","TikTok Sans Fallback",ui-sans-serif,system-ui,sans-serif;
--font-sans:"Geist","Geist Fallback",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,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;
--text-display-2xl:clamp(3rem,2.3785rem + 2.652vw,4.5rem);
--text-display-xl:clamp(2.5rem,1.982rem + 2.210vw,3.75rem);
--text-display-lg:clamp(2.25rem,1.9392rem + 1.326vw,3rem);
--text-display-md:clamp(2rem,1.7928rem + 0.884vw,2.5rem);
--text-heading-xl:clamp(1.75rem,1.6464rem + 0.442vw,2rem);
--text-heading-lg:clamp(1.5rem,1.3964rem + 0.442vw,1.75rem);
--text-heading-md:clamp(1.25rem,1.1464rem + 0.442vw,1.5rem);
--text-heading-sm:clamp(1.125rem,1.0732rem + 0.221vw,1.25rem);
--text-heading-xs:clamp(1rem,0.9482rem + 0.221vw,1.125rem);
--text-body-xl:1.25rem;
--text-body-lg:1.125rem;
--text-body-md:1rem;
--text-body-sm:0.875rem;
--text-body-xs:0.8125rem;
--text-label-lg:1rem;
--text-label-md:0.875rem;
--text-label-sm:0.75rem;
--text-eyebrow:0.75rem;
--text-stat:clamp(2.5rem,1.8785rem + 2.652vw,4rem);
--text-mono-sm:0.8125rem;
--lh-relaxed:1.65;
--lh-loose:1.70;
--ls-wide:0.005em;
--ls-wider:0.010em;
--ls-caps:0.060em;
--ls-widest:0.140em;
--measure-prose:68ch;
--measure-narrow:52ch;
}
:root{
--space-0-5:0.125rem;--space-1:0.25rem;--space-1-5:0.375rem;
--space-2:0.5rem;--space-2-5:0.625rem;--space-3:0.75rem;--space-4:1rem;
--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-10:2.5rem;
--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-30:7.5rem;--space-40:10rem;
--gutter:1.25rem;--section-py:var(--space-20);--header-height:4.5rem;
}
@media (min-width:640px){:root{--gutter:2rem;--section-py:var(--space-24);}}
@media (min-width:1024px){:root{--gutter:3rem;--section-py:var(--space-30);}}
@media (min-width:1280px){:root{--section-py:var(--space-40);}}
:root{
--size-control-sm:2.25rem;--size-control-md:2.75rem;--size-control-lg:3.25rem;--size-control-xl:3.75rem;
--size-icon-xl:2rem;
--size-avatar-sm:2rem;}
:root{
--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;
--radius-2xl:1.25rem;--radius-3xl:1.75rem;--radius-full:9999px;
}
:root{
--border-1:1px;
--border-2:2px;
--border-3:3px;
}
:root{
--z-header:200;
--z-overlay:400;
--z-modal:500;
--z-max:9999;
}
:root{
--shadow-none:0 0 0 0 rgb(0 0 0 / 0);
--shadow-xs:0 1px 2px 0 rgb(18 16 43 / 0.06);
--shadow-sm:0 1px 3px 0 rgb(18 16 43 / 0.08),0 1px 2px -1px rgb(18 16 43 / 0.06);
--shadow-md:0 4px 12px -2px rgb(18 16 43 / 0.08),0 2px 4px -2px rgb(18 16 43 / 0.05);
--shadow-lg:0 12px 24px -6px rgb(18 16 43 / 0.10),0 4px 8px -4px rgb(18 16 43 / 0.06);
--shadow-xl:0 24px 48px -12px rgb(18 16 43 / 0.14);
--shadow-accent:0 8px 24px -6px rgb(247 211 75 / 0.45);
--shadow-inner:inset 0 1px 2px 0 rgb(18 16 43 / 0.06);
--focus-halo:0 0 0 0 rgb(0 0 0 / 0);
}
[data-theme='dark']{
--shadow-sm:0 1px 3px 0 rgb(0 0 0 / 0.40);
--shadow-md:0 4px 12px -2px rgb(0 0 0 / 0.45);
--shadow-lg:0 12px 24px -6px rgb(0 0 0 / 0.50);
--shadow-xl:0 24px 48px -12px rgb(0 0 0 / 0.60);
}
:root{
--duration-fast:120ms;
--duration-base:180ms;
--duration-slow:260ms;
--duration-slower:400ms;
--duration-marquee:40s;
--ease-linear:linear;
--ease-standard:cubic-bezier(0.2,0,0,1);
--ease-out:cubic-bezier(0.16,1,0.3,1);
--ease-spring:cubic-bezier(0.34,1.56,0.64,1);
}
@media (prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important;}
}
:root{
--container-prose:42.5rem;
--container-narrow:52.5rem;
--container-max:90rem;
--container-wide:90rem;
}
@layer reset, tokens, base, layout, components, utilities, overrides;
@layer reset{
*,*::before,*::after{box-sizing:border-box;}
*{margin:0;}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;
scroll-padding-block-start:calc(var(--header-height) + var(--space-6));scrollbar-gutter:stable;
-moz-tab-size:2;tab-size:2;}
body{min-block-size:100dvh;font-family:var(--font-sans);font-size:var(--text-body-md);
line-height:var(--lh-loose);font-weight:var(--fw-regular);font-synthesis:none;
color:var(--color-text-secondary);background-color:var(--color-bg-canvas);
-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
text-rendering:optimizeLegibility;overflow-x:clip;}
img,svg,video,canvas,picture{display:block;max-inline-size:100%;block-size:auto;}
input,button,textarea,select{font:inherit;color:inherit;}
button{background:none;border:0;cursor:pointer;}
p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word;}
h1,h2,h3,h4{text-wrap:balance;}
p,li{text-wrap:pretty;}
ul[role='list'],ol[role='list']{list-style:none;padding:0;}
:target{scroll-margin-block-start:calc(var(--header-height) + var(--space-6));}
::selection{background-color:var(--color-accent-default);color:var(--color-accent-fg);}
}
@layer base{
h1{font-family:var(--font-display);font-size:var(--text-display-xl);line-height:1.05;letter-spacing:-0.028em;font-weight:var(--fw-semibold);color:var(--color-text-primary);}
h2{font-family:var(--font-display);font-size:var(--text-display-lg);line-height:1.08;letter-spacing:-0.024em;font-weight:var(--fw-medium);color:var(--color-text-primary);}
h3{font-family:var(--font-display);font-size:var(--text-heading-xl);line-height:1.2;letter-spacing:-0.018em;font-weight:var(--fw-medium);color:var(--color-text-primary);}
h4{font-family:var(--font-display);font-size:var(--text-heading-lg);line-height:1.25;letter-spacing:-0.014em;font-weight:var(--fw-medium);color:var(--color-text-primary);}
h5{font-family:var(--font-display);font-size:var(--text-heading-sm);line-height:1.35;font-weight:var(--fw-medium);color:var(--color-text-primary);}
h6{font-size:var(--text-label-md);text-transform:uppercase;letter-spacing:var(--ls-caps);font-weight:var(--fw-semibold);color:var(--color-text-tertiary);}
a{color:var(--color-text-link);text-decoration-thickness:1px;text-underline-offset:0.2em;transition:color var(--duration-fast) var(--ease-standard);}
a:hover{text-decoration-thickness:2px;}
strong,b{font-weight:var(--fw-bold);color:var(--color-text-primary);}
small{font-size:var(--text-body-xs);color:var(--color-text-tertiary);}
hr{border:0;block-size:1px;background:var(--color-border-subtle);}
code,kbd,samp{font-family:var(--font-mono);font-size:var(--text-mono-sm);}
:focus{outline:none;}
:focus-visible{outline:var(--border-2) solid var(--color-focus-ring);outline-offset:var(--space-0-5);border-radius:inherit;}
[data-scheme='inverse']{--color-focus-offset:var(--color-bg-inverse);
--surface-text-primary:var(--color-on-inverse-surface-primary);--surface-text-secondary:var(--color-on-inverse-surface-secondary);
--surface-text-tertiary:var(--color-on-inverse-surface-tertiary);--surface-text-link:var(--color-on-inverse-surface-link);
--surface-border-subtle:var(--color-on-inverse-surface-border);--surface-border-default:var(--color-on-inverse-surface-border);
--surface-primary-default:var(--color-on-inverse-surface-primary);--surface-primary-fg:var(--color-on-inverse-surface);
--surface-focus-ring:var(--color-on-inverse-surface-primary);--surface-focus-offset:var(--color-on-inverse-surface);}
.card{--color-focus-offset:var(--color-bg-surface);}
[data-surface='subtle']{--color-focus-offset:var(--color-bg-subtle);}
[data-surface='accent']{--color-focus-offset:var(--color-accent-default);}
[data-surface='inverse']{--color-focus-offset:var(--color-bg-inverse);}
.modal{--color-focus-offset:var(--color-bg-surface-raised);}
@media (forced-colors:active){:focus-visible{outline:var(--border-3) solid Highlight;outline-offset:2px;}}
}
@layer utilities{
:root{--stack-gap:var(--space-4);--cluster-gap:var(--space-3);}
.visually-hidden:not(:focus):not(:active){clip-path:inset(50%);block-size:1px;inline-size:1px;overflow:hidden;position:absolute;white-space:nowrap;}
.skip-link{position:absolute;inset-block-start:var(--space-2);inset-inline-start:var(--space-2);z-index:var(--z-max);
padding:var(--space-3) var(--space-5);border-radius:var(--radius-full);background:var(--color-primary-default);color:var(--color-primary-fg);
font:var(--fw-medium) var(--text-label-md)/1.4 var(--font-sans);transform:translateY(-200%);transition:transform var(--duration-fast) var(--ease-out);}
.skip-link:focus-visible{transform:translateY(0);}
[hidden]{display:none !important;}
.stack>*+*{margin-block-start:var(--stack-gap,var(--space-4));}
.stack-2{--stack-gap:var(--space-2);}.stack-3{--stack-gap:var(--space-3);}.stack-4{--stack-gap:var(--space-4);}
.stack-5{--stack-gap:var(--space-5);}.stack-6{--stack-gap:var(--space-6);}.stack-8{--stack-gap:var(--space-8);}
.stack-12{--stack-gap:var(--space-12);}.stack-16{--stack-gap:var(--space-16);}
.cluster{display:flex;flex-wrap:wrap;gap:var(--cluster-gap,var(--space-3));align-items:center;}
.cluster--between{justify-content:space-between;}
.measure{max-inline-size:var(--measure-prose);}
.measure--narrow{max-inline-size:var(--measure-narrow);}
.center-col{margin-inline:auto;text-align:center;}
.container{inline-size:100%;max-inline-size:var(--container-max);margin-inline:auto;padding-inline:var(--gutter);}
.container--narrow{max-inline-size:var(--container-narrow);}
.container--prose{max-inline-size:var(--container-prose);}
.container--wide{max-inline-size:var(--container-wide);}
.full-bleed{inline-size:100vw;margin-inline:calc(50% - 50vw);}
.eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-eyebrow);line-height:1;
letter-spacing:var(--ls-widest);text-transform:uppercase;font-weight:var(--fw-semibold);color:var(--color-text-primary);}
.eyebrow::before{content:'';flex:none;inline-size:0.5rem;block-size:0.5rem;background:var(--color-accent-default);}
}
@layer layout{
.section{padding-block:var(--section-py);position:relative;isolation:isolate;background-color:var(--color-bg-canvas);}
.section--tight{padding-block:calc(var(--section-py) * 0.6);}
.section--loose{padding-block:calc(var(--section-py) * 1.35);}
.section--surface{background-color:var(--color-bg-surface);}
.section--inverse,[data-scheme='inverse']{
background-color:var(--color-bg-inverse);
--color-text-primary:var(--color-on-inverse-primary);--color-text-secondary:var(--color-on-inverse-secondary);
--color-text-tertiary:var(--color-on-inverse-tertiary);--color-text-link:var(--color-on-inverse-link);--color-text-accent:var(--color-on-inverse-link);
--color-border-subtle:var(--color-border-inverse);--color-border-default:var(--color-border-inverse);
--color-border-interactive:var(--color-on-inverse-tertiary);--color-border-strong:var(--color-on-inverse-primary);
--color-primary-default:var(--color-on-inverse-primary);--color-primary-hover:var(--color-on-inverse-primary);
--color-primary-active:var(--color-on-inverse-secondary);--color-primary-fg:var(--color-bg-inverse);
--color-bg-surface:var(--color-on-inverse-fill);--color-bg-surface-raised:var(--color-on-inverse-fill-hover);
--color-bg-subtle:var(--color-on-inverse-fill);--color-bg-sunken:var(--color-on-inverse-fill-hover);
--color-accent-subtle:var(--color-on-inverse-accent-subtle);
--color-success-fg:var(--color-on-inverse-success);--color-warning-fg:var(--color-on-inverse-warning);
--color-error-fg:var(--color-on-inverse-error);--color-info-fg:var(--color-on-inverse-info);
--color-focus-ring:var(--color-on-inverse-primary);--color-focus-offset:var(--color-bg-inverse);
color:var(--color-text-secondary);
}
[data-surface]{--color-text-primary:var(--surface-text-primary);--color-text-secondary:var(--surface-text-secondary);
--color-text-tertiary:var(--surface-text-tertiary);--color-text-link:var(--surface-text-link);
--color-border-subtle:var(--surface-border-subtle);--color-border-default:var(--surface-border-default);
--color-primary-default:var(--surface-primary-default);--color-primary-fg:var(--surface-primary-fg);
--color-focus-ring:var(--surface-focus-ring);--color-focus-offset:var(--surface-focus-offset);}
[data-surface='inverse']{--color-text-primary:var(--color-on-inverse-primary);--color-text-secondary:var(--color-on-inverse-secondary);
--color-text-tertiary:var(--color-on-inverse-tertiary);--color-text-link:var(--color-on-inverse-link);
--color-border-subtle:var(--color-border-inverse);--color-border-default:var(--color-border-inverse);
--color-primary-default:var(--color-on-inverse-primary);--color-primary-fg:var(--color-bg-inverse);
--color-focus-ring:var(--color-on-inverse-primary);--color-focus-offset:var(--color-bg-inverse);color:var(--color-text-secondary);}
.grid{display:grid;gap:var(--space-6);grid-template-columns:repeat(4,minmax(0,1fr));}
@media (min-width:768px){.grid{grid-template-columns:repeat(8,minmax(0,1fr));}}
@media (min-width:1024px){.grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-8);}}
.grid--cards{display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));}
@media (min-width:1024px){.grid--cards{gap:var(--space-8);}}
.split{display:grid;gap:var(--space-8);align-items:center;}
@media (min-width:1024px){.split{grid-template-columns:1fr 1fr;gap:var(--space-16);}
.split--wide-start{grid-template-columns:1.25fr 1fr;}.split--wide-end{grid-template-columns:1fr 1.25fr;}}
}
@layer components{
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);
block-size:var(--size-control-md);min-inline-size:4rem;padding-inline:var(--space-5);border-radius:var(--radius-sm);
border:var(--border-1) solid transparent;background-color:transparent;color:var(--color-text-primary);
box-shadow:var(--focus-halo),var(--shadow-none);font-family:var(--font-sans);font-size:var(--text-label-md);
font-weight:var(--fw-medium);letter-spacing:var(--ls-wide);line-height:1;white-space:nowrap;text-decoration:none;
cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;
transition:background-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),
border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-base) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);}
.btn--accent{background-color:var(--color-accent-default);color:var(--color-accent-fg);box-shadow:var(--focus-halo),var(--shadow-xs);}
.btn--primary{background-color:var(--color-primary-default);color:var(--color-primary-fg);box-shadow:var(--focus-halo),var(--shadow-xs);}
.btn--secondary{background-color:var(--color-bg-surface);color:var(--color-text-primary);border-color:var(--color-border-interactive);box-shadow:var(--focus-halo),var(--shadow-xs);}
.btn--outline{border-color:var(--color-border-strong);}
.btn--ghost{color:var(--color-text-secondary);}
.btn--link{color:var(--color-text-link);block-size:auto;padding-inline:0;min-inline-size:0;text-decoration:underline;text-underline-offset:0.25em;}
.btn--danger{background-color:var(--color-danger-solid);color:var(--color-danger-solid-fg);box-shadow:var(--focus-halo),var(--shadow-xs);}
.btn--sm{block-size:var(--size-control-sm);padding-inline:var(--space-4);gap:var(--space-1-5);}
.btn--lg{block-size:var(--size-control-lg);padding-inline:var(--space-7);font-size:var(--text-label-lg);gap:var(--space-2-5);}
.btn--xl{block-size:var(--size-control-xl);padding-inline:var(--space-8);font-size:var(--text-label-lg);gap:var(--space-3);}
.btn--icon-only{inline-size:var(--size-control-md);min-inline-size:0;padding-inline:0;}
.btn--icon-only.btn--sm{inline-size:var(--size-control-sm);}
.btn--icon-only.btn--lg{inline-size:var(--size-control-lg);}
.btn--icon-only.btn--xl{inline-size:var(--size-control-xl);}
.btn--icon-only.btn--sm::before{content:'';position:absolute;inset:-4px;border-radius:inherit;}
.btn--full{inline-size:100%;}
@media (hover:hover) and (pointer:fine){
.btn:not([disabled]):not([data-loading]):hover{transform:translateY(-1px);}
.btn--accent:hover{background-color:var(--color-accent-hover);box-shadow:var(--focus-halo),var(--shadow-accent);}
.btn--primary:hover{background-color:var(--color-primary-hover);box-shadow:var(--focus-halo),var(--shadow-sm);}
.btn--secondary:hover{background-color:var(--color-bg-subtle);border-color:var(--color-border-strong);}
.btn--outline:hover{background-color:var(--color-bg-subtle);}
.btn--ghost:hover{background-color:var(--color-bg-subtle);color:var(--color-text-primary);}
.btn--danger:hover{background-color:var(--color-danger-solid-hover);}
}
.btn:not([disabled]):active{transform:translateY(0) scale(0.98);transition-timing-function:var(--ease-spring);}
.btn--accent:active{background-color:var(--color-accent-active);box-shadow:var(--focus-halo),var(--shadow-inner);}
.btn--primary:active{background-color:var(--color-primary-active);}
.btn:is([disabled],[data-disabled],[aria-disabled='true']){background-color:var(--color-bg-sunken);color:var(--color-text-disabled);border-color:transparent;box-shadow:var(--focus-halo),var(--shadow-none);cursor:not-allowed;transform:none;}
.btn[data-disabled]{pointer-events:auto;}
.btn[data-loading]{cursor:progress;pointer-events:none;}
.btn[data-loading] .btn__label{opacity:0;}
.btn[data-loading] .btn__spinner{opacity:1;}
.btn__spinner{position:absolute;inline-size:1rem;block-size:1rem;opacity:0;border:2px solid currentColor;
border-block-start-color:transparent;border-radius:var(--radius-full);animation:btn-spin 700ms var(--ease-linear) infinite;
transition:opacity var(--duration-fast) var(--ease-standard);}
@keyframes btn-spin{to{transform:rotate(360deg);}}
.field{display:flex;flex-direction:column;gap:var(--space-2);}
.field__label{font-size:var(--text-label-md);font-weight:var(--fw-medium);letter-spacing:var(--ls-wide);color:var(--color-text-primary);}
.field__required{color:var(--color-text-tertiary);font-weight:var(--fw-regular);}
.input{inline-size:100%;block-size:var(--size-control-md);padding-inline:var(--space-4);border-radius:var(--radius-lg);
border:var(--border-1) solid var(--color-border-interactive);background-color:var(--color-bg-surface);color:var(--color-text-primary);
font-size:var(--text-body-md);box-shadow:var(--focus-halo),var(--shadow-xs);
transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),background-color var(--duration-fast) var(--ease-standard);}
.input::placeholder{color:var(--color-text-tertiary);}
.input:hover:not(:focus):not([disabled]){border-color:var(--color-border-strong);}
.input:focus{outline:var(--border-2) solid var(--color-focus-ring);outline-offset:var(--space-0-5);border-color:var(--color-focus-ring);}
.input[aria-invalid='true']{border-color:var(--color-error-border);}
.input[aria-invalid='true']:focus{outline-color:var(--color-error-fg);border-color:var(--color-error-fg);}
.input[disabled]{background-color:var(--color-bg-sunken);color:var(--color-text-disabled);border-color:var(--color-border-subtle);box-shadow:var(--focus-halo),var(--shadow-none);cursor:not-allowed;}
.input[readonly]{border-color:var(--color-border-subtle);background-color:var(--color-bg-subtle);}
.input--filled{background-color:var(--color-bg-subtle);border-color:transparent;box-shadow:var(--focus-halo),var(--shadow-none);}
.input--underline{border-radius:0;border-inline:0;border-block-start:0;background:transparent;box-shadow:var(--focus-halo),var(--shadow-none);padding-inline:0;}
.input--sm{block-size:var(--size-control-sm);font-size:var(--text-body-sm);border-radius:var(--radius-md);}
.input--lg{block-size:var(--size-control-lg);padding-inline:var(--space-5);}
textarea.input{block-size:auto;padding-block:var(--space-3);line-height:var(--lh-relaxed);resize:vertical;}
.field__help{font-size:var(--text-body-sm);color:var(--color-text-tertiary);}
.field__error{font-size:var(--text-body-sm);color:var(--color-error-fg);display:flex;align-items:flex-start;gap:var(--space-1-5);}
.field__addon{position:absolute;display:flex;align-items:center;color:var(--color-text-tertiary);pointer-events:none;}
.field__control{position:relative;display:flex;align-items:center;}
.field__control .field__addon--leading{inset-inline-start:var(--space-4);}
.field__control .field__addon--trailing{inset-inline-end:var(--space-4);}
.field__control:has(.field__addon--leading) .input{padding-inline-start:var(--space-10);}
.field__control:has(.field__addon--trailing) .input{padding-inline-end:var(--space-10);}
.card-shell{container-type:inline-size;display:grid;grid-template-rows:1fr;min-inline-size:0;}
.card-shell>.card{block-size:100%;}
.card{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-8);border-radius:var(--radius-2xl);
background-color:var(--color-bg-surface);border:var(--border-1) solid transparent;box-shadow:var(--focus-halo),var(--shadow-sm);
position:relative;overflow:clip;overflow-clip-margin:4px;
transition:transform var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),border-color var(--duration-fast) var(--ease-standard);}
.card--outlined{box-shadow:var(--focus-halo),var(--shadow-none);border-color:var(--color-border-default);}
.card--subtle{box-shadow:var(--focus-halo),var(--shadow-none);background-color:var(--color-bg-subtle);}
.card--inverse{background-color:var(--color-bg-inverse);box-shadow:var(--focus-halo),var(--shadow-lg);}
.card--accent{background-color:var(--color-accent-default);color:var(--color-accent-fg);box-shadow:var(--focus-halo),var(--shadow-xs);}
.card--p-none{padding:0;}.card--p-sm{padding:var(--space-6);}.card--p-lg{padding:var(--space-10);}
.card__media{margin:calc(var(--space-8) * -1) calc(var(--space-8) * -1) 0;aspect-ratio:4/3;}
.card__media>img{inline-size:100%;block-size:100%;object-fit:cover;}
.card__eyebrow{font-size:var(--text-eyebrow);font-weight:var(--fw-semibold);letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--color-text-tertiary);}
.card__title{font-family:var(--font-display);font-size:var(--text-heading-sm);font-weight:var(--fw-medium);line-height:1.35;letter-spacing:-0.008em;color:var(--color-text-primary);}
.card__description{font-size:var(--text-body-sm);color:var(--color-text-secondary);}
.card__footer{margin-block-start:auto;padding-block-start:var(--space-6);display:flex;align-items:center;gap:var(--space-3);}
@media (hover:hover) and (pointer:fine){.card--interactive:hover{transform:translateY(-4px);box-shadow:var(--focus-halo),var(--shadow-md);}}
.card--interactive:active{transform:translateY(-1px);box-shadow:var(--focus-halo),var(--shadow-sm);}
.card--interactive:has(:focus-visible){outline:var(--border-2) solid var(--color-focus-ring);outline-offset:var(--space-0-5);box-shadow:0 0 0 var(--space-0-5) var(--color-focus-offset),var(--shadow-sm);}
.card--interactive :focus-visible{outline:none;box-shadow:none;}
.card__link::after{content:'';position:absolute;inset:0;}
.card__link:focus-visible{outline:none;}
.modal__scrim{position:fixed;inset:0;z-index:var(--z-overlay);background-color:var(--color-bg-scrim);backdrop-filter:blur(4px);animation:fade-in var(--duration-slow) var(--ease-out);}
.modal{position:fixed;z-index:var(--z-modal);inset-block-start:50%;inset-inline-start:50%;translate:-50% -50%;
inline-size:calc(100vw - 2 * var(--gutter));max-inline-size:32rem;max-block-size:calc(100dvh - 2 * var(--space-12));
display:flex;flex-direction:column;padding:var(--space-8);gap:var(--space-6);border-radius:var(--radius-3xl);
background-color:var(--color-bg-surface-raised);box-shadow:var(--focus-halo),var(--shadow-xl);overflow-y:auto;
overscroll-behavior:contain;animation:modal-in var(--duration-slower) var(--ease-out);}
.modal--sm{max-inline-size:24rem;padding:var(--space-6);}.modal--md{max-inline-size:32rem;}
.modal--lg{max-inline-size:40rem;padding:var(--space-10);}.modal--xl{max-inline-size:56rem;padding:var(--space-12);}
.modal__header{display:flex;align-items:flex-start;gap:var(--space-4);justify-content:space-between;}
.modal__title{font-family:var(--font-display);font-size:var(--text-heading-lg);font-weight:var(--fw-medium);color:var(--color-text-primary);}
.modal__description{font-size:var(--text-body-sm);color:var(--color-text-secondary);}
.modal__footer{display:flex;gap:var(--space-3);justify-content:flex-end;padding-block-start:var(--space-2);flex-direction:column-reverse;}
.modal__footer>.btn{inline-size:100%;}
@media (min-width:480px){.modal__footer{flex-direction:row;}.modal__footer>.btn{inline-size:auto;}}
@keyframes fade-in{from{opacity:0}to{opacity:1}}
@keyframes modal-in{from{opacity:0;scale:0.96}to{opacity:1;scale:1}}
.badge{display:inline-flex;align-items:center;gap:var(--space-1-5);block-size:1.5rem;padding-inline:var(--space-2-5);
border-radius:var(--radius-full);border:var(--border-1) solid transparent;background-color:var(--color-bg-sunken);color:var(--color-text-primary);
font-size:var(--text-label-sm);font-weight:var(--fw-medium);letter-spacing:var(--ls-wider);line-height:1;white-space:nowrap;}
.badge--accent{background-color:var(--color-accent-subtle);color:var(--color-text-accent);}
.badge--success{background-color:var(--color-success-bg);color:var(--color-success-fg);}
.badge--warning{background-color:var(--color-warning-bg);color:var(--color-warning-fg);}
.badge--error{background-color:var(--color-error-bg);color:var(--color-error-fg);}
.badge--info{background-color:var(--color-info-bg);color:var(--color-info-fg);}
.badge--outline{background-color:transparent;border-color:var(--color-border-default);color:var(--color-text-secondary);}
.badge--solid{background-color:var(--color-primary-default);color:var(--color-primary-fg);}
.badge--sm{block-size:1.25rem;padding-inline:var(--space-2);}
.badge--lg{block-size:1.75rem;padding-inline:var(--space-3);font-size:var(--text-label-md);}
.badge__dot{inline-size:0.375rem;block-size:0.375rem;border-radius:var(--radius-full);background-color:currentColor;flex:none;}
.badge--interactive{cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard);}
.badge--interactive[aria-pressed='true']{background-color:var(--color-primary-default);color:var(--color-primary-fg);}
.badge--interactive[disabled]{opacity:0.5;cursor:not-allowed;}
.accordion__item{border-bottom:var(--border-1) solid var(--color-border-subtle);}
.accordion__trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);
padding-block:var(--space-5);text-align:start;font-family:var(--font-display);font-size:var(--text-heading-xs);
font-weight:var(--fw-medium);color:var(--color-text-primary);cursor:pointer;}
.accordion__panel{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows var(--duration-slow) var(--ease-out),visibility var(--duration-slow) var(--ease-out);}
.accordion__panel[data-state='open']{grid-template-rows:1fr;visibility:visible;}
.accordion__panel-inner{overflow:clip;overflow-clip-margin:4px;min-block-size:0;}
.accordion__panel-inner>p{padding-block-end:var(--space-5);color:var(--color-text-secondary);font-size:var(--text-body-sm);max-inline-size:var(--measure-narrow);}
.accordion__chevron{transition:rotate var(--duration-slow) var(--ease-out);flex:none;}
[aria-expanded='true'] .accordion__chevron{rotate:180deg;}
.stat-block{display:flex;flex-direction:column;gap:var(--space-1);}
.stat-block__value{font-family:var(--font-display);font-size:var(--text-stat);line-height:1;letter-spacing:-0.030em;
font-weight:var(--fw-semibold);color:var(--color-text-primary);font-variant-numeric:tabular-nums;}
.stat-block__affix{font-size:0.6em;}
.stat-block__label{font-size:var(--text-body-sm);color:var(--color-text-tertiary);}
.stat-row{display:flex;flex-direction:column;}
.stat-row__item{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);padding-block:var(--space-5);}
.stat-row__item+.stat-row__item{border-block-start:var(--border-1) solid var(--color-border-subtle);}
.stat-row__value{font-family:var(--font-display);font-size:var(--text-display-md);font-weight:var(--fw-medium);color:var(--color-text-primary);font-variant-numeric:tabular-nums;}
.stat-row__label{font-size:var(--text-body-xs);color:var(--color-text-tertiary);max-inline-size:14ch;text-align:end;}
.testimonial{display:flex;flex-direction:column;gap:var(--space-6);}
.testimonial__quote{font-family:var(--font-display);font-size:var(--text-heading-md);font-weight:var(--fw-medium);
line-height:1.4;letter-spacing:-0.010em;color:var(--color-text-primary);}
.testimonial__footer{display:flex;align-items:center;gap:var(--space-3);}
.testimonial__avatar{inline-size:var(--size-avatar-sm);block-size:var(--size-avatar-sm);border-radius:var(--radius-full);object-fit:cover;flex:none;background:var(--color-bg-sunken);}
.testimonial__name{font-size:var(--text-label-md);font-weight:var(--fw-medium);color:var(--color-text-primary);}
.testimonial__role{font-size:var(--text-body-xs);color:var(--color-text-tertiary);}
.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.marquee__track{display:flex;gap:var(--space-16);animation:marquee var(--duration-marquee) var(--ease-linear) infinite;width:max-content;}
.marquee:hover .marquee__track{animation-play-state:paused;}
.marquee__item{flex:none;filter:grayscale(1);opacity:0.6;transition:opacity var(--duration-fast) var(--ease-standard),filter var(--duration-fast) var(--ease-standard);block-size:24px;}
.marquee__item:hover{filter:grayscale(0);opacity:1;}
@keyframes marquee{to{transform:translateX(-50%);}}
@media (prefers-reduced-motion:reduce){.marquee__track{animation:none;flex-wrap:wrap;justify-content:center;}}
.list-row{display:flex;flex-direction:column;}
.list-row__item{display:flex;align-items:flex-start;gap:var(--space-3);padding-block:var(--space-3);font-size:var(--text-body-md);color:var(--color-text-secondary);}
.list-row__item+.list-row__item{border-block-start:var(--border-1) solid var(--color-border-subtle);}
.list-row__marker{flex:none;margin-block-start:0.6em;inline-size:6px;block-size:6px;border-radius:var(--radius-full);background:var(--color-accent-default);}
.list-row__marker--check{margin-block-start:0.2em;color:var(--color-success-fg);}
.section-header{display:flex;flex-direction:column;gap:var(--space-4);}
.section-header--center{align-items:center;text-align:center;margin-inline:auto;}
.section-header__title{font-family:var(--font-display);font-size:var(--text-display-lg);color:var(--color-text-primary);}
.section-header__description{font-size:var(--text-body-lg);color:var(--color-text-secondary);max-inline-size:var(--measure-narrow);}
.site-header{position:fixed;inset-block-start:0;inset-inline:0;z-index:var(--z-header);block-size:var(--header-height);
display:flex;align-items:center;transition:background-color var(--duration-base) var(--ease-standard),box-shadow var(--duration-base) var(--ease-standard);}
.site-header__inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--space-6);width:100%;}
.site-header__logo{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:var(--text-heading-sm);color:var(--color-text-primary);letter-spacing:-0.01em;text-decoration:none;}
.site-header__nav{display:none;gap:var(--space-7);align-items:center;justify-content:center;}
@media (min-width:768px){.site-header__nav{display:flex;}}
.site-header__link{position:relative;font-size:var(--text-label-md);color:var(--color-text-secondary);text-decoration:none;padding-block:var(--space-1);transition:color var(--duration-fast) var(--ease-standard);}
.site-header__link::after{content:'';position:absolute;inset-inline:0;inset-block-end:-2px;block-size:2px;background:var(--color-accent-default);transform:scaleX(0);transform-origin:left;transition:transform var(--duration-fast) var(--ease-standard);}
.site-header__link:hover{color:var(--color-text-primary);}
.site-header__link:hover::after{transform:scaleX(1);}
.site-header__link[data-active='true']::after{transform:scaleX(1);}
.site-header--solid{background-color:var(--color-bg-canvas);}
.site-header--scrolled{box-shadow:var(--shadow-xl);background-color:var(--color-bg-canvas);block-size:calc(var(--header-height) - 12px);}
.site-header--pill{background:transparent;padding-block-start:var(--space-5);transition:padding var(--duration-base) var(--ease-standard);}
.site-header--pill .site-header__inner{background:var(--color-bg-surface);border-radius:var(--radius-2xl);box-shadow:var(--shadow-md);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-8);transition:box-shadow var(--duration-base) var(--ease-standard),padding var(--duration-base) var(--ease-standard);}
.site-header--pill.site-header--scrolled{padding-block-start:var(--space-3);}
.site-header--pill.site-header--scrolled .site-header__inner{box-shadow:var(--shadow-lg);}
.floating-card{position:absolute;background:var(--color-bg-surface);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);padding:var(--space-5);}
.page-header__media{aspect-ratio:21/9;overflow:hidden;}
.media-frame{border-radius:var(--radius-3xl);background:linear-gradient(155deg,#EAE6DD,#D9D4C9);position:relative;overflow:visible;}
.hl-accent{color:var(--color-text-accent);position:relative;}
.hl-accent::after{content:'';position:absolute;inset-inline:-0.05em;inset-block-end:0.05em;block-size:0.28em;background:var(--color-accent-default);opacity:0.35;z-index:-1;}
.hero-video{position:relative;isolation:isolate;min-block-size:100svh;display:flex;align-items:center;overflow:hidden;}
.hero-video__media{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;will-change:transform;}
.hero-video::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,rgb(18 16 43 / 0.86) 0%,rgb(18 16 43 / 0.6) 38%,rgb(18 16 43 / 0.22) 62%,rgb(18 16 43 / 0.05) 85%);}
.hero-video::after{content:'';position:absolute;inset-block-end:0;inset-inline:0;block-size:40%;z-index:-1;background:linear-gradient(to top,rgb(12 10 27 / 0.6),transparent);}
.hero-video__inner{position:relative;padding-block:calc(var(--header-height) + var(--space-16)) var(--space-16);width:100%;}
.hero-video__content{max-inline-size:48rem;color:var(--color-on-inverse-primary);animation:hero-rise 0.9s var(--ease-out) both;}
.hero-video__content .eyebrow{color:var(--color-on-inverse-link);}
.hero-video__content .eyebrow::before{background:var(--color-on-inverse-link);}
.hero-video__title{font-size:var(--text-display-2xl) !important;color:var(--color-on-inverse-primary);}
.hero-video__lead{color:var(--color-on-inverse-secondary);font-size:var(--text-body-lg);}
.hero-video .floating-card{color:var(--color-text-primary);animation:hero-rise 1.1s var(--ease-out) both;}
@keyframes hero-rise{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:translateY(0);}}
@media (prefers-reduced-motion:reduce){.hero-video__content,.hero-video .floating-card{animation:none;}.hero-video__media{will-change:auto;}}
@media (max-width:767px){.hero-video .floating-card{position:static;margin-block-start:var(--space-6);max-inline-size:none !important;}}
.icon-feature{display:flex;flex-direction:column;gap:var(--space-4);}
.icon-feature__icon{inline-size:var(--size-icon-xl);block-size:var(--size-icon-xl);border-radius:var(--radius-md);background:var(--color-accent-subtle);display:flex;align-items:center;justify-content:center;color:var(--color-text-accent);}
.icon-feature__title{font-family:var(--font-display);font-weight:var(--fw-medium);font-size:var(--text-heading-xs);color:var(--color-text-primary);}
.icon-feature__desc{font-size:var(--text-body-sm);color:var(--color-text-secondary);}
.texture-band{position:relative;isolation:isolate;}
.texture-band::before{content:'';position:absolute;inset:0;z-index:-1;background-image:repeating-linear-gradient(90deg,rgb(247 211 75 / 0.08) 0 1px,transparent 1px 34px);}
.newsletter{display:flex;border-radius:var(--radius-full);background:var(--color-on-inverse-fill);padding:var(--space-1);gap:var(--space-1);max-inline-size:22rem;}
.newsletter input{flex:1;background:transparent;border:0;padding-inline:var(--space-4);color:var(--color-text-primary);font-size:var(--text-body-sm);}
.newsletter input::placeholder{color:var(--color-text-tertiary);}
.hero{position:relative;min-block-size:min(38rem,80svh);display:flex;align-items:flex-end;overflow:hidden;
background-color:var(--color-bg-inverse);color:var(--color-on-inverse-primary);}
.hero__scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgb(18 16 43 / 0) 0%,rgb(18 16 43 / 0.75) 100%);}
.hero__content{position:relative;z-index:1;padding-block:var(--space-16);}
.hero__eyebrow{color:var(--color-on-inverse-link);}
.hero__title{font-family:var(--font-display);font-size:var(--text-display-2xl);color:var(--color-on-inverse-primary);max-inline-size:40ch;}
.hero__lead{font-size:var(--text-body-xl);color:var(--color-on-inverse-secondary);max-inline-size:var(--measure-narrow);}
.page-header{padding-block:calc(var(--section-py) * 0.9 + var(--header-height)) var(--space-12);border-bottom:var(--border-1) solid var(--color-border-subtle);background-color:var(--color-bg-canvas);}
.page-header__title{font-family:var(--font-display);font-size:var(--text-display-lg);color:var(--color-text-primary);max-inline-size:32ch;}
.page-header__lead{font-size:var(--text-body-lg);color:var(--color-text-secondary);max-inline-size:var(--measure-narrow);margin-block-start:var(--space-4);}
.site-footer{background:#12102B;padding-block:var(--space-16) var(--space-8);}
.site-footer__grid{display:grid;gap:var(--space-8);grid-template-columns:1fr;}
@media (min-width:640px){.site-footer__grid{grid-template-columns:repeat(2,1fr);}}
@media (min-width:1024px){.site-footer__grid{grid-template-columns:repeat(4,1fr);}}
.site-footer__heading{font-size:var(--text-label-sm);text-transform:uppercase;letter-spacing:var(--ls-caps);color:var(--color-text-tertiary);margin-block-end:var(--space-3);}
.site-footer__bottom{margin-block-start:var(--space-12);padding-block-start:var(--space-6);border-block-start:var(--border-1) solid var(--color-border-inverse);
display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between;font-size:var(--text-body-xs);color:var(--color-text-tertiary);}
.article{padding-block:var(--space-12);border-block-start:var(--border-1) solid var(--color-border-subtle);}
.article:first-of-type{border-block-start:none;}
.article__title{font-family:var(--font-display);font-size:var(--text-heading-xl);color:var(--color-text-primary);}
.article__tags{display:flex;gap:var(--space-2);margin-block:var(--space-3) var(--space-5);}
.article__body p{font-size:var(--text-body-md);color:var(--color-text-secondary);max-inline-size:var(--measure-prose);margin-block-end:var(--space-4);}
.article__body ul{max-inline-size:var(--measure-prose);}
.article--card{display:grid;grid-template-columns:1fr 420px;gap:var(--space-12);align-items:stretch;
padding:var(--space-12);border:var(--border-1) solid var(--color-border-subtle);border-radius:var(--radius-lg);
background-color:var(--color-bg-surface);box-shadow:var(--shadow-sm);}
.article--card:first-of-type{border-block-start:var(--border-1) solid var(--color-border-subtle);}
.article--card+.article--card{margin-block-start:var(--space-10);}
.article--card .article__media{order:2;inline-size:100%;block-size:auto;border-radius:var(--radius-md);overflow:hidden;}
.article--card .article__body p,.article--card .article__body ul{max-inline-size:none;}
@media (max-width:900px){.article--card{grid-template-columns:1fr;padding:var(--space-8);}.article--card .article__media{order:0;block-size:220px;}}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:min(21rem,82vw);gap:var(--space-5);overflow-x:auto;
overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;padding-inline-start:var(--gutter);padding-inline-end:var(--space-16);}
@media (min-width:1024px){.rail{grid-auto-columns:24rem;}}
.rail__item{scroll-snap-align:start;}
}
.card-stack{display:flex;flex-direction:column;gap:var(--space-10);padding-block-end:var(--space-16);}
.card-stack__item{position:sticky;top:calc(12vh + var(--stack-i) * 0.75rem);}
.card-stack__item>.article--card{margin-block-start:0;box-shadow:var(--shadow-lg);}
@media (max-width:900px){.card-stack__item{position:static;top:auto;}.card-stack__item>.article--card{box-shadow:var(--shadow-sm);}}
@media (prefers-reduced-motion:reduce){.card-stack__item{position:static;top:auto;}}
@media (prefers-reduced-motion:no-preference){
html.motion [data-reveal]{--m-dur:900ms;--m-ease:cubic-bezier(.16,1,.3,1)}
html.motion [data-reveal="words"] .m-w{display:inline-block;overflow:clip;padding-block-end:.14em;margin-block-end:-.14em;vertical-align:top}
html.motion [data-reveal="words"] .m-w>span{display:inline-block;transform:translateY(110%);transition:transform var(--m-dur) var(--m-ease);transition-delay:calc(var(--i,0)*55ms)}
html.motion [data-reveal="words"].is-in .m-w>span{transform:none}
html.motion [data-reveal="fade"]{opacity:0;transform:translateY(18px);transition:opacity 700ms ease,transform var(--m-dur) var(--m-ease)}
html.motion [data-reveal="fade"].is-in{opacity:1;transform:none}
html.motion [data-reveal="stagger"]>*{opacity:0;transform:translateY(20px);transition:opacity 640ms ease,transform 800ms var(--m-ease);transition-delay:calc(var(--i,0)*90ms)}
html.motion [data-reveal="stagger"].is-in>*{opacity:1;transform:none}
html.motion [data-reveal="mask"]>img{clip-path:inset(0 0 100% 0);transition:clip-path 1100ms var(--m-ease),transform 1500ms var(--m-ease)}
html.motion [data-reveal="mask"][data-from="left"]>img{clip-path:inset(0 100% 0 0)}
html.motion [data-reveal="mask"][data-from="right"]>img{clip-path:inset(0 0 0 100%)}
html.motion [data-reveal="mask"][data-from="down"]>img{clip-path:inset(100% 0 0 0)}
html.motion [data-reveal="mask"].is-in>img{clip-path:inset(0 0 0 0)}
html.motion [data-reveal="mask"]>img:not([data-parallax]){transform:scale(1.07)}
html.motion [data-reveal="mask"].is-in>img:not([data-parallax]){transform:none}
html.motion img[data-parallax]{will-change:transform}
}
@media (hover:hover) and (pointer:fine){
.article--card .article__media img{transition:transform 900ms cubic-bezier(.16,1,.3,1)}
.article--card:hover .article__media img{transform:scale(1.04)}
.icon-feature .icon-feature__icon{transition:background-color 260ms ease,transform 420ms cubic-bezier(.16,1,.3,1)}
.icon-feature:hover .icon-feature__icon{transform:translateY(-2px)}
[data-arrow]::after{content:'\2192';display:inline-block;margin-inline-start:.55em;transition:transform 380ms cubic-bezier(.16,1,.3,1)}
[data-arrow]:hover::after{transform:translateX(5px)}
}
@media (hover:none){[data-arrow]::after{content:'\2192';display:inline-block;margin-inline-start:.55em}}
[data-magnetic]{transition:transform 320ms cubic-bezier(.16,1,.3,1)}
.site-header__logo{display:flex;align-items:center}
.site-header__logo img{height:30px;width:auto;display:block}
.site-footer__heading img{height:34px;width:auto;display:block}
.intro{display:grid;gap:var(--space-8);align-items:start;border-block-start:1px solid var(--color-border-subtle);padding-block-start:var(--space-8)}
.intro__lede{font-family:var(--font-display);font-weight:300;font-size:clamp(1.75rem,3.2vw,2.75rem);line-height:1.22;letter-spacing:-0.01em;color:var(--color-text-primary);text-wrap:pretty;max-width:38ch}
.intro__note{max-width:52ch;text-wrap:pretty;padding-inline-start:var(--space-5);border-inline-start:1px solid var(--color-border-subtle)}
.split--center{align-items:center}
.media-frame>img{width:100%;height:100%;object-fit:cover;display:block}
.media-frame--square{aspect-ratio:1/1;overflow:hidden}
.media-frame--wide{aspect-ratio:4/3;overflow:hidden}
.media-frame--tall{height:100%;max-height:380px;min-height:240px;overflow:hidden;align-self:center}
.stack-narrow{max-width:var(--container-narrow);margin-inline:auto}
.text-center{text-align:center}
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-auto-rows:1fr;gap:var(--space-6);margin-block-start:var(--space-10)}
.services-grid .card{margin:0}
.card--span{grid-column:1/-1}
.card--span .article__body{column-count:3;column-gap:var(--space-8);column-width:22rem}
.job-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(24rem,1fr));gap:var(--space-6);align-items:start}
.job__toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);width:100%;text-align:start;background:none;border:0;cursor:pointer;padding:0;color:inherit}
.job__toggle svg{flex-shrink:0;transition:transform var(--duration-base) var(--ease-out)}
.job__toggle[aria-expanded=true] svg{transform:rotate(180deg)}
.job__location{font-size:var(--text-body-sm);color:var(--color-text-tertiary);margin-block-start:var(--space-2)}
.job__panel{margin-block-start:var(--space-5)}
.contact-details{margin-block-start:var(--space-10)}
.contact-details h2,.privacy-note h2{font-size:var(--text-heading-lg)}
.prose-list{display:flex;flex-direction:column;gap:var(--space-2);margin-block:var(--space-2) var(--space-4);padding-inline-start:var(--space-5);list-style:disc}
.emphasis{font-weight:var(--fw-medium);color:var(--color-text-primary)}
.form-error{font-size:var(--text-body-sm);color:var(--color-error-fg)}
.u-mt-3{margin-block-start:var(--space-3)}
.u-mt-4{margin-block-start:var(--space-4)}
.u-mt-5{margin-block-start:var(--space-5)}
.u-mt-6{margin-block-start:var(--space-6)}
.u-mt-8{margin-block-start:var(--space-8)}
.u-mt-10{margin-block-start:var(--space-10)}
.u-mt-12{margin-block-start:var(--space-12)}
.cookie-banner{position:fixed;inset-inline:0;inset-block-end:0;z-index:var(--z-overlay);display:flex;justify-content:flex-start;padding:var(--space-4);pointer-events:none}
.cookie-banner[hidden]{display:none}
.cookie-banner__panel{pointer-events:auto;width:100%;max-width:26rem;background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);padding:var(--space-6);box-shadow:0 12px 40px rgb(18 16 43 / .14);display:flex;flex-direction:column;gap:var(--space-4);align-items:flex-start;animation:cookie-rise 480ms var(--ease-out) both}
@keyframes cookie-rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.cookie-banner__panel{animation:none}}
.cookie-banner__eyebrow{font-size:var(--text-label-sm);letter-spacing:0.14em;text-transform:uppercase;color:var(--color-text-tertiary)}
.cookie-banner__text{font-size:var(--text-body-sm);line-height:1.6;color:var(--color-text-secondary);margin:0;text-wrap:pretty}
.cookie-banner__actions{display:flex;align-items:center;gap:var(--space-5);width:100%;margin-block-start:var(--space-1)}
.cookie-banner__decline{font-size:var(--text-label-sm);color:var(--color-text-tertiary);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:0.25em}
.cookie-banner__decline:hover{color:var(--color-text-primary)}
@media (min-width:640px){.cookie-banner{padding:var(--space-6)}}
@media (max-width:900px){.card--span .article__body{column-count:1}}
.footnote{font-size:var(--text-body-sm)}
.article__media>img{width:100%;height:100%;object-fit:cover;display:block}
.split>.card{align-self:stretch;height:100%}
.services-grid .card{display:flex;flex-direction:column}
.service__toggle{margin-block-start:auto;padding-block-start:var(--space-5);align-self:flex-start}
.service__more>p:first-child{margin-block-start:0}
.article--card{grid-template-columns:1fr 320px}
.article--card .article__media{block-size:340px;align-self:start}
@media (max-width:900px){.article--card{grid-template-columns:1fr}.article--card .article__media{block-size:220px}}
.hero-video__title{color:var(--color-accent-default)}
.media-anchor{position:relative}
.floating-card--quote{inset-inline-start:-1rem;inset-block-end:-1.25rem;max-inline-size:15rem}
.page-error{padding-block-start:var(--space-16)}
.site-footer a{text-decoration:none}
.site-footer a:hover{text-decoration:none;color:var(--color-text-primary)}
.site-footer__grid>div>.footnote{margin-block-start:var(--space-3);line-height:1.7}
.job__title{font-family:var(--font-display);font-size:var(--text-heading-lg);color:var(--color-text-primary)}
.card__icon{display:flex;align-items:center;justify-content:center;inline-size:2.75rem;block-size:2.75rem;border-radius:var(--radius-full);background:var(--color-bg-subtle);color:var(--color-text-secondary);margin-block-end:var(--space-4)}
.card__icon svg{inline-size:1.375rem;block-size:1.375rem}
.services-grid .card:hover .card__icon{background:var(--color-accent-default);color:var(--color-accent-fg);transition:background-color var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}
