:root {
	--transition: all 0.2s ease-in-out;

	--max-width-x-small: 550px;
	--max-width-small: 886px;
	--max-width-medium: 1000px;
	--max-width-large: 1200px;
	--max-width-x-large: 1500px;

	--color-primary: #0C63AC; /* blue */
	--color-secondary: #0C63AC; 
	--color-accent-1: #0F1423; /* dark blue */
	--color-accent-2: #0C63AC; 
	--color-accent-3: #0C63AC; 
	--color-accent-4: #0C63AC; 
	--color-background-light: #F4F7F6; /* frost */
	--color-background-dark: #333333;
	--color-background-dark-pair: rgba(255,255,255,0.1);
	--color-white: #fff;
	--color-text: #000;
	--color-text-link: var(--color-primary);
	--color-headings: #000;

	--font-family: "Overpass", sans-serif;
	--font-family-headings: "Overpass", sans-serif;
	--font-family-secondary: "Overpass", sans-serif;

	--font-weight-normal: 400;
	--font-weight-medium: 500;
	--font-weight-bold: 700;
	--font-weight-headings: 700;

	--spacing-small: 30px;
	--spacing-medium: 50px;
	--spacing-large: clamp(40px, 25.366px + 3.902vw, 80px);
	--spacing-x-large: clamp(50px, 14px + 9.6vw, 120px);
	--spacing-xx-large: clamp(70px, 30.204px + 10.612vw, 200px);

	--side-spacing: 5%;
	--side-spacing-small: 25px;
	--side-spacing-large: clamp(20px, 9.437px + 2.817vw, 50px);
	--side-spacing-x-large: clamp(20px, -13.451px + 8.92vw, 115px);

	--font-size: clamp(16px, 15.029px + 0.259vw, 20px);
	--font-size-x-small: 13px;
	--font-size-small: clamp(14px, 13.515px + 0.129vw, 16px);
	--font-size-medium: clamp(16px, 15.515px + 0.129vw, 18px);
	--font-size-large: clamp(17px, 15.019px + 0.528vw, 24px);
	--font-size-x-large: clamp(18px, 15.736px + 0.604vw, 26px);
	--font-size-xx-large: 32px;
	--font-size-xxx-large: 50px;

	--line-height: 1.7;
	--line-height-x-small: 1;
	--line-height-small: 1.25;
	--line-height-medium: 1.4;
	--line-height-large: 1.6;
	--line-height-x-large: 1.8;

	--letter-spacing: 1.5px;
	--letter-spacing-small: 1px;
	--letter-spacing-large: 3px; 
	--letter-spacing-x-large: 5px;

	--border-radius: 0;
	--border-radius-x-small: 5px;
	--border-radius-small: 14px;
	--border-radius-medium: 24px;
	--border-radius-large: 42px;

	--column-gap: 30px;
	--column-gap-none: 0;
	--column-gap-small: 15px;
	--column-gap-medium: 50px;
	--column-gap-large: clamp(40px, 6.667px + 6.667vw, 80px);
	--column-gap-x-large: clamp(50px, -21.429px + 7.143vw, 100px);
	--column-gap-xx-large: 140px;

	--row-gap: 30px;
	--row-gap-medium: 50px;

	--grid-gap-small: 20px;

}



/* Admin Block Styles - ORGANIZE THESE LATER
---------------------------------------------------------------------------- */

body .editor-styles-wrapper .wp-block:not(.editor-post-title) {
	max-width: 100%;
}



/* New Styles for Block Theme - ORGANIZE THESE LATER
---------------------------------------------------------------------------- */

body {
	font-family: var(--font-family);
	font-size: var(--font-size);
	line-height: var(--line-height);
	color: var(--color-text);
	font-optical-sizing: auto;
	text-wrap: pretty;
}

/* font styles */

h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-family-headings);
	font-style: italic;
	text-transform: uppercase;
	color: var(--color-headings);
}

h1 {
	font-size: clamp(40px, 37.573px + 0.647vw, 50px);
	line-height: 1.08;
	font-weight: 900;
}

h2 {
	font-size: clamp(32px, 30.058px + 0.518vw, 40px);
	line-height: 1.15;
	font-weight: 900;
}

h3 {
	font-size: clamp(22px, 20.544px + 0.388vw, 28px);
	line-height: 1.15;
	font-weight: 800;
}

h4 {
	font-size: 20px;
	line-height: 24px;
	font-weight: 800;
}


.small-heading {
	font-family: var(--font-family);
	color: var(--color-text);
	font-size: var(--font-size-small);
	line-height: var(--line-height-small);
	text-transform: uppercase;
	letter-spacing: var(--letter-spacing-small);
	font-weight: var(--font-weight-bold);
	margin: 0 0 30px;
}

