/**********************************************************
// Body
**********************************************************/
body {
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 20px;
	
	--Dark: #183164;
	--Links: #6DA4E7;
	--Alt: #FFBE00;
	--LightBG: #F5F5F5;
	
	--Navy: #183164;
	--Blue: #6DA4E7;
	--Yellow: #FFBE00;
	--Gray: #F5F5F5;
	--Dark-Blue: #607CA5;
	--Light-Blue: #A9C9F1;
	--Cream: #F7F3E5;
	
	--wp--preset--font-size--small: clamp(1rem, 1.5vw, 1.125rem) !important;  /* ~16–18px */
	--wp--preset--font-size--medium: clamp(1.5rem, 3vw, 1.875rem) !important; /* ~24–30px */
	--wp--preset--font-size--large: clamp(2rem, 5vw, 3.4375rem) !important;   /* ~32–55px */
	--wp--preset--font-size--x-large: clamp(2.5rem, 7vw, 4.375rem) !important;/* ~40–70px */

	--Title-Font: 'Montserrat', sans-serif;
	--Body-Font: 'Montserrat', sans-serif;
	
	color: var(--Dark);
	
	}

a { color: var(--Links); }
a:hover { color: var(--Alt); }


/**********************************************************
// Titles
**********************************************************/

h1, h2, h3, h4, h5, h6 { font-family: var(--Title-Font); font-weight: 700; }

.post h1,
.post h2,
.post h3,
.post h4,
.post h5,
.post h6 {
	padding: .5em 0;
	}

h1 {
	font-size: clamp(2.5rem, 6vw + 1rem, 3rem);
	line-height: 1.1;
}

h2 {
	font-size: clamp(2rem, 4vw + 0.75rem, 2.25rem);
	line-height: 1.2;
}

h3 {
	font-size: clamp(1.5rem, 3vw + 0.5rem, 1.8rem);
	line-height: 1.2;
}

h4 {
	font-size: clamp(1.25rem, 2vw + 0.5rem, 1.75rem);
	line-height: 1.4;
}

h5 {
	font-size: 1rem;
	line-height: 1.5;
}

h6 {
	font-size: 0.875rem;
	line-height: 1.5;
}


/**********************************************************
// SPECIAL
**********************************************************/

