@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../assets/fonts/open-sans-normal-400.ttf") format("truetype");
}

@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../assets/fonts/open-sans-normal-500.ttf") format("truetype");
}

@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../assets/fonts/open-sans-normal-600.ttf") format("truetype");
}

@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../assets/fonts/open-sans-normal-700.ttf") format("truetype");
}

@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../assets/fonts/open-sans-normal-800.ttf") format("truetype");
}

@font-face {
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("../assets/fonts/open-sans-italic-400.ttf") format("truetype");
}

@font-face {
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url("../assets/fonts/open-sans-italic-600.ttf") format("truetype");
}

@font-face {
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("../assets/fonts/open-sans-italic-700.ttf") format("truetype");
}

:root {
  --font-primary: "Open Sans", Arial, Helvetica, sans-serif;

  --color-white: #ffffff;
  --color-white-soft: #fefefe;
  --color-black-deep: #101820;

  --color-blue-deep: #122a47;
  --color-blue-logo-deep: #10264b;
  --color-blue-strategic: #2e9bc5;
  --color-blue-logo: #03ade1;
  --color-blue-confidence: #3c53f4;

  --color-teal-logo: #0bddba;
  --color-teal-support: #50ddb5;

  --color-yellow-strategic: #dad348;
  --color-gold-support: #e1b92e;

  --color-text: var(--color-blue-deep);
  --color-text-strong: var(--color-blue-logo-deep);
  --color-text-muted: #52667a;
  --color-text-soft: #6d7f90;
  --color-background: var(--color-white);
  --color-surface: #f7fbfd;
  --color-surface-strong: #eef7fb;
  --color-border: #d9e5ee;
  --color-border-strong: #b8d0df;
  --color-focus: var(--color-blue-confidence);
  --color-danger: #9f2a2a;

  --container-sm: 100%;
  --container-md: 720px;
  --container-lg: 1120px;
  --container-xl: 1240px;

  --breakpoint-xs: 320px;
  --breakpoint-sm: 480px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 1024px;
  --breakpoint-xl: 1280px;
  --breakpoint-xxl: 1440px;

  --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;

  --radius-xs: 2px;
  --radius-sm: 4px;
  --radius-md: 8px;

  --shadow-sm: 0 8px 24px rgba(18, 42, 71, 0.08);
  --shadow-md: 0 16px 40px rgba(18, 42, 71, 0.12);
  --shadow-lg: 0 28px 70px rgba(18, 42, 71, 0.16);

  --transition-fast: 160ms ease;
  --transition-base: 240ms ease;
  --transition-slow: 360ms ease;

  --header-height: 84px;
  --z-header: 50;
  --z-menu: 45;

  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-base: 1rem;
  --text-md: 1.125rem;
  --text-lg: 1.25rem;
  --text-xl: 1.5rem;
  --text-2xl: 2rem;
  --text-3xl: 2.75rem;
  --text-4xl: 3.75rem;
}

@media (min-width: 1024px) and (max-width: 1536px) {
  :root {
    --container-lg: 960px;
    --container-xl: 1088px;

    --space-4: 13px;
    --space-5: 19px;
    --space-6: 26px;
    --space-7: 38px;
    --space-8: 51px;
    --space-9: 77px;
    --space-10: 102px;

    --header-height: 68px;

    --text-sm: 0.8125rem;
    --text-base: 0.925rem;
    --text-md: 1rem;
    --text-lg: 1.125rem;
    --text-xl: 1.32rem;
    --text-2xl: 1.7rem;
    --text-3xl: 2.2rem;
    --text-4xl: 3rem;

    --shadow-sm: 0 6px 19px rgba(18, 42, 71, 0.08);
    --shadow-md: 0 13px 32px rgba(18, 42, 71, 0.12);
    --shadow-lg: 0 22px 56px rgba(18, 42, 71, 0.16);
  }
}