.preheading,
.bg-light .preheading,
.bg-color-white .preheading {
	font-family: var(--font-family-secondary);
	color: var(--color-accent-1);
	font-size: var(--font-size-medium);
	line-height: var(--line-height-small);
	text-transform: uppercase;
	letter-spacing: 0.5px;
	font-weight: 600;
	margin: 0 0 20px;
}

.blog article .preheading,
.archive article .preheading {
	font-size: var(--font-size);
}

.subheader {
	font-family: var(--font-family);
	color: var(--color-text);
	font-size: clamp(20px, 18.544px + 0.388vw, 26px);
	line-height: 1.2;
	text-transform: none;
	font-style: normal;
	font-weight: 600;
	margin: 0 0 17px;
}

/* flexbox */

.flex-order-1 {
	order: 1;
}

.flex-order-2 {
	order: 2;
}

/* block margins & spacing */

.entry-content > *:first-child {
	margin-top: 0 !important;
}

.layout-boxed + p,
.layout-fullwidth + p {
	margin-top: 40px;
}

.layout-fullwidth + .layout-fullwidth {
	margin-top: 0;
}

.layout-boxed,
.layout-boxed + .layout-fullwidth,
.layout-fullwidth:has(:first-child.bg-color-white) + .layout-fullwidth,
.layout-fullwidth + .layout-fullwidth:has(:first-child.bg-color-white) {
//	margin-top: var(--spacing-xx-large);
}

.entry-content > *:last-child.layout-fullwidth > .bg-color-white:not(.block-trust-logos) {
	padding-bottom: var(--spacing-x-large);
}

.entry-content > :last-child.layout-boxed {
	margin-bottom: var(--spacing-x-large);
}

.boxed-container,
.layout-boxed {
	padding-left: var(--side-spacing);
	padding-right: var(--side-spacing);
}

/* buttons */

.inner-block-buttons {
	display: flex;
	flex-wrap: wrap;
	column-gap: 15px;
	row-gap: 15px;
	margin-top: 35px;
}

.inner-block-buttons .button,
.gform_wrapper input[type="submit"],
.editor-styles-wrapper .inner-block-buttons .button,
.site-container .wp-block-button .wp-block-button__link {
	background: var(--color-primary);
	color: #fff;
	font-family: var(--font-family);
	font-size: var(--font-size-small);
	line-height: var(--line-height-small);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
	text-decoration: none !important;
	border: 2px solid var(--color-primary);
	border-radius: 0;
	padding: 13px 35px 11px;
	transition: var(--transition);
	cursor: pointer;
}

.inner-block-buttons .button:hover,
.inner-block-buttons .button:focus,
.gform_wrapper input[type="submit"]:hover,
.gform_wrapper input[type="submit"]:focus,
.editor-styles-wrapper .inner-block-buttons .button:hover,
.editor-styles-wrapper .inner-block-buttons .button:focus,
.site-container .wp-block-button .wp-block-button__link:hover,
.site-container .wp-block-button .wp-block-button__link:focus {
	text-decoration: none !important;
	background: transparent;
	color: var(--color-primary);
}

.bg-dark .inner-block-buttons .button:hover,
.bg-dark .inner-block-buttons .button:focus,
.bg-dark .gform_wrapper input[type="submit"]:hover,
.bg-dark .gform_wrapper input[type="submit"]:focus,
.bg-dark .editor-styles-wrapper .inner-block-buttons .button:hover,
.bg-dark .editor-styles-wrapper .inner-block-buttons .button:focus {
	background: transparent;
	color: #fff;
	border-color: #fff;
}

.inner-block-buttons .button.button-secondary {
	background: #fff;
	color: var(--color-text);
	border-color: #fff;
}

.inner-block-buttons .button.button-secondary:hover,
.inner-block-buttons .button.button-secondary:focus {
	background: transparent;
	color: #fff;
	border-color: #fff;
}

.inner-block-buttons .button.button-secondary-inverse {
	background: transparent;
	color: #fff;
	border-color: #fff;
}

.inner-block-buttons .button.button-secondary-inverse:hover,
.inner-block-buttons .button.button-secondary-inverse:focus {
	background: #fff;
	color: var(--color-text);
	border-color: #fff;
}

.inner-block-buttons .button.button-tertiary {
	background: var(--color-accent-1);
	color: #fff;
	border-color: var(--color-accent-1);
}

/* separators */

.bg-dark .separator-small {
	border-color: #fff;
}

.separator-small {
	max-width: 60px;
	border-top: 2px solid var(--color-primary);
	margin: 20px auto 30px;
}

/* gravity forms */

.gform_description:empty {
	display: none;
}



@media screen and (max-width: 500px) {

	.subheader {
		margin-bottom: 15px;
	}

	.inner-block-buttons {
		margin-top: 30px;
	}
}