/* --------------- Typography --------------- */

/* Headings */

/* Base heading styles */
body .fl-builder-content :is(h1,h2,h3,h4,h5,h6),
body .fl-builder-content .fl-heading:is(.fl-h1,.fl-h2,.fl-h3,.fl-h4,.fl-h5,.fl-h6) .fl-heading-text {
  color: #005776;
  font-family: 'Noto Serif', serif !important;
  line-height: 1.25em;
  letter-spacing: 0.025em;
}

/* H1–H4 weights */
body .fl-builder-content :is(h1,h2),
body .fl-builder-content .fl-heading:is(.fl-h1,.fl-h2) .fl-heading-text {
  font-weight: 300 !important;
}

body .fl-builder-content :is(h3,h4),
body .fl-builder-content .fl-heading:is(.fl-h3,.fl-h4) .fl-heading-text {
  font-weight: 400 !important;
}

/* H5–H6 weights */
body .fl-builder-content :is(h5,h6),
body .fl-builder-content .fl-heading:is(.fl-h5,.fl-h6) .fl-heading-text {
  font-weight: 500 !important;
}



/* Base = Small (<768px) */
.fl-builder-content h1 { font-size: 2.25rem; font-weight: 300 !important; }   /* 36px */
.fl-builder-content h2 { font-size: 1.875rem; font-weight: 300 !important; }   /* 30px */
.fl-builder-content h3 { font-size: 1.375rem; font-weight: 400 !important; }   /* 22px */
.fl-builder-content h4 { font-size: 1.125rem; font-weight: 400 !important; }   /* 18px */
.fl-builder-content h5 { font-size: 1rem ;font-weight: 500 !important; }       /* 16px */
.fl-builder-content h6 { font-size: 0.875rem; font-weight: 500 !important; }   /* 14px */

/* Medium (≥768px) */
@media (min-width: 768px) {
  .fl-builder-content h1 { font-size: 2.5rem; font-weight: 300 !important; }    /* 40px */
  .fl-builder-content h2 { font-size: 2rem; font-weight: 300 !important; }      /* 32px */
  .fl-builder-content h3 { font-size: 1.5rem; font-weight: 400 !important; }    /* 24px */
  .fl-builder-content h3 { font-size: 1.5rem; font-weight: 400 !important; }    /* 24px */
  .fl-builder-content h4 { font-size: 1.25rem; font-weight: 400 !important; }   /* 20px */
  .fl-builder-content h5 { font-size: 1.0625rem; font-weight: 500 !important; } /* 17px */
  .fl-builder-content h6 { font-size: 0.875rem; font-weight: 500 !important; }  /* 14px */
}

/* Large (≥992px) */
@media (min-width: 992px) {
  .fl-builder-content h1 { font-size: 3rem; font-weight: 300 !important; }     /* 48px */
  .fl-builder-content h2 { font-size: 2.25rem; font-weight: 300 !important; }  /* 36px */
  .fl-builder-content h3 { font-size: 1.625rem; font-weight: 400 !important; } /* 26px */
  .fl-builder-content h4 { font-size: 1.375rem; font-weight: 400 !important; } /* 22px */
  .fl-builder-content h5 { font-size: 1.125rem; font-weight: 500 !important; } /* 18px */
  .fl-builder-content h6 { font-size: 0.875rem; font-weight: 500 !important; } /* 14px */
}

/* XL (≥1280px)*/
@media (min-width: 1280px) {
  .fl-builder-content h1 { font-size: 3.5rem; font-weight: 300 !important; }   /* 56px */
  .fl-builder-content h2 { font-size: 2.5rem; font-weight: 300 !important; }   /* 40px */
  .fl-builder-content h3 { font-size: 1.75rem; font-weight: 400 !important; }  /* 28px */
  .fl-builder-content h4 { font-size: 1.5rem; font-weight: 400 !important; }   /* 24px */
  .fl-builder-content h5 { font-size: 1.125rem; font-weight: 500 !important; } /* 18px */
  .fl-builder-content h6 { font-size: 0.875rem; font-weight: 500 !important; } /* 14px */
}



/* Paragraph style */
p {
  color: #4C5258;
  font-family: 'Noto Sans', sans-serif;
  font-size: 1rem;
  line-height: 1.5em;
}

/* Large and XL screens */
@media (min-width: 992px) {
  p {
    font-size: 1rem;
  }
}



/* Link style */
a {
  color: #007FA3;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
}

a:hover {
  color: #00AEC7;
}

p a { text-transform: none; }
p a.is-standalone-link { text-transform: uppercase; letter-spacing: .05em; }



/* Eyebrow style */
.eyebrow {
  color: #101820;
  font-family: 'Noto Sans', sans-serif;
  font-weight: 700;
  font-size: 0.925rem;
  letter-spacing: 0.075em;
  line-height: 1.2em;
  text-transform: uppercase;
}

/* Blockquote style */
blockquote {
  margin: 2rem 0;
  padding-left: 1rem;
  font-family: 'Noto Serif', serif;
  font-size: 1.25rem;
  font-style: italic;
  border-left: 4px solid #007FA3;
}
