@font-face{font-family:Manrope;src:url("../../fonts/Manrope-Regular.otf") format("opentype");font-display:swap;font-style:normal;font-weight:400}
@font-face{font-family:Manrope;src:url("../../fonts/Manrope-Medium.otf") format("opentype");font-display:swap;font-style:normal;font-weight:500}
@font-face{font-family:Manrope;src:url("../../fonts/Manrope-SemiBold.otf") format("opentype");font-display:swap;font-style:normal;font-weight:600}
@font-face{font-family:Manrope;src:url("../../fonts/Manrope-Bold.otf") format("opentype");font-display:swap;font-style:normal;font-weight:700}
:root {
  --font-family-site: Manrope, sans-serif;
  --font-display: var(--font-family-site);
  --font-body: var(--font-family-site);
  --color-blue-primary: #2962ff;
  --color-purple: #6a1bf5;
  --color-magenta: #d633ff;
  --color-bg-primary: #0a1128;
  --color-bg-secondary: #121c3a;
  --color-footer-surface: #0c1833;
  --color-border: #212b46;
  --color-white: #ffffff;
  --color-text-secondary: #dce2f0;
  --color-text-muted: #a2aec9;
  --color-yellow-strategic: #ffcc00;
  --logo-magenta: #ff58d6;
  --logo-blue: #4f75ff;
  --container-gutter: clamp(1.25rem, 4vw, 3rem);
  --site-container-max: 90rem;
  --container-content: 72rem;
  --container-reading: 46rem;
  --text-width-hero: 38.75rem;
  --text-width-body: 40.625rem;
  --text-width-card: 20rem;
  --hero-h1: 3.375rem;
  --hero-h1-line: 1.04;
  --hero-body: var(--font-size-body);
  --hero-body-line: 1.5;
  --hero-note: var(--font-size-trust);
  --hero-eyebrow: var(--font-size-metadata);
  --hero-button: var(--font-size-functional);
  --hero-trust: var(--font-size-trust);
  --hero-space-eyebrow-title: 1.125rem;
  --hero-space-title-body: 1.5rem;
  --hero-space-body-note: 1.125rem;
  --hero-space-note-actions: 1.375rem;
  --hero-space-actions-trust: 1rem;
  --industry-label: var(--font-size-label);
  --industry-icon: 2.125rem;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-size-h1: 3.5rem;
  --line-height-h1: 1.05;
  --letter-spacing-h1: -0.03em;
  --font-size-h2: 1.75rem;
  --line-height-h2: 1.12;
  --letter-spacing-h2: -0.03em;
  --font-size-h3: 1.375rem;
  --line-height-h3: 1.12;
  --font-size-h4: 1.125rem;
  --line-height-h4: 1.2;
  --font-size-h5: 1.0625rem;
  --line-height-h5: 1.25;
  --font-size-eyebrow: var(--font-size-metadata);
  --font-size-metadata: 0.8125rem;
  --font-size-label: 0.8125rem;
  --line-height-eyebrow: 1.35;
  --letter-spacing-eyebrow: 0.12em;
  --font-size-body-large: 1.125rem;
  --line-height-body-large: 1.45;
  --font-size-body: 1rem;
  --line-height-body: 1.5;
  --font-size-body-small: 0.875rem;
  --line-height-body-small: 1.4;
  --font-size-caption: var(--font-size-metadata);
  --line-height-caption: 1.3;
  --letter-spacing-caption: 0.08em;
  --font-size-button-hero: var(--font-size-functional);
  --font-size-functional: 0.9375rem;
  --font-size-trust: var(--font-size-functional);
  --font-size-button-secondary: var(--font-size-functional);
  --font-size-menu: var(--font-size-functional);
  --space-eyebrow-heading: 0.9375rem;
  --space-heading-body: 1.5rem;
  --space-body-principle: 1.125rem;
  --space-principle-actions: 1.5rem;
  --space-actions-disclaimer: 0.9375rem;
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4rem;
  --space-9: 6rem;
  /* Shared external rhythm between primary Home blocks. */
  --section-gap: clamp(2.25rem, 2.5vw, 3rem);
  /* Dedicated external breathing room before the Footer. */
  --cta-footer-gap: clamp(3rem, 4vw, 4.5rem);
  --section-space: 5.625rem;
  --radius-small: 0.5rem;
  --radius-medium: 0.875rem;
  --radius-pill: 999px;
  --border-width: 1px;
  --border-subtle: var(--border-width) solid var(--color-border);
  --transition-fast: 160ms ease;
  --transition-base: 240ms ease;
  --glow-primary: 0 0 2.5rem rgb(41 98 255 / 22%);
  --glow-focus: 0 0 0 0.25rem rgb(41 98 255 / 24%);
  --z-base: 0;
  --z-raised: 10;
  --z-navigation: 100;
  --z-overlay: 1000;
}