.Caps {
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.No-Gap { gap: 0!important; }

/**********************************************************
// Content
**********************************************************/
.Content { padding-top: 0; padding-bottom: 0; }
.Content-Posts {
    margin: auto;
    padding: 40px 10px;
    width: 100%;
    max-width: 1300px;
    text-align: center;
    display: flex;
	gap: 50px 2%;
	flex-wrap: wrap;
	justify-content: center;
    }

.blog .Content, .search .Content, .archive .Content {
	max-width: 1300px;
}

/**********************************************************
// Page >> Titles
**********************************************************/
.Page-Title-Wrapper {
	background: var(--Cream);
	padding: 20px;
	margin-left  : calc( -100vw / 2 + 100% / 2 )!important;
	margin-right  : calc( -100vw / 2 + 100% / 2 )!important;
	overflow: hidden;
	position: relative;
	margin-bottom: 20px;
}

.Page-Title {
	max-width: 900px;
	margin: 0 auto;
	text-align: center;
	padding: 10px 0;
	line-height: 1.2em;
	font-size: clamp(2.5rem, 6vw + 1rem, 3rem);
	}

.Page-End-Spacer { width: 100%; height: 50px; }

.Page-Subtitle {
	margin: 0 auto 20px auto;
	padding: 0;
	line-height: 1.5em;
	letter-spacing: 1px;
	text-transform: uppercase;
	text-align: center;
	font-size: 20px;
	}

/**********************************************************
// Post >> Elements
**********************************************************/
.post { margin-bottom: 40px; }
article.post:last-child { margin-bottom: 0; }
article:last-child .post { margin-bottom: 0; }

.post h1,
.post h2,
.post h3,
.post h4,
.post h5,
.post h6 {
	padding: 15px 0;
	}

.post blockquote p:first-child { padding-top: 0; }
.post blockquote p:last-child { padding-bottom: 0; }
.post blockquote {
	margin: 10px auto;
	padding: 0 20px;
	line-height: 24px;
	border-left: 3px solid #333;
	font-style: italic;
	font-size: 20px;
	display: block;
	}

.post .has-white-color blockquote { border-color: #fff; }

.post blockquote cite {
	font-size: 15px; font-weight: bold; font-style: normal;
}

.post p:empty { display: none; }
.post p {
	padding: .5em 0;
	line-height: 1.5em;
	}

.post p.has-background { padding: 1em 1.25em; margin: .5em 0; }

.post ol {
	margin-left: 20px;
	padding-left: 2px;
	list-style: decimal;
	}

.post ul {
	margin-left: 20px;
	padding-left: 2px;
	list-style: disc;
	}

.post li {
	line-height: 1.5em;
	position: relative;
	}

.post .wp-block-table th {
	padding: 10px;
	background: rgba(0, 0, 0, 0.1);
	border: 1px solid #333;
	}

.post .wp-block-table td {
	padding: 10px;
	border: 1px solid #333;
	}

.post figcaption { line-height: 1.5em; }

.wp-block-media-text.alignfull>.wp-block-media-text__content { padding: clamp(1rem, 6vw, 5rem)!important; }

.wp-block-columns.alignfull .wp-block-column { padding: clamp(1rem, 6vw, 5rem)!important; }

.wp-block-columns + .wp-block-columns {
	margin-top: 3rem; 
}

.post .wp-block-column.has-background { padding: clamp(1rem, 3vw + 0.5rem, 2rem); }

.post .wp-block-separator { border-top: 1px solid var(--Dark); max-width: 100%; }
.post .wp-block-separator.has-white-color { border-top: 1px solid #fff; max-width: 100%; }

.post .wp-block-button { margin: 20px 0; }
.post .wp-block-buttons .wp-block-button__link:hover { background: var(--Links); color: #fff; }
.post .wp-block-buttons .wp-block-button__link {
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: calc(.667em + 7px) clamp(1rem, 3.5vw, 3.5rem);
    font-size: .925em;
	font-weight: bold;
	background: var(--Yellow);
	color: #fff;
}

.post .wp-block-file {
	line-height: 1.5em;
	font-weight: bold;
	margin: .5em 0;
}

.post .wp-block-pullquote {
	padding: .5em 0;
}

/**********************************************************
// Post >> Nav
**********************************************************/
/*.Post-Nav {
	margin-top: 30px;
	padding-bottom: 20px;
	text-align: center;
	width: 100%;
	}

.Post-Nav-Link {
	margin: 0 5%;
	display: inline-block;
	vertical-align: top;
	}

.Post-Nav a {
	height: 24px;
	line-height: 20px;
	text-transform: uppercase;
    letter-spacing: 1px;
	font-weight: 700;
	font-size: 12px;
	}

.Post-Nav span,
.Post-Nav i {
	display: inline-block;
	vertical-align: middle;
	}

.Post-Nav-Next a:hover i { right: 0; }
.Post-Nav-Next i {
	margin-right: 10px;
    -webkit-transition: right 0.2s ease-in-out;
    -moz-transition: right 0.2s ease-in-out;
    -ms-transition: right 0.2s ease-in-out;
    -o-transition: right 0.2s ease-in-out;
    transition: right 0.2s ease-in-out;
	position: relative;
    right: -5px;
	top: 0;
	}

.Post-Nav-Prev a:hover i { left: 0; }
.Post-Nav-Prev i {
	margin-left: 10px;
    -webkit-transition: left 0.2s ease-in-out;
    -moz-transition: left 0.2s ease-in-out;
    -ms-transition: left 0.2s ease-in-out;
    -o-transition: left 0.2s ease-in-out;
    transition: left 0.2s ease-in-out;
	position: relative;
    left: -5px;
	top: -1px;
	}
*/

/**********************************************************
// Post >> Nav >> Paginated
**********************************************************/
.Post-Nav {
	margin-top: 30px;
	text-align: center;
	}

.Post-Nav  nav > h2 { display: none; }

.Post-Nav .page-numbers {
	margin: 5px;
	width: 32px;
	height: 32px;
	line-height: 30px;
	border-radius: 36px;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-weight: 700;
	font-size: 14px;
	display: inline-block;
	vertical-align: top;
	}

.Post-Nav .page-numbers {
	text-decoration: none;
	color: var(--Links);
	}

.Post-Nav a.page-numbers:hover { color: var(--Alt); }

.Post-Nav .page-numbers.current:hover { background: var(--Alt); }
.Post-Nav .page-numbers.current {
	background: var(--Links);
	color: #FFF;
	}

.Post-Nav .next {
	margin-left: 15px;
	width: auto;
	}

.Post-Nav .next span,
.Post-Nav .next i {
	display: inline-block;
	vertical-align: middle;
	}

.Post-Nav .next i,
.Post-Nav .prev i {
	font-weight: 400;
	color: var(--Links);
	}

.Post-Nav .next:hover i,
.Post-Nav .prev:hover i {
	color: var(--Alt);
}

.Post-Nav .next i {
	margin-left: 10px;
	font-size: 20px;
	position: relative;
	top: -1px;
	}

.Post-Nav .prev {
	margin-right: 15px;
	width: auto;
	}

.Post-Nav .prev span,
.Post-Nav .prev i {
	display: inline-block;
	vertical-align: middle;
	}

.Post-Nav .prev i {
	margin-right: 10px;
	font-size: 20px;
	position: relative;
	top: -1px;
	}

/**********************************************************
// Social >> Links
**********************************************************/
.Social-Links {
	margin: auto;
	text-align: center;
	font-size: 0;
	display: inline-block;
	vertical-align: middle;
	}

.Social-Links ul {
	margin: auto !important;
	padding: 0 !important;
	list-style: none;
	}

.Social-Links li {
	margin: 0 10px;
	padding: 0 !important;
	display: inline-block;
	vertical-align: middle;
	}

.Social-Links li:first-child { margin-left: 0; }
.Social-Links li:last-child { margin-right: 0; }

.Social-Links li a {
	font-size: 20px;
	display: block;
	}

/**********************************************************
// Social >> Share
**********************************************************/
.Social-Share {
	text-align: center;
	font-size: 0;
	}

.Social-Share ul {
	margin: auto !important;
	padding: 0 !important;
	list-style: none;
	}

.Social-Share li {
	margin: 0 10px;
	padding: 0 !important;
	display: inline-block;
	vertical-align: middle;
	}

.Social-Share li:first-child { margin-left: 0; }
.Social-Share li:last-child { margin-right: 0; }

.Social-Share li h5 {
	padding: 0 !important;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-weight: 600;
	font-size: 14px;
	}

.Social-Share li a span { display: none; }
.Social-Share li a:hover { color: #555; }
.Social-Share li a {
	font-size: 20px;
	color: #333;
	}

/**********************************************************
// Gravity Forms
**********************************************************/
.gform_wrapper {
    margin: 0 auto !important;
	--form-label-size: 17px;
	--form-input-font-size: 20px;
	--form-input-color: var(--Dark);
	--form-input-bg: #fff;
	--form-input-padding: 25px clamp(1rem, 3vw + 0.5rem, 2rem) 30px!important;
	--form-border-radius: 30px; 

	--gf-form-gap-y: 15px!important; 
    }

.White-Text label { color: #fff!important; font-size: 18px!important; }

.gform_wrapper ul.gform_fields { padding-left: 0 !important; }
.gform_wrapper .gform_title { display: none; }

.gform_wrapper ul.gform_fields li.gfield {
    padding-left: 0 !important;
    padding-right: 0 !important;
    }

.gform_wrapper .top_label .gfield_label,
.gform_wrapper .gfield_date_day label,
.gform_wrapper .gfield_date_month label,
.gform_wrapper .gfield_date_year label,
.gform_wrapper .gfield_time_ampm label,
.gform_wrapper .gfield_time_hour label,
.gform_wrapper .gfield_time_minute label,
.gform_wrapper .ginput_complex label,
.gform_wrapper .instruction {
    font-size: var(--form-label-size);
    }

.gform_wrapper .top_label input.medium,
.gform_wrapper .top_label select.medium,
.gform_wrapper .top_label input.large,
.gform_wrapper .top_label select.large,
.gform_wrapper .top_label textarea.textarea {
    padding: var(--form-input-padding);
    width: 99.2% !important;
    border: 0;
    background: var(--form-input-bg);
    color: var(--form-input-color);
    font-size: var(--form-input-font-size);
	border-radius: var(--form-border-radius);
	text-align: center;
    }

.gform_wrapper .gfield_error .ginput_complex .ginput_right input[type=email],
.gform_wrapper .gfield_error .ginput_complex .ginput_right input[type=number],
.gform_wrapper .gfield_error .ginput_complex .ginput_right input[type=password],
.gform_wrapper .gfield_error .ginput_complex .ginput_right input[type=tel],
.gform_wrapper .gfield_error .ginput_complex .ginput_right input[type=text],
.gform_wrapper .gfield_error .ginput_complex .ginput_right input[type=url],
.gform_wrapper .ginput_complex input[type=email],
.gform_wrapper .ginput_complex input[type=number],
.gform_wrapper .ginput_complex input[type=password],
.gform_wrapper .ginput_complex input[type=tel],
.gform_wrapper .ginput_complex input[type=text],
.gform_wrapper .ginput_complex input[type=url] {
    padding: var(--form-input-padding);
    border: 0;
    background: var(--form-input-bg);
    color: var(--form-input-color);
    font-size: var(--form-input-font-size);
	border-radius: var(--form-border-radius);
	text-align: center;
    }

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="url"],
.gform_wrapper input[type="password"],
.gform_wrapper input[type="search"],
.gform_wrapper textarea {
    padding: var(--form-input-padding);
    border: 0;
    background: var(--form-input-bg);
    color: var(--form-input-color);
    font-size: var(--form-input-font-size);
	border-radius: var(--form-border-radius);
	text-align: center;
    }

.gform-theme--framework .gfield:where(.gfield--type-select,.gfield--input-type-select) .chosen-container-single .chosen-single {
	padding: 10px clamp(1rem, 3vw + 0.5rem, 2rem)!important;
    border: 0;
    background: var(--form-input-bg);
    color: var(--form-input-color);
    font-size: var(--form-input-font-size);
	border-radius: var(--form-border-radius);
	height: auto;
	font-weight: bold; text-transform: uppercase; letter-spacing: 1px; font-size: 16px;
}

.gform_wrapper ul.gfield_radio li input[type=radio] {
	margin-top: -3px !important;
	-webkit-appearance: radio;
    }

.gform_wrapper ul.gfield_checkbox li input[type=checkbox] {
    margin-top: -3px !important;
	-webkit-appearance: checkbox;
    }

.gform_wrapper ::-webkit-input-placeholder { color: var(--form-input-color); font-weight: bold; text-transform: uppercase; letter-spacing: 1px; font-size: 16px;}
.gform_wrapper :-moz-placeholder           { color: var(--form-input-color); font-weight: bold; text-transform: uppercase; letter-spacing: 1px; font-size: 16px;}
.gform_wrapper ::-moz-placeholder          { color: var(--form-input-color); font-weight: bold; text-transform: uppercase; letter-spacing: 1px; font-size: 16px; }
.gform_wrapper :-ms-input-placeholder      { color: var(--form-input-color); font-weight: bold; text-transform: uppercase; letter-spacing: 1px; font-size: 16px; }

.gform_wrapper .gform_footer { text-align: center; margin-top: 15px!important; }

body .gform_wrapper .gform_footer input.button,
body .gform_wrapper .gform_footer input[type=submit],
body .gform_wrapper .gform_page_footer .button.gform_button,
body .gform_wrapper .gform_page_footer .button.gform_next_button {
    border: 0;
    text-shadow: none;
    box-shadow: none;
	
	/* Typography */
	font-size: 18px!important;
	font-weight: bold!important;

	/* Colors */
	color: #fff!important;
	background-color: var(--Links)!important;

	/* Spacing & Border */
	padding: 20px 30px!important;
	border-radius: 30px!important;

	/* Text Transform */
	text-transform: uppercase!important;
    }

body .gform_wrapper .gform_footer input.button:hover,
body .gform_wrapper .gform_footer input[type=submit]:hover,
body .gform_wrapper .gform_page_footer .button.gform_button:hover,
body .gform_wrapper .gform_page_footer .button.gform_next_button:hover {
    cursor: pointer;
	color: #fff!important;
    background-color: var(--Alt)!important;
    }

.gform_wrapper .gf_progressbar_wrapper h3.gf_progressbar_title {
	line-height: 30px;
	font-weight: bold;
    font-size: 20px;
    }

/**********************************************************
// Custom Styles
**********************************************************/

.Column-List {
	column-count: 2;
  	column-gap: 2rem;
}



/**********************************************************
// Arrow Link
**********************************************************/

.Arrow-Link a {
	text-transform: uppercase;
	letter-spacing: 1px;
}

.Arrow-Link a:after {
	content: "\f178";
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    margin-left: 8px;
    vertical-align: middle;
    font-size: 17px;
	display: inline-block;
    margin-top: -4px;
}

/**********************************************************
// Accordion
**********************************************************/

body .lightweight-accordion .lightweight-accordion-title {
	background: var(--LightBG);
}

/**********************************************************
// Media Queries
**********************************************************/
@media
all and (max-width: 1024px),
all and (max-device-width: 1024px)
{

}

@media
all and (max-width: 768px),
all and (max-device-width: 768px)
{
	.Content-Posts { padding: 30px 10px; }
	
	.Column-List {
		column-count: 1;
		column-gap: 0;
	}

}
