/* Global File used for typography */
:root {
  /*  fonts  */

  /*  font weight  */
  --font-weight-xtra-bold: 900;
  --font-weight-bold: 800;
  --font-weight-light-bold: 700;
  --font-weight-600: 600;
  --font-weight-medium: 500;
  --font-weight-regular: 400;

  /*  Typography  */
  --font-size-base: 16px;
  --font-size-heading: 2rem;
  --line-height-base: 1.375rem;

  /*  letter spacing  */
  --letter-spacing-s: 0;
  --letter-spacing-xxs: -0.8px;
  --letter-spacing-m: 0.32px;
  --letter-spacing-xxxs: -0.48px;
  --letter-spacing-xxxxl: -0.32px;

  /*  line hight  */
  --line-height-1: 1px;
  --line-height-l: normal;
  --line-height-m: 92px;
  --line-height-s: 58px;
  --line-height-xs: 40px;
  --line-height-xxs-5: 36px;
  --line-height-xxs-4: 30px;
  --line-height-xxs-3: 28px;
  --line-height-xxs-2: 26px;
  --line-height-xxs: 24px;
  --line-height-xxs-1: 22px;

  /*  height  */
  --height-xs: 10px;
  --height-xs-2: 12px;
  --height-s: 20px;
  --height-m: 30px;
  --height-l: 40px;
  --height-xl: 50px;
  --height-xxl: 60px;
  --height-xxxl: 70px;

  /*  width  */
  --width-desktop-max: 1440px;
  --width-xs: 12px;

  /*  margin  */
  --margin-xs: 4px;
  --margin-s: 8px;
  --margin-12: 12px;
  --margin-ns: -8px;
  --margin-s-1: 12px;
  --margin-s-n1: -12px;
  --margin-m: 16px;
  --margin-l: 24px;
  --margin-xl: 32px;
  --margin-xxl: 40px;
  --margin-48: 48px;
  --margin-64: 64px;

  /*  padding  */
  --padding-xs: 4px;
  --padding-s: 8px;
  --padding-m: 16px;
  --padding-l: 24px;
  --padding-xl: 32px;
  --padding-xxl: 40px;
  --padding-48: 48px;
  --padding-64: 64px;
  --padding-87: 87px;

  /*  gap sizes  */
  --gap-xs: 4px;
  --gap-s: 8px;
  --gap-m: 16px;
  --gap-m-2: 24px;
  --gap-l: 32px;
  --gap-l-2: 48px;
  --gap-xl: 64px;

  
  /*  body sizes  */
  --body-font-size-xxxxl: 80px;
  --body-font-size-xxxl-1: 64px;
  --body-font-size-xxxl: 48px;
  --body-font-size-xxl-1: 36px;
  --body-font-size-xxl: 32px;
  --body-font-size-xl-1: 28px;
  --body-font-size-xl-2: 24px;
  --body-font-size-l: 22px;
  --body-font-size-xl: 22px;
  --body-font-size-m: 19px;
   --body-font-size-m-1: 18px;
  --body-font-size-xs: 18px;
  --body-font-size-s: 17px;
  --body-font-size-xxs: 16px;
  --body-font-size-xxxs: 14px;
  --body-font-size-xxxxs: 12px;
  --body-font-size-xxxxxs: 10px;

  /*  nav height  */
  --nav-height: 64px;
}

@media (max-width: 991px) {
  :root {
    --body-font-size-xl: 18px;
    --body-font-size-l: 18px;
    --body-font-size-m-1: 16px;
    --body-font-size-xs: 16px;
    --body-font-size-xxs: 14px;
    --body-font-size-xxxs: 12px;
    --body-font-size-xxxxs: 11px;
  }
}

/* Desktop Viewport */
.section .heading-1 {
  font-size: var(--body-font-size-xxxxl);
  font-family: var(--heading-font-family);
  font-weight: var(--font-weight-xtra-bold);
  padding-bottom: var(--padding-m);
  color: var(--text-medium);
}

.section h1,
.section h2,
.section .columns-wrapper .columns h1,
.section .columns-wrapper .columns h2,
.section .heading-2 {
  font-size: var(--body-font-size-xxxl);
  font-family: var(--heading-font-family);
  font-weight: var(--font-weight-xtra-bold);
  padding-bottom: var(--padding-m);
  color: var(--text-medium);
}

.title-container .title-wrapper .heading-2.text-dark {
  color: var(--text-dark);
}

.title-container .title-wrapper .heading-2.text-lighter {
  color: var(--text-lighter);
}

.title-container .title-wrapper .heading-2.text-light {
  color: var(--text-light);
}

.title-container .title-wrapper .heading-2.text-med {
  color: var(--text-medium);
}

.title-container .title-wrapper .heading-2.text-warm {
  color: var(--text-warm);
}

.title-container .title-wrapper .heading-2.text-darkest {
  color: var(--text-darkest);
}