@media (min-width: 80rem) {
  :root {
    --font-size-metadata: clamp(0.75rem, calc(0.75rem + 0.078125vw), 0.875rem);
    --font-size-label: clamp(0.75rem, calc(0.6875rem + 0.15625vw), 0.9375rem);
    --font-size-body-small: clamp(0.875rem, calc(0.75rem + 0.15625vw), 1rem);
    --font-size-body: clamp(1rem, calc(0.8125rem + 0.234375vw), 1.1875rem);
    --font-size-body-large: clamp(1.0625rem, calc(0.875rem + 0.234375vw), 1.25rem);
    --font-size-functional: clamp(0.9375rem, calc(0.75rem + 0.234375vw), 1.125rem);
    --font-size-trust: clamp(1rem, calc(0.6875rem + 0.390625vw), 1.3125rem);
    --font-size-h2: clamp(1.5rem, calc(1.25rem + 0.625vw), 2.25rem);
    --font-size-h3: clamp(1.125rem, calc(1rem + 0.46875vw), 1.75rem);
    --font-size-h4: clamp(1rem, calc(0.875rem + 0.3125vw), 1.375rem);
    --font-size-h5: clamp(0.9375rem, calc(0.8125rem + 0.3125vw), 1.3125rem);
    --hero-body: var(--font-size-body-large);
  }
}

@media (min-width: 64rem) and (max-width: 79.9375rem) {
  :root {
    --hero-h1: clamp(2.45rem, 3.3vw, 2.625rem);
    --hero-h1-line: 1.06;
    --hero-body: var(--font-size-body);
    --hero-body-line: 1.5;
    --hero-note: var(--font-size-trust);
    --hero-eyebrow: var(--font-size-metadata);
    --hero-button: var(--font-size-functional);
    --hero-trust: var(--font-size-trust);
    --font-size-h1: 3rem;
    --font-size-h2: 1.625rem;
    --font-size-h3: 1.25rem;
    --font-size-h4: 1rem;
    --font-size-h5: 1rem;
    --section-space: 4.25rem;
  }
}

@media (min-width: 48rem) and (max-width: 63.9375rem) {
  :root {
    --hero-h1: clamp(2.2rem, 3.7vw, 2.375rem);
    --hero-h1-line: 1.07;
    --hero-body: var(--font-size-body);
    --hero-body-line: 1.5;
    --hero-note: var(--font-size-trust);
    --hero-eyebrow: var(--font-size-metadata);
    --hero-button: var(--font-size-functional);
    --hero-trust: var(--font-size-trust);
    --hero-space-eyebrow-title: 1rem;
    --hero-space-title-body: 1.375rem;
    --hero-space-body-note: 1rem;
    --hero-space-note-actions: 1.25rem;
    --hero-space-actions-trust: 0.875rem;
    --industry-label: var(--font-size-label);
    --industry-icon: 2rem;
    --font-size-h1: 2.75rem;
    --font-size-h2: 1.625rem;
    --font-size-h3: 1.25rem;
    --font-size-h4: 1rem;
    --font-size-h5: 1rem;
    --font-size-body-large: 1.0625rem;
    --font-size-metadata: 0.75rem;
    --font-size-label: 0.75rem;
    --section-space: 4.25rem;
  }
}

@media (max-width: 47.9375rem) {
  :root {
    --hero-h1: 2.125rem;
    --hero-h1-line: 1.08;
    --hero-body: var(--font-size-body);
    --hero-body-line: 1.5;
    --hero-note: var(--font-size-trust);
    --hero-eyebrow: var(--font-size-metadata);
    --hero-button: var(--font-size-functional);
    --hero-trust: var(--font-size-trust);
    --hero-space-eyebrow-title: 1rem;
    --hero-space-title-body: 1.375rem;
    --hero-space-body-note: 1rem;
    --hero-space-note-actions: 1.25rem;
    --hero-space-actions-trust: 0.875rem;
    --industry-label: var(--font-size-label);
    --industry-icon: 1.875rem;
    --font-size-h1: 2.375rem;
    --font-size-h2: 1.5rem;
    --font-size-h3: 1.125rem;
    --font-size-h4: 1rem;
    --font-size-h5: 0.9375rem;
    --font-size-body-large: 1rem;
    --font-size-metadata: 0.75rem;
    --font-size-label: 0.75rem;
    --section-space: 3.5rem;
  }
}

@media (max-width: 24.3125rem) {
  :root {
    --hero-h1: 1.875rem;
    --hero-h1-line: 1.08;
    --hero-body: var(--font-size-body);
    --hero-body-line: 1.48;
    --hero-note: var(--font-size-trust);
    --hero-eyebrow: var(--font-size-metadata);
    --hero-button: var(--font-size-functional);
    --hero-trust: var(--font-size-trust);
    --industry-label: var(--font-size-label);
    --industry-icon: 1.75rem;
  }
}
