.ibm-plex-mono-thin {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 100;
  font-style: normal;
}

.ibm-plex-mono-extralight {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 200;
  font-style: normal;
}

.ibm-plex-mono-light {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 300;
  font-style: normal;
}

.ibm-plex-mono-regular {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 400;
  font-style: normal;
}

.ibm-plex-mono-medium {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 500;
  font-style: normal;
}

.ibm-plex-mono-semibold {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 600;
  font-style: normal;
}

.ibm-plex-mono-bold {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 700;
  font-style: normal;
}

.ibm-plex-mono-thin-italic {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 100;
  font-style: italic;
}

.ibm-plex-mono-extralight-italic {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 200;
  font-style: italic;
}

.ibm-plex-mono-light-italic {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 300;
  font-style: italic;
}

.ibm-plex-mono-regular-italic {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 400;
  font-style: italic;
}

.ibm-plex-mono-medium-italic {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 500;
  font-style: italic;
}

.ibm-plex-mono-semibold-italic {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 600;
  font-style: italic;
}

.ibm-plex-mono-bold-italic {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 700;
  font-style: italic;
}


body {
	padding: 0;
	margin: 0;
    position: relative;
  	font-family: "IBM Plex Sans", monospace;
  	font-weight: 400;
  	font-style: normal;
}

em {
	font-style: italic;
}

strong {
	font-weight: 700;
}

p, blockquote, ul, li, .gform-theme--framework .gform-field-label, .gform_footer input.gform_button, #field_submit .gform-button.gform-button--white.button, a {
	margin-block-start: .75rem;
	margin-block-end: .5rem;
	line-height: 1.5;
}

a.button, .background-black .gform_footer input.gform_button, .gform_footer input.gform_button, input[type=password], form.post-password-form input[type=submit], .cta-menu li:first-child a {
	font-family: "IBM Plex Mono", sans-serif;
  	font-weight: 600;
	word-spacing: -.5ch;
}

h1, h2, h3, h4, h5, h6 {
	line-height: 1.25;
	font-weight: 400;
	-moz-osx-font-smoothing: grayscale; /*(For Firefox)*/
	-webkit-font-smoothing: antialiased; /*(For Chrome and Safari)*/
	text-transform: uppercase;
}

h2.article__title {
	text-transform: none!important;
}

.tabs button {
	font-size: 1.125rem;
	line-height: 1.5;
}

h1 {
	font-size: 3.25rem;
	margin-block-start: 1rem;
	margin-block-end: 1rem;
}

h1:after, .h1:after {
	content: '.';
	color: var(--orange);
}

h2 {
	font-size: 2.5rem;
	margin-block-start: .75rem;
	margin-block-end: .75rem;
}

h3 {
	font-size: 2.125rem;
	margin-block-start: .625rem;
	margin-block-end: .625rem;
}

h4, .tabs h4, .columns .heading-text p:not(p.eyebrow) {
	font-size: 1.75rem;
	margin-block-start: .5rem;
	margin-block-end: .5rem;
}

h5 {
	font-size: 1.5rem;
	margin-block-start: .375rem;
	margin-block-end: .375rem;
}

h6 {
	font-size: 1.25rem;
	margin-block-start: .25rem;
	margin-block-end: .25rem;
}

p, ul, li {
	font-size: 1rem;
	line-height: 1.5;
	margin-block-start: .375rem;
	margin-block-end: .375rem;
}

nav li, .sub-menu {
	margin-block-start: 0!important;
	margin-block-end: 0!important;
}

footer ul.sub-menu {
	margin-top: .5rem;
}

nav li a {
	padding: .75rem 0;
}

p.small {
	font-size: .875rem;
}

.h4.article__title {
	text-transform: none!important;
}

.eyebrow, .post-categories p a, footer li.menu-item-object-custom:not(footer li.menu-item-object-page a) {
	font-family: "IBM Plex Mono", sans-serif;
	font-size: 1rem;
	text-transform: uppercase;
	word-spacing: -.5ch;
	color: var(--blue);
	letter-spacing: .1rem;
	font-weight: 600;
}

footer li.menu-item-object-custom > a, footer .sub-menu li a {
	text-decoration: none;
}

.column-container p, #menu-footer-legal li a {
	font-size: .875rem;
}

.h1, .archive-intro h1 span {
	font-size: 3.25rem;
	margin-block-start: 1rem;
	margin-block-end: 1rem;
}

.h2 {
	font-size: 2.5rem;
	margin-block-start: .75rem;
	margin-block-end: .75rem;
}

.h3 {
	font-size: 2.125rem;
	margin-block-start: .625rem;
	margin-block-end: .625rem;
}

.h4 {
	font-size: 1.75rem;
	margin-block-start: .5rem;
	margin-block-end: .5rem;
}

.h5 {
	font-size: 1.5rem;
	margin-block-start: .375rem;
	margin-block-end: .375rem;
}

.h6, ul.dropcontent li a {
	font-size: 1.25rem;
	margin-block-start: .25rem;
	margin-block-end: .25rem;
}

.p {
	font-size: 1rem;
	line-height: 1.5;
	margin-block-start: .375rem;
	margin-block-end: .375rem;
}

ul.dropcontent li p {
	font-size: .875rem;
}

.animated-number-counter {
	font-size: 4rem;
}

footer .sub-menu li a {
	padding: 0;
	margin: 0;
    position: relative;
  	font-family: "IBM Plex Sans", monospace;
  	font-weight: 400;
  	font-style: normal;
	text-transform: none;
	letter-spacing: 0;
	word-spacing: 0;
}