.title-container .title-wrapper .heading-2.text-white {
  color: var(--text-white);
}

.title-container .title-wrapper .heading-4.neutral-black {
  color: var(--neutral-black);
}

.title-container .title-wrapper .s-medium.text-dark {
  color: var(--text-dark);
}

.title-container .title-wrapper .s-medium.neutral-black {
  color: var(--neutral-black);
}

.title-container .title-wrapper .s-medium.text-lighter {
  color: var(--text-lighter);
}

.title-container .title-wrapper .s-medium.text-light {
  color: var(--text-light);
}

.title-container .title-wrapper .s-medium.text-med {
  color: var(--text-medium);
}

.title-container .title-wrapper .s-medium.text-warm {
  color: var(--text-warm);
}

.title-container .title-wrapper .s-medium.text-darkest {
  color: var(--text-darkest);
}

.title-container .title-wrapper .s-medium.text-white {
  color: var(--text-white);
}

.section h3,
.section .columns-wrapper .columns h3,
.section .heading-3 {
  font-size: var(--body-font-size-xxl);
  font-style: normal;
  font-family: var(--heading-font-family);
  font-weight: var(--font-weight-xtra-bold);
  padding-bottom: var(--padding-m);
  color: var(--text-medium);
}

.section h4,
.section .columns-wrapper .columns h4,
.section .heading-4 {
  font-size: var(--body-font-size-xl-2);
  font-family: var(--heading-font-family);
  font-weight: var(--font-weight-xtra-bold);
  padding-bottom: var(--padding-m);
  color: var(--text-medium);
}

.section h1.text-white,
.section h2.text-white,
.section h3.text-white,
.section h4.text-white {
  color: var(--text-white) !important;
}

.columns-wrapper p,
.columns-wrapper ul li {
  padding-bottom: 1rem;
}

/*  subtitle  */
.section .s-medium,
.section .columns .s-medium {
  font-weight: var(--font-weight-regular);
  font-size: var(--body-font-size-xl);
  padding-bottom: var(--padding-m);
}

.section .subheader-s,
.section .columns .subheader-s {
  font-size: var(--body-font-size-xl);
  font-weight: var(--font-weight-light-bold);
  padding-bottom: var(--padding-m);
}

.section .s-bold,
.section .columns .s-bold {
  font-weight: var(--font-weight-light-bold);
  font-size: var(--body-font-size-xl);
  padding-bottom: var(--padding-m);
}

.section .eyebrow,
.section .columns .eyebrow {
  font-weight: var(--font-weight-xtra-bold);
  font-size: var(--body-font-size-xxs);
  padding-bottom: var(--padding-s);
}

/*  Big body - B_Regular */
.b-regular,
.b-regular p,
.b-regular li {
  font-weight: var(--font-weight-regular);
  font-size: var(--body-font-size-xl);
}

.body-b1 p {
  font-weight: var(--font-weight-regular);
  font-size: var(--body-font-size-xs);
}

.body-b2 p {
  font-weight: var(--font-weight-light-bold);
  font-size: var(--body-font-size-xxs);
}

/* body - B1 */

body,
.b1-regular,
.b1-regular p,
.body-b1 {
  font-weight: var(--font-weight-regular);
  font-size: var(--body-font-size-xs);
  line-height: var(--line-height-l);
  font-style: normal;
  letter-spacing: var(--letter-spacing-s);
}
@supports (-webkit-touch-callout: none) {
  body,
  .b1-regular,
  .b1-regular p,
  .body-b1 {
    font-synthesis: none;
  }
}
.b1-regular p,
.b1-bold p,
.b2-regular p,
.b2-bold p,
.b3-regular p,
.b3-bold p,
.b1-regular ul {
  padding-bottom: var(--padding-m);
}

.b1-regular ul {
  padding-bottom: var(--padding-m);
  margin: 0;
}

.b1-regular ul li {
  padding-bottom: var(--padding-s);
}

.b1-regular ul li p.button-container a {
  padding: 0;
}

.b1-bold,
.b1-bold p {
  font-weight: var(--font-weight-light-bold);
  font-size: var(--body-font-size-xs);
}

.relatedarticles-right .b1-regular p {
  padding: 0;
}

/* Body - B2 */
.b2-regular,
.b2-regular p {
  font-weight: var(--font-weight-regular);
  font-size: var(--body-font-size-xxs);
}

.b2-bold,
.b2-bold p {
  font-weight: var(--font-weight-light-bold);
  font-size: var(--body-font-size-xxs);
}

/* Body - B3 */
.b3-regular,
.b3-regular p,
.body-b3 {
  font-weight: var(--font-weight-regular);
  font-size: var(--body-font-size-xxxs);
}

.b3-bold,
.b3-bold p {
  font-weight: var(--font-weight-light-bold);
  font-size: var(--body-font-size-xxxs);
}

