:root{
--navy-900:#02203F;--navy-800:#0A2D57;--navy-700:#123B70;
--blue-700:#173C8C;--blue-600:#1F4FB8;--blue-500:#2E66D6;--blue-400:#5A8BE6;--blue-300:#93B3F0;--blue-200:#C6D6F6;--blue-100:#E4EBFA;--blue-50:#F1F4FC;
--silver-600:#6E7889;--silver-500:#8C96A6;--silver-400:#AEB6C3;--silver-300:#CBD1DA;--silver-200:#DEE2E9;--silver-100:#EDEFF3;
--frost-50:#EEF2F9;--frost-100:#E3EAF6;--frost-200:#D3DEF0;--cobalt-700:#24409C;--cobalt-600:#2F52B4;--cobalt-500:#3F69C8;--cobalt-400:#6E96DC;
--ink-900:#0A2142;--ink-700:#1E3A5F;--ink-500:#4A6385;--ink-400:#6E84A3;--white:#FFFFFF;
--success:#2E7D5B;--error:#B3261E;
--text-heading:var(--ink-900);--text-body:var(--ink-700);--text-muted:var(--ink-500);--text-subtle:var(--ink-400);
--text-accent:var(--blue-700);--text-on-dark:var(--white);--text-on-dark-muted:rgba(255,255,255,.72);
--surface-page:var(--white);--surface-tint:var(--frost-100);--surface-tint-strong:var(--blue-100);--surface-silver:var(--silver-100);--surface-dark:var(--navy-900);
--border-hairline:rgba(14,17,22,.55);--border-soft:var(--silver-300);--border-accent:var(--blue-700);--border-on-dark:rgba(255,255,255,.4);
--link:var(--blue-700);--link-hover:var(--navy-900);
--focus-ring:var(--blue-400);
--gradient-hero:linear-gradient(90deg,#0B1A4A 0%,#070F2C 45%,#060B22 100%);
--gradient-panel:linear-gradient(180deg,#1F4FB8 0%,#2E66D6 60%,#5A8BE6 100%);
--gradient-silver:linear-gradient(135deg,#EDEFF3 0%,#CBD1DA 45%,#E4EBFA 100%);
--gradient-frost:linear-gradient(160deg,#EEF2F9 0%,#E3EAF6 55%,#D6E1F2 100%);
--gradient-silver-blue:linear-gradient(150deg,#DEE2E9 0%,#C6D6F6 50%,#93B3F0 100%);
}
:root{
--font-display:'Inter',system-ui,sans-serif;
--font-body:'Arimo',Arial,sans-serif;
--weight-display:300;--weight-body:400;--weight-strong:700;
--tracking-normal:0;
--case-display:uppercase;
--fs-display-xl:104px;--lh-display-xl:0.98;
--fs-display:80px;--lh-display:1;
--fs-h1:56px;--lh-h1:1.05;
--fs-h2:40px;--lh-h2:1.1;
--fs-h3:28px;--lh-h3:1.15;
--fs-h4:20px;--lh-h4:1.2;
--fs-label:13px;--lh-label:1.2;
--fs-lead:22px;--lh-lead:1.35;
--fs-body:16px;--lh-body:1.4;
--fs-small:14px;--lh-small:1.35;
--fs-caption:12px;--lh-caption:1.3;
}
@media (max-width:1024px){:root{--fs-display-xl:80px;--fs-display:64px;--fs-h1:46px;--fs-h2:34px;--fs-h3:26px;}}
@media (max-width:640px){:root{--fs-display-xl:46px;--fs-display:42px;--fs-h1:34px;--fs-h2:28px;--fs-h3:22px;--fs-h4:18px;--fs-lead:18px;}}
:root{
--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:128px;--space-11:160px;
--container-max:1520px;--gutter:56px;--section-y:128px;
--radius-none:0;--radius-sm:2px;--radius-pill:999px;
--border-width:1px;
}
@media (max-width:1024px){:root{--gutter:32px;--section-y:96px;}}
@media (max-width:640px){:root{--gutter:20px;--section-y:72px;}}
:root{
--shadow-none:none;
--shadow-float:0 24px 48px -24px rgba(2,32,63,.28);
--ease-standard:cubic-bezier(.2,.7,.2,1);
--ease-slow:cubic-bezier(.16,1,.3,1);
--dur-fast:160ms;--dur-base:280ms;--dur-slow:900ms;
--texture-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
--texture-stipple:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='s'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.4' numOctaves='1' stitchTiles='stitch'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 0.86 0 0 0 0 0.92 0 0 0 0 1 0 0 0 9 -5.6'/%3E%3C/filter%3E%3Crect width='100%' height='100%' filter='url(%23s)'/%3E%3C/svg%3E");
--texture-paper:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='400'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='turbulence' baseFrequency='.012 .04' numOctaves='3' seed='7'/%3E%3CfeColorMatrix values='0 0 0 0 .78 0 0 0 0 .83 0 0 0 0 .92 0 0 0 .6 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23p)'/%3E%3C/svg%3E");
}
.ag-display{font-family:var(--font-display);font-weight:var(--weight-display);text-transform:uppercase;letter-spacing:var(--tracking-normal);color:var(--text-heading);margin:0}
.ag-body{font-family:var(--font-body);font-weight:var(--weight-body);font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:var(--tracking-normal);color:var(--text-body)}
.ag-texture-grain{position:relative;isolation:isolate}
.ag-texture-grain::after{content:"";position:absolute;inset:0;background-image:var(--texture-grain);mix-blend-mode:overlay;opacity:.35;pointer-events:none;z-index:1}
a{color:var(--link);text-decoration:none}
a:hover{color:var(--link-hover)}
:root{--font-display:'Urbanist',system-ui,sans-serif;--font-body:'Figtree',Arial,sans-serif;--weight-display:300;--weight-body:300}
html,body{margin:0;background:#fff}
body{font-family:var(--font-body)}
*{box-sizing:border-box}
@media (max-width:700px){:root{--gutter:20px}}
@media (max-width:1023px){[data-spacer]{display:none!important}div[data-spacer]+[data-span]{grid-column:1/-1!important}[data-span][data-cta]{grid-column:1/-1!important}}
@media (max-width:1000px){[data-span]{grid-column:auto!important}}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-stopped{overflow:hidden}
.footer-cookie-link{all:unset;cursor:pointer;color:rgba(255,255,255,.6);transition:color .3s,text-shadow .45s}
.footer-cookie-link:hover{color:#C9DBF5;text-shadow:0 0 8px rgba(150,180,255,.45)}

.cookie-banner{position:fixed;right:24px;bottom:24px;z-index:1000;width:min(380px,calc(100vw - 32px));padding:24px;display:flex;flex-direction:column;gap:18px;color:#fff;background:linear-gradient(160deg,rgba(18,40,96,.78),rgba(6,11,34,.86));border:1px solid rgba(255,255,255,.16);box-shadow:0 24px 60px -24px rgba(2,8,30,.6),inset 0 1px 0 rgba(255,255,255,.12);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);opacity:0;transform:translateY(16px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}
.cookie-banner.is-in{opacity:1;transform:none}
.cookie-banner p{margin:0;font-family:var(--font-body);font-weight:var(--weight-body);font-size:14px;line-height:1.45;color:#fff}
.cookie-banner a{color:#C9DBF5;text-decoration:underline;text-underline-offset:3px}
.cookie-banner .cookie-actions{display:flex;gap:10px}
.cookie-banner button{flex:1;cursor:pointer;padding:12px 16px;font-family:var(--font-display);font-weight:var(--weight-display);text-transform:uppercase;font-size:13px;letter-spacing:0;color:#fff;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.06);transition:background .3s,border-color .3s}
.cookie-banner button:hover{background:rgba(255,255,255,.16)}
.cookie-banner button.is-primary{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.4)}
.cookie-banner button.is-primary:hover{background:rgba(255,255,255,.26)}
.cookie-banner button:focus-visible{outline:2px solid #C9DBF5;outline-offset:2px}
@media (max-width:640px){.cookie-banner{right:16px;bottom:16px}}
@media (prefers-reduced-motion:reduce){.cookie-banner{transition:none}}