/* GRAVITY FORMS */

legend.gform-field-label, label.gform-field-label, div.gfield_description {
	font-size: 1.125rem;
}

/******/
/* MEDIA QUERIES */
/******/

@media screen and (min-width: 64.0625rem) and (max-width: 93.75rem) {
	
	h1, .archive-intro h1 span {
		font-size: 3rem;
		margin-block-start: .875rem;
		margin-block-end: .875rem;
	}
	
	h1:after, .h1:after {
		margin-left: -.0625rem;
	}

	h2 {
		font-size: 2.25rem;
		margin-block-start: .625rem;
		margin-block-end: .625rem;
	}

	h3, .columns .heading-text p:not(p.eyebrow) {
		font-size: 1.75rem;
		margin-block-start: .5rem;
		margin-block-end: .5rem;
	}

	h4, .tabs h4 {
		font-size: 1.5rem;
		margin-block-start: .375rem;
		margin-block-end: .375rem;
	}
	
	h5 {
		margin-block-start: .25rem;
		margin-block-end: .25rem;
	}

	.h1 {
		font-size: 3rem;
		margin-block-start: .875rem;
		margin-block-end: .875rem;
	}

	.h2 {
		font-size: 2.25rem;
		margin-block-start: .625rem;
		margin-block-end: .625rem;
	}

	.h3 {
		font-size: 1.75rem;
		margin-block-start: .5rem;
		margin-block-end: .5rem;
	}

	.h4 {
		font-size: 1.5rem;
		margin-block-start: .375rem;
		margin-block-end: .375rem;
	}
	
	.h5 {
		margin-block-start: .25rem;
		margin-block-end: .25rem;
	}
	
	.animated-number-counter {
		font-size: 3rem;
	}
	
}

@media screen and (min-width: 48rem) and (max-width: 64rem) {
	
	/* GLOBAL */
	
	a.button, .background-black .gform_footer input.gform_button, .gform_footer input.gform_button, input[type=password], form.post-password-form input[type=submit], .cta-menu li:first-child a {
		font-size: .875rem;
	}
	
	h1, .archive-intro h1 span {
		font-size: 2.375rem;
		margin-block-start: .75rem;
		margin-block-end: .75rem;
	}
	
	h1:after, .h1:after {
		margin-left: -.0625rem;
	}

	h2 {
		font-size: 1.75rem;
		margin-block-start: .5rem;
		margin-block-end: .5rem;
	}

	h3, .columns .heading-text p:not(p.eyebrow) {
		font-size: 1.5rem;
		margin-block-start: .375rem;
		margin-block-end: .375rem;
	}

	h4 {
		font-size: 1.125rem;
		margin-block-start: .3125rem;
		margin-block-end: .3125rem;
	}
	
	h5 {
		margin-block-start: .25rem;
		margin-block-end: .25rem;
	}

	.h1 {
		font-size: 2.375rem;
		margin-block-start: .75rem;
		margin-block-end: .75rem;
	}

	.h2 {
		font-size: 1.75rem;
		margin-block-start: .5rem;
		margin-block-end: .5rem;
	}

	.h3 {
		font-size: 1.5rem;
		margin-block-start: .375rem;
		margin-block-end: .375rem;
	}

	.h4 {
		font-size: 1.125rem;
		margin-block-start: .3125rem;
		margin-block-end: .3125rem;
	}
	
	.h5 {
		margin-block-start: .25rem;
		margin-block-end: .25rem;
	}
	
	.animated-number-counter {
		font-size: 2.75rem;
	}
	
}

@media screen and (max-width: 47.9375rem) {
	
	/* GLOBAL */
	
	a.button, .background-black .gform_footer input.gform_button, .gform_footer input.gform_button, input[type=password], form.post-password-form input[type=submit], .cta-menu li:first-child a {
		font-size: .875rem;
	}
	
	h1, .archive-intro h1 span {
		font-size: 1.75rem;
		margin-block-start: .625rem;
		margin-block-end: .625rem;
	}
	
	h1:after, .h1:after {
		margin-left: -.0625rem;
	}

	h2 {
		font-size: 1.5rem;
		margin-block-start: .625rem;
		margin-block-end: .625rem;
	}

	h3, .columns .heading-text p:not(p.eyebrow) {
		font-size: 1.375rem;
		margin-block-start: .5rem;
		margin-block-end: .5rem;
	}

	h4 {
		font-size: 1.25rem;
		margin-block-start: .375rem;
		margin-block-end: .375rem;
	}
	
	h5 {
		margin-block-start: .25rem;
		margin-block-end: .25rem;
	}
	
	p, ul, li {
		font-size: .9375rem;
	}

	.h1 {
		font-size: 1.75rem;
		margin-block-start: .625rem;
		margin-block-end: .625rem;
	}

	.h2 {
		font-size: 1.5rem;
		margin-block-start: .625rem;
		margin-block-end: .625rem;
	}

	.h3 {
		font-size: 1.375rem;
		margin-block-start: .5rem;
		margin-block-end: .5rem;
	}

	.h4 {
		font-size: 1.25rem;
		margin-block-start: .375rem;
		margin-block-end: .375rem;
	}
	
	.h5 {
		margin-block-start: .25rem;
		margin-block-end: .25rem;
	}
	
	.p, .ul, .li {
		font-size: .9375rem;
	}
	
	.animated-number-counter {
		font-size: 2.25rem;
	}

}
