/* Typography */

.font-primary {
	font-family: var(--font-family-primary);	
}

.font-secondary {
	font-family: var(--font-family-secondary);	
}

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

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

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

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

a {
	color: var(--color-body);
	text-decoration: none;
	transition: 0.2s ease-out;
}

a:hover {
	color: inherit;
}

hr {
	background-color: var(--color-primary);
	opacity: 1;
}

h1,h2,h3,h4,h5 {
	color: var(--color-titles);
	font-family: var(--font-family-titles);
	font-weight: var(--font-weight-titles);
	letter-spacing: var(--letter-spacing-titles);
	line-height: var(--line-height-titles);
	text-transform: var(--text-transform-titles);
}

.text-white a, .text-white h1,.text-white h2,.text-white h3,.text-white h4,.text-white h5,.text-white h6,
.text-white p,.text-white ol,.text-white ul, .text-white .subtitle {
	color: #fff;
}

.title-xl {
	font-size: var(--font-size-extra-large-title);
}

.title-lg {
	font-size: var(--font-size-large-title);
}

h1 {
	font-size: var(--font-size-h1);
}

h2 {
	font-size: var(--font-size-h2);
}

h3 {
	font-size: var(--font-size-h3);
}

h4 {
	font-size: var(--font-size-h4);
}

h5 {
	font-size: var(--font-size-h5);
}

h6, .subtitle {
	font-family: var(--subtitles-font-family);
	font-weight: var(--subtitles-font-weight);
	letter-spacing: var(--subtitles-letter-spacing);
	line-height: var(--subtitles-line-height);
	text-transform: var(--subtitles-text-transform);	
	font-size: var(--subtitles-font-size);
}

h1,h2,h3,h4,h5,h6,.subtitle,p,ol,ul {
	margin-bottom: 1.5rem;
}

h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child,
h6:last-child,p:last-child,ol:last-child,ul:last-child, .subtitle:last-child {
	margin-bottom: 0;
}

ol, ul {
	padding-left: 1rem;
}

ol ol, ol ul, ul ol, ul ul {
	margin-top: .75rem;
}

li {
	line-height: 1.33;
	margin-bottom: 0.75rem;
}

li:last-child {
	margin-bottom: 0;
}

li ul li {
	list-style: disc;
}

.text-xl {
	font-size: 1.5rem;
}

.text-lg {
	font-size: 1.25rem;
}

.text-md {
	font-size: 1.15rem;
}


small, .text-sm {
  font-size: 0.875rem;
}

.text-xs {
	font-size: 0.75rem;
}

.fw-100 {
	font-weight: 100;
}

.fw-200 {
	font-weight: 200;
}

.fw-300 {
	font-weight: 300;
}

.fw-400 {
	font-weight: 400;
}

.fw-500 {
	font-weight: 500;
}

.fw-600 {
	font-weight: 600;
}

.fw-700, b, strong {
	font-weight: 700;
}

.fw-800 {
	font-weight: 800;
}

.fw-900 {
	font-weight: 900;
}

.lh-0 {
	line-height: 0;
}

.lh-1 {
	line-height: 1;
}

.letter-spacing {
	letter-spacing: var(--letter-spacing);
}


/* Typography Media Queries */

/* 768px */
@media (max-width: 767px) { 
	html {font-size: var(--font-size-mobile);}
	.title-xl {font-size: var(--font-size-extra-large-title-mobile);}
	.title-lg {font-size: var(--font-size-large-title-mobile);}
	h1 {font-size: var(--font-size-h1-mobile);}
	h2 {font-size: var(--font-size-h2-mobile);}
	h3 {font-size: var(--font-size-h3-mobile);}
	h4 {font-size: var(--font-size-h4-mobile);}
	h5 {font-size: var(--font-size-h5-mobile);}
}