/*  footnotes  */
.f-regular,
.f-regular p {
  font-weight: var(--font-weight-regular);
  font-size: var(--body-font-size-xxxxs);
}

.f-bold,
.f-bold p {
  font-weight: var(--font-weight-light-bold);
  font-size: var(--body-font-size-xxxxs);
}

/*  Link  */
.link {
  font-weight: var(--font-weight-regular);
  font-size: var(--body-font-size-xs);
}

/*  Mobile viewport  */
@media (max-width: 991px) {
  .section .heading-1 {
    font-size: var(--body-font-size-xxxl-1);
    font-weight: var(--font-weight-xtra-bold);
  }

  .section h1,
  .section h2,
  .section .columns-wrapper .columns h1,
  .section .columns-wrapper .columns h2,
  .section .heading-2 {
    font-size: var(--body-font-size-xxl-1);
    font-weight: var(--font-weight-xtra-bold);
    overflow-wrap: anywhere;
  }

  .section h3,
  .section .columns-wrapper .columns h3,
  .section .heading-3 {
    font-size: var(--body-font-size-xl-1);
    font-weight: var(--font-weight-xtra-bold);
  }

  .section h4,
  .section .columns-wrapper .columns h4,
  .section .heading-4 {
    font-size: var(--body-font-size-xl);
    font-weight: var(--font-weight-xtra-bold);
  }

  /*  subtitle  */
  .s-medium {
    font-weight: var(--font-weight-regular);
  }

  .s-bold {
    font-weight: var(--font-weight-light-bold);
  }

  /*  body  */
  body,
  p,
  .b1-regular,
  .body-b1,
  .b1-regular p {
    font-weight: var(--font-weight-regular);
  }

  .b1-bold,
  .b1-bold p {
    font-weight: var(--font-weight-light-bold);
  }

  .b-regular,
  .b-regular p,
  .b-regular li {
    font-weight: var(--font-weight-regular);
  }

  /* Body - B2 */
  .b2-regular,
  .b2-regular p {
    font-weight: var(--font-weight-regular);
  }

  .b2-bold,
  .b2-bold p {
    font-weight: var(--font-weight-light-bold);
  }

  /* Body - B3 */
  .b3-regular,
  .b3-regular p,
  .body-b3 {
    font-weight: var(--font-weight-regular);
  }

  .b3-bold,
  .b3-bold p {
    font-weight: var(--font-weight-light-bold);
  }

  /*  footnotes  */
  .f-regular,
  .f-regular p {
    font-weight: var(--font-weight-regular);
  }

  .f-bold .f-bold p {
    font-weight: var(--font-weight-light-bold);
  }

  /*  Link  */
  .link {
    font-weight: var(--font-weight-regular);
  }
}

/* Title/Text Color Options */
.text-white,
.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4 {
  color: var(--text-white) !important;
}

.text-lighter,
.text-lighter h1,
.text-lighter h2,
.text-lighter h3,
.text-lighter h4 {
  color: var(--text-lighter) !important;
}

.text-light,
.text-light h1,
.text-light h2,
.text-light h3,
.text-light h4 {
  color: var(--text-light) !important;
}

.text-med,
.text-med h1,
.text-med h2,
.text-med h3,
.text-med h4 {
  color: var(--text-medium) !important;
}

.text-warm,
.text-warm h1,
.text-warm h2,
.text-warm h3,
.text-warm h4 {
  color: var(--text-warm) !important;
}

.text-dark,
.text-dark h1,
.text-dark h2,
.text-dark h3,
.text-dark h4 {
  color: var(--text-dark) !important;
}

.text-darkwarm,
.text-darkwarm h1,
.text-darkwarm h2,
.text-darkwarm h3,
.text-darkwarm h4 {
  color: var(--text-darkwarm) !important;
}

.text-darkest,
.text-darkest h1,
.text-darkest h2,
.text-darkest h3,
.text-darkest h4 {
  color: var(--text-darkest) !important;
}

.neutral-black,
.neutral-black h1,
.neutral-black h2,
.neutral-black h3,
.neutral-black h4 {
  color: var(--neutral-black) !important;
}

.text-footer {
  color: var(--text-footer) !important;
}

/* inverse styling for text */
.iblack p,
.iblack h1,
.iblack h2,
.iblack h3,
.iblack h4 {
  color: var(--text-white) !important;
}

body:not(.no-eds) ol:has(li),
body:not(.no-eds) ul:has(li) {
  padding-left: 1.2rem;
  margin-bottom: 0.8em;
  margin-top: 0.8em;
}

body:not(.no-eds) ol:has(li) {
  gap: 8px;
  display: grid;
}

body:not(.no-eds) ul:has(li) {
  gap: 8px;
  display: grid;
}

.center-align {
  text-align: center;
}

strong {
  font-weight: var(--font-weight-light-bold);
}

.mac-edge strong {
  text-shadow: 0 0 0 currentColor;
}