.a {
    color: #fff;
}

.button input[type=submit]{ 
    background: #e8042c;
    color: #fff;
}

.usca-button-blue-header {
	background-color:rgb(228, 229, 230);
	padding-top:.75rem;
	padding-bottom:.75rem;
	--tw-text-opacity:1;
	color:rgb(1 40 85/var(--tw-text-opacity))
      }

.usca-button-blue-header .icon,.usca-button-blue-header svg {
	--tw-text-opacity:1;
	color:rgb(156 163 175/var(--tw-text-opacity))
      }
  
.usca-button-blue-header:hover {
	background-color:rgb(215, 218, 222)
}
  
.usca-button-blue-header:hover .icon,.usca-button-blue-header:hover svg {
	--tw-text-opacity:1;
	color:rgb(228 1 43/var(--tw-text-opacity))
}

<!--/* Global text styling override */
p, 
.text-content, 
.content-section,
body, 
article,
section,
div.text,
.description,
.info,
.body-text,
span:not([class*="icon"]):not([class*="fa"]) {
  font-family: ff-good-web-pro, sans-serif !important;
}

/* Target specific text elements if needed */
button, 
a,
label,
input,
textarea,
select,
li,
th, td
{
  font-family: ff-good-web-pro, sans-serif !important;
}-->
  
/* Base font styling for all browsers */
p, 
.text-content, 
.content-section,
body, 
article,
section,
div.text,
.description,
.info,
.body-text,
span:not([class*="icon"]):not([class*="fa"]),
button, 
a,
label,
input,
textarea,
select,
li,
th, td {
  font-family: ff-good-web-pro, sans-serif;
}

/* Safari-specific font override using @supports */
@supports (-webkit-hyphens:none) and (not (-moz-appearance:none)) {
  /* The condition above targets WebKit browsers (Safari) but excludes Firefox */
  
  /* General text elements */
  p, 
  .text-content, 
  .content-section,
  body, 
  article,
  section,
  div.text,
  .description,
  .info,
  .body-text,
  span:not([class*="icon"]):not([class*="fa"]) {
    font-family: "ff-good-web-pro", sans-serif !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }

  /* Target specific text elements for Safari */
  button, 
  a,
  label,
  input,
  textarea,
  select,
  li,
  th, td {
    font-family: "ff-good-web-pro", sans-serif !important;
    -webkit-font-smoothing: antialiased;
  }
  
  /* Headers with preserved font weights */
  h1, h2, h3, h4, h5, h6 {
    font-family: "ff-good-web-pro", sans-serif !important;
    -webkit-font-smoothing: antialiased;
    /* Remove the !important from font-weight to respect original values */
    /* font-weight is intentionally NOT set here */
  }
  
  /* Override specific header weights only if needed */
  h1 { font-family: "ff-good-web-pro", sans-serif !important; }
  h2 { font-family: "ff-good-web-pro", sans-serif !important; }
  h3 { font-family: "ff-good-web-pro", sans-serif !important; }
  h4 { font-family: "ff-good-web-pro", sans-serif !important; }
  h5 { font-family: "ff-good-web-pro", sans-serif !important; }
  h6 { font-family: "ff-good-web-pro", sans-serif !important; }
  
  /* Fix for potential Safari font-weight issues with bold text */
  strong, b {
    font-family: "ff-good-web-pro", sans-serif !important;
    font-weight: 700 !important;
  }
  
  /* Form elements */
  input, select, textarea, button {
    font-family: "ff-good-web-pro", sans-serif !important;
    -webkit-font-smoothing: antialiased;
  }
  
}

/* Keep the text but remove ONLY the original decorative underline */
.usca-deco-rule {
  border: none !important;
  border-bottom: none !important;
  background: none !important;
  text-decoration: none !important;
  background-image: none !important;
}

/* Dark H1 styling - with small left-aligned red accent */
h1.deco-lg-dark {
  position: relative !important;
}

/* Dark H1 - small left-aligned red accent line */
h1.deco-lg-dark::after {
  content: '' !important;
  position: absolute !important;
  top: 100% !important;
  margin-top: 10px !important;
  left: 0 !important;
  width: 60px !important;
  height: 3px !important;
  background: #dc2626 !important;
  display: block !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3) !important;
  border-radius: 2px !important;
}

/* For centered H1s, center the red accent line */
h1.deco-lg-dark.text-center::after,
.text-center h1.deco-lg-dark::after {
  left: 50% !important;
  transform: translateX(-50%) !important;
}

/* Light H1 styling - with small left-aligned red accent */
h1.deco-lg-light {
  position: relative !important;
}

/* Light H1 - small left-aligned red accent line */
h1.deco-lg-light::after {
  content: '' !important;
  position: absolute !important;
  top: 100% !important;
  margin-top: 10px !important;
  left: 0 !important;
  width: 60px !important;
  height: 3px !important;
  background: #dc2626 !important;
  display: block !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5) !important;
  border-radius: 2px !important;
}

/* For centered H1s, center the red accent line */
h1.deco-lg-light.text-center::after,
.text-center h1.deco-lg-light::after {
  left: 50% !important;
  transform: translateX(-50%) !important;
}

/* Style h2-h4 headings EXCEPT those with section-title, no-auto-style, or header-dynamic classes */
h2:not(.section-title):not(.no-auto-style):not(.header-dynamic), 
h3:not(.section-title):not(.no-auto-style):not(.header-dynamic), 
h4:not(.section-title):not(.no-auto-style):not(.header-dynamic) {
  position: relative !important;
  padding-bottom: 16px !important;
  display: block !important;
  width: fit-content !important;
}

/* For centered text, center the heading element itself */
.text-center h2:not(.section-title):not(.no-auto-style):not(.header-dynamic), 
.text-center h3:not(.section-title):not(.no-auto-style):not(.header-dynamic), 
.text-center h4:not(.section-title):not(.no-auto-style):not(.header-dynamic),
h2.text-center:not(.section-title):not(.no-auto-style):not(.header-dynamic), 
h3.text-center:not(.section-title):not(.no-auto-style):not(.header-dynamic), 
h4.text-center:not(.section-title):not(.no-auto-style):not(.header-dynamic) {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Gray underline for h2-h4 EXCEPT section-title, no-auto-style, or header-dynamic */
h2:not(.section-title):not(.no-auto-style):not(.header-dynamic)::after, 
h3:not(.section-title):not(.no-auto-style):not(.header-dynamic)::after, 
h4:not(.section-title):not(.no-auto-style):not(.header-dynamic)::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 2px !important;
  background: #e5e7eb !important;
  display: block !important;
}

/* Red accent for h2-h3 EXCEPT section-title, no-auto-style, or header-dynamic */
h2:not(.section-title):not(.no-auto-style):not(.header-dynamic)::before, 
h3:not(.section-title):not(.no-auto-style):not(.header-dynamic)::before {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 120px !important;
  height: 2px !important;
  background: #dc2626 !important;
  display: block !important;
  z-index: 1 !important;
}

/* Red accent for h4 EXCEPT section-title, no-auto-style, or header-dynamic */
h4:not(.section-title):not(.no-auto-style):not(.header-dynamic)::before {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 60px !important;
  height: 2px !important;
  background: #dc2626 !important;
  display: block !important;
  z-index: 1 !important;
}

/* H5 and H6 - no special styling, keep them clean */
h5, h6 {
  /* No decorative underlines */
}