@import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,700|Raleway:400,800,900|Montserrat:700");
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;700&display=swap');
@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands"}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.fab,.far{font-weight:400}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.far,.fas{font-family:"Font Awesome 5 Free"}.fa,.fas{font-weight:900}
/*
	Future Imperfect by HTML5 UP
	html5up.net | @ajlkn
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

html, body, div, span, applet, object,
iframe, h1, h2, h3, h4, h5, h6, p, blockquote,
pre, a, abbr, acronym, address, big, cite,
code, del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b,
u, i, center, dl, dt, dd, ol, ul, li, fieldset,
form, label, legend, table, caption, tbody,
tfoot, thead, tr, th, td, article, aside,
canvas, details, embed, figure, figcaption,
footer, header, hgroup, menu, nav, output, ruby,
section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;}

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

	blockquote:before, blockquote:after, q:before, q:after {
		content: '';
		content: none;
	}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

body {
	-webkit-text-size-adjust: none;
}

mark {
	background-color: transparent;
	color: inherit;
}

input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input, select, textarea {
	-moz-appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	appearance: none;
}

/* Basic */

	@-ms-viewport {
		width: device-width;
	}

	body {
		-ms-overflow-style: scrollbar;
	}

	@media screen and (max-width : 462px ){

		html, body {
			min-width: 320px;
		}

	}

	html {
		box-sizing: border-box;
	}

	*, *:before, *:after {
		box-sizing: inherit;
	}

	body {
		background: #f4f4f4;
	}

		body.is-preload *, body.is-preload *:before, body.is-preload *:after {
			-moz-animation: none !important;
			-webkit-animation: none !important;
			-ms-animation: none !important;
			animation: none !important;
			-moz-transition: none !important;
			-webkit-transition: none !important;
			-ms-transition: none !important;
			transition: none !important;
		}

/* Type */

	body, input, select, textarea {
		color: #646464;
		font-family: "Source Sans Pro", Helvetica, sans-serif;
		font-size: 14pt;
		font-weight: 400;
		line-height: 1.75;
	}

		@media screen and (max-width: 1680px) {

			body, input, select, textarea {
				font-size: 12pt;
			}

		}

		@media screen and (max-width: 1280px) {

			body, input, select, textarea {
				font-size: 12pt;
			}

		}

		@media screen and (max-width: 980px) {

			body, input, select, textarea {
				font-size: 12pt;
			}

		}

		@media screen and (max-width: 736px) {

			body, input, select, textarea {
				font-size: 12pt;
			}

		}

		@media screen and (max-width : 462px ){

			body, input, select, textarea {
				font-size: 12pt;
			}

		}

	a {
		-moz-transition: color 0.2s ease, border-bottom-color 0.2s ease;
		-webkit-transition: color 0.2s ease, border-bottom-color 0.2s ease;
		-ms-transition: color 0.2s ease, border-bottom-color 0.2s ease;
		transition: color 0.2s ease, border-bottom-color 0.2s ease;
		border-bottom: dotted 1px rgba(160, 160, 160, 0.65);
		color: inherit;
		text-decoration: none;
	}

		a:before {
			-moz-transition: color 0.2s ease;
			-webkit-transition: color 0.2s ease;
			-ms-transition: color 0.2s ease;
			transition: color 0.2s ease;
		}

		a:hover {
			border-bottom-color: transparent;
			color: #2690be !important;
		}

			a:hover:before {
				color: #2690be !important;
			}

	strong, b {
		color: #3c3b3b;
		font-weight: 700;
	}

	em, i {
		font-style: italic;
	}

	p {
		margin: 0 0 2em 0;
	}

	h1, h2, h3, h4, h5, h6 {
		color: #3c3b3b;
		font-family: "Raleway", Helvetica, sans-serif;
		
		letter-spacing: 0.25em;
		line-height: 1.65;
		margin: 0 0 1em 0;
		text-transform: uppercase;
	}

		h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
			color: inherit;
			border-bottom: 0;
			font-weight: 800;
		}

	h2 {
		font-size: 1.1em;
		font-weight: 800;
	}

	h3 {
		font-size: 0.9em;
		font-weight: 800;
	}

	h4 {
		font-size: 0.8em;
	}

	h5 {
		font-size: 0.7em;
	}

	h6 {
		font-size: 0.7em;
	}

	sub {
		font-size: 0.8em;
		position: relative;
		top: 0.5em;
	}

	sup {
		font-size: 0.8em;
		position: relative;
		top: -0.5em;
	}

	blockquote {
		border-left: solid 4px rgba(160, 160, 160, 0.3);
		font-style: italic;
		margin: 0 0 2em 0;
		padding: 0.5em 0 0.5em 2em;
	}

	code {
		background: rgba(160, 160, 160, 0.075);
		border: solid 1px rgba(160, 160, 160, 0.3);
		font-family: "Courier New", monospace;
		font-size: 0.9em;
		margin: 0 0.25em;
		padding: 0.25em 0.65em;
	}

	pre {
		-webkit-overflow-scrolling: touch;
		font-family: "Courier New", monospace;
		font-size: 0.9em;
		margin: 0 0 2em 0;
	}

		pre code {
			display: block;
			line-height: 1.75em;
			padding: 1em 1.5em;
			overflow-x: auto;
		}

	hr {
		border: 0;
		border-bottom: solid 1px rgba(160, 160, 160, 0.3);
		margin: 2em 0;
	}

		hr.major {
			margin: 3em 0;
		}

	.align-left {
		text-align: left;
	}

	.align-center {
		text-align: center;
	}

	.align-right {
		text-align: right;
	}

/* Row */

	.row {
		display: flex;
		flex-wrap: wrap;
		box-sizing: border-box;
		align-items: stretch;
	}

		.row > * {
			box-sizing: border-box;
		}

		.row.gtr-uniform > * > :last-child {
			margin-bottom: 0;
		}

		.row.aln-left {
			justify-content: flex-start;
		}

		.row.aln-center {
			justify-content: center;
		}

		.row.aln-right {
			justify-content: flex-end;
		}

		.row.aln-top {
			align-items: flex-start;
		}

		.row.aln-middle {
			align-items: center;
		}

		.row.aln-bottom {
			align-items: flex-end;
		}

		.row > .imp {
			order: -1;
		}

		.row > .col-1 {
			width: 8.33333%;
		}

		.row > .off-1 {
			margin-left: 8.33333%;
		}

		.row > .col-2 {
			width: 16.66667%;
		}

		.row > .off-2 {
			margin-left: 16.66667%;
		}

		.row > .col-3 {
			width: 25%;
		}

		.row > .off-3 {
			margin-left: 25%;
		}

		.row > .col-4 {
			width: 33.33333%;
		}

		.row > .off-4 {
			margin-left: 33.33333%;
		}

		.row > .col-5 {
			width: 41.66667%;
		}

		.row > .off-5 {
			margin-left: 41.66667%;
		}

		.row > .col-6 {
			width: 50%;
		}

		.row > .off-6 {
			margin-left: 50%;
		}

		.row > .col-7 {
			width: 58.33333%;
		}

		.row > .off-7 {
			margin-left: 58.33333%;
		}

		.row > .col-8 {
			width: 66.66667%;
		}

		.row > .off-8 {
			margin-left: 66.66667%;
		}

		.row > .col-9 {
			width: 75%;
		}

		.row > .off-9 {
			margin-left: 75%;
		}

		.row > .col-10 {
			width: 83.33333%;
		}

		.row > .off-10 {
			margin-left: 83.33333%;
		}

		.row > .col-11 {
			width: 91.66667%;
		}

		.row > .off-11 {
			margin-left: 91.66667%;
		}

		.row > .col-12 {
			width: 100%;
		}

		.row > .off-12 {
			margin-left: 100%;
		}

		.row.gtr-0 {
			margin-top: 0;
			margin-left: 0em;
		}

			.row.gtr-0 > * {
				padding: 0 0 0 0em;
			}

			.row.gtr-0.gtr-uniform {
				margin-top: 0em;
			}

				.row.gtr-0.gtr-uniform > * {
					padding-top: 0em;
				}

		.row.gtr-25 {
			margin-top: 0;
			margin-left: -0.25em;
		}

			.row.gtr-25 > * {
				padding: 0 0 0 0.25em;
			}

			.row.gtr-25.gtr-uniform {
				margin-top: -0.25em;
			}

				.row.gtr-25.gtr-uniform > * {
					padding-top: 0.25em;
				}

		.row.gtr-50 {
			margin-top: 0;
			margin-left: -0.5em;
		}

			.row.gtr-50 > * {
				padding: 0 0 0 0.5em;
			}

			.row.gtr-50.gtr-uniform {
				margin-top: -0.5em;
			}

				.row.gtr-50.gtr-uniform > * {
					padding-top: 0.5em;
				}

		.row {
			margin-top: 0;
			margin-left: -1em;
		}

			.row > * {
				padding: 0 0 0 1em;
			}

			.row.gtr-uniform {
				margin-top: -1em;
			}

				.row.gtr-uniform > * {
					padding-top: 1em;
				}

		.row.gtr-150 {
			margin-top: 0;
			margin-left: -1.5em;
		}

			.row.gtr-150 > * {
				padding: 0 0 0 1.5em;
			}

			.row.gtr-150.gtr-uniform {
				margin-top: -1.5em;
			}

				.row.gtr-150.gtr-uniform > * {
					padding-top: 1.5em;
				}

		.row.gtr-200 {
			margin-top: 0;
			margin-left: -2em;
		}

			.row.gtr-200 > * {
				padding: 0 0 0 2em;
			}

			.row.gtr-200.gtr-uniform {
				margin-top: -2em;
			}

				.row.gtr-200.gtr-uniform > * {
					padding-top: 2em;
				}

		@media screen and (max-width: 1680px) {

			.row {
				display: flex;
				flex-wrap: wrap;
				box-sizing: border-box;
				align-items: stretch;
			}

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-xlarge {
					order: -1;
				}

				.row > .col-1-xlarge {
					width: 8.33333%;
				}

				.row > .off-1-xlarge {
					margin-left: 8.33333%;
				}

				.row > .col-2-xlarge {
					width: 16.66667%;
				}

				.row > .off-2-xlarge {
					margin-left: 16.66667%;
				}

				.row > .col-3-xlarge {
					width: 25%;
				}

				.row > .off-3-xlarge {
					margin-left: 25%;
				}

				.row > .col-4-xlarge {
					width: 33.33333%;
				}

				.row > .off-4-xlarge {
					margin-left: 33.33333%;
				}

				.row > .col-5-xlarge {
					width: 41.66667%;
				}

				.row > .off-5-xlarge {
					margin-left: 41.66667%;
				}

				.row > .col-6-xlarge {
					width: 50%;
				}

				.row > .off-6-xlarge {
					margin-left: 50%;
				}

				.row > .col-7-xlarge {
					width: 58.33333%;
				}

				.row > .off-7-xlarge {
					margin-left: 58.33333%;
				}

				.row > .col-8-xlarge {
					width: 66.66667%;
				}

				.row > .off-8-xlarge {
					margin-left: 66.66667%;
				}

				.row > .col-9-xlarge {
					width: 75%;
				}

				.row > .off-9-xlarge {
					margin-left: 75%;
				}

				.row > .col-10-xlarge {
					width: 83.33333%;
				}

				.row > .off-10-xlarge {
					margin-left: 83.33333%;
				}

				.row > .col-11-xlarge {
					width: 91.66667%;
				}

				.row > .off-11-xlarge {
					margin-left: 91.66667%;
				}

				.row > .col-12-xlarge {
					width: 100%;
				}

				.row > .off-12-xlarge {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.25em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.25em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.25em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.25em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -0.5em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 0.5em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -0.5em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 0.5em;
						}

				.row {
					margin-top: 0;
					margin-left: -1em;
				}

					.row > * {
						padding: 0 0 0 1em;
					}

					.row.gtr-uniform {
						margin-top: -1em;
					}

						.row.gtr-uniform > * {
							padding-top: 1em;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -1.5em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 1.5em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -1.5em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 1.5em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -2em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 2em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -2em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 2em;
						}

		}

		@media screen and (max-width: 1280px) {

			.row {
				display: flex;
				flex-wrap: wrap;
				box-sizing: border-box;
				align-items: stretch;
			}

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-large {
					order: -1;
				}

				.row > .col-1-large {
					width: 8.33333%;
				}

				.row > .off-1-large {
					margin-left: 8.33333%;
				}

				.row > .col-2-large {
					width: 16.66667%;
				}

				.row > .off-2-large {
					margin-left: 16.66667%;
				}

				.row > .col-3-large {
					width: 25%;
				}

				.row > .off-3-large {
					margin-left: 25%;
				}

				.row > .col-4-large {
					width: 33.33333%;
				}

				.row > .off-4-large {
					margin-left: 33.33333%;
				}

				.row > .col-5-large {
					width: 41.66667%;
				}

				.row > .off-5-large {
					margin-left: 41.66667%;
				}

				.row > .col-6-large {
					width: 50%;
				}

				.row > .off-6-large {
					margin-left: 50%;
				}

				.row > .col-7-large {
					width: 58.33333%;
				}

				.row > .off-7-large {
					margin-left: 58.33333%;
				}

				.row > .col-8-large {
					width: 66.66667%;
				}

				.row > .off-8-large {
					margin-left: 66.66667%;
				}

				.row > .col-9-large {
					width: 75%;
				}

				.row > .off-9-large {
					margin-left: 75%;
				}

				.row > .col-10-large {
					width: 83.33333%;
				}

				.row > .off-10-large {
					margin-left: 83.33333%;
				}

				.row > .col-11-large {
					width: 91.66667%;
				}

				.row > .off-11-large {
					margin-left: 91.66667%;
				}

				.row > .col-12-large {
					width: 100%;
				}

				.row > .off-12-large {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.25em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.25em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.25em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.25em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -0.5em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 0.5em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -0.5em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 0.5em;
						}

				.row {
					margin-top: 0;
					margin-left: -1em;
				}

					.row > * {
						padding: 0 0 0 1em;
					}

					.row.gtr-uniform {
						margin-top: -1em;
					}

						.row.gtr-uniform > * {
							padding-top: 1em;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -1.5em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 1.5em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -1.5em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 1.5em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -2em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 2em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -2em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 2em;
						}

		}

		@media screen and (max-width: 980px) {

			.row {
				display: flex;
				flex-wrap: wrap;
				box-sizing: border-box;
				align-items: stretch;
			}

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-medium {
					order: -1;
				}

				.row > .col-1-medium {
					width: 8.33333%;
				}

				.row > .off-1-medium {
					margin-left: 8.33333%;
				}

				.row > .col-2-medium {
					width: 16.66667%;
				}

				.row > .off-2-medium {
					margin-left: 16.66667%;
				}

				.row > .col-3-medium {
					width: 25%;
				}

				.row > .off-3-medium {
					margin-left: 25%;
				}

				.row > .col-4-medium {
					width: 33.33333%;
				}

				.row > .off-4-medium {
					margin-left: 33.33333%;
				}

				.row > .col-5-medium {
					width: 41.66667%;
				}

				.row > .off-5-medium {
					margin-left: 41.66667%;
				}

				.row > .col-6-medium {
					width: 50%;
				}

				.row > .off-6-medium {
					margin-left: 50%;
				}

				.row > .col-7-medium {
					width: 58.33333%;
				}

				.row > .off-7-medium {
					margin-left: 58.33333%;
				}

				.row > .col-8-medium {
					width: 66.66667%;
				}

				.row > .off-8-medium {
					margin-left: 66.66667%;
				}

				.row > .col-9-medium {
					width: 75%;
				}

				.row > .off-9-medium {
					margin-left: 75%;
				}

				.row > .col-10-medium {
					width: 83.33333%;
				}

				.row > .off-10-medium {
					margin-left: 83.33333%;
				}

				.row > .col-11-medium {
					width: 91.66667%;
				}

				.row > .off-11-medium {
					margin-left: 91.66667%;
				}

				.row > .col-12-medium {
					width: 100%;
				}

				.row > .off-12-medium {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.25em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.25em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.25em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.25em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -0.5em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 0.5em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -0.5em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 0.5em;
						}

				.row {
					margin-top: 0;
					margin-left: -1em;
				}

					.row > * {
						padding: 0 0 0 1em;
					}

					.row.gtr-uniform {
						margin-top: -1em;
					}

						.row.gtr-uniform > * {
							padding-top: 1em;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -1.5em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 1.5em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -1.5em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 1.5em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -2em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 2em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -2em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 2em;
						}

		}

		@media screen and (max-width: 736px) {

			.row {
				display: flex;
				flex-wrap: wrap;
				box-sizing: border-box;
				align-items: stretch;
			}

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-small {
					order: -1;
				}

				.row > .col-1-small {
					width: 8.33333%;
				}

				.row > .off-1-small {
					margin-left: 8.33333%;
				}

				.row > .col-2-small {
					width: 16.66667%;
				}

				.row > .off-2-small {
					margin-left: 16.66667%;
				}

				.row > .col-3-small {
					width: 25%;
				}

				.row > .off-3-small {
					margin-left: 25%;
				}

				.row > .col-4-small {
					width: 33.33333%;
				}

				.row > .off-4-small {
					margin-left: 33.33333%;
				}

				.row > .col-5-small {
					width: 41.66667%;
				}

				.row > .off-5-small {
					margin-left: 41.66667%;
				}

				.row > .col-6-small {
					width: 50%;
				}

				.row > .off-6-small {
					margin-left: 50%;
				}

				.row > .col-7-small {
					width: 58.33333%;
				}

				.row > .off-7-small {
					margin-left: 58.33333%;
				}

				.row > .col-8-small {
					width: 66.66667%;
				}

				.row > .off-8-small {
					margin-left: 66.66667%;
				}

				.row > .col-9-small {
					width: 75%;
				}

				.row > .off-9-small {
					margin-left: 75%;
				}

				.row > .col-10-small {
					width: 83.33333%;
				}

				.row > .off-10-small {
					margin-left: 83.33333%;
				}

				.row > .col-11-small {
					width: 91.66667%;
				}

				.row > .off-11-small {
					margin-left: 91.66667%;
				}

				.row > .col-12-small {
					width: 100%;
				}

				.row > .off-12-small {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.25em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.25em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.25em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.25em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -0.5em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 0.5em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -0.5em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 0.5em;
						}

				.row {
					margin-top: 0;
					margin-left: -1em;
				}

					.row > * {
						padding: 0 0 0 1em;
					}

					.row.gtr-uniform {
						margin-top: -1em;
					}

						.row.gtr-uniform > * {
							padding-top: 1em;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -1.5em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 1.5em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -1.5em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 1.5em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -2em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 2em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -2em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 2em;
						}

		}

		@media screen and (max-width : 462px ){

			.row {
				display: flex;
				flex-wrap: wrap;
				box-sizing: border-box;
				align-items: stretch;
			}

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-xsmall {
					order: -1;
				}

				.row > .col-1-xsmall {
					width: 8.33333%;
				}

				.row > .off-1-xsmall {
					margin-left: 8.33333%;
				}

				.row > .col-2-xsmall {
					width: 16.66667%;
				}

				.row > .off-2-xsmall {
					margin-left: 16.66667%;
				}

				.row > .col-3-xsmall {
					width: 25%;
				}

				.row > .off-3-xsmall {
					margin-left: 25%;
				}

				.row > .col-4-xsmall {
					width: 33.33333%;
				}

				.row > .off-4-xsmall {
					margin-left: 33.33333%;
				}

				.row > .col-5-xsmall {
					width: 41.66667%;
				}

				.row > .off-5-xsmall {
					margin-left: 41.66667%;
				}

				.row > .col-6-xsmall {
					width: 50%;
				}

				.row > .off-6-xsmall {
					margin-left: 50%;
				}

				.row > .col-7-xsmall {
					width: 58.33333%;
				}

				.row > .off-7-xsmall {
					margin-left: 58.33333%;
				}

				.row > .col-8-xsmall {
					width: 66.66667%;
				}

				.row > .off-8-xsmall {
					margin-left: 66.66667%;
				}

				.row > .col-9-xsmall {
					width: 75%;
				}

				.row > .off-9-xsmall {
					margin-left: 75%;
				}

				.row > .col-10-xsmall {
					width: 83.33333%;
				}

				.row > .off-10-xsmall {
					margin-left: 83.33333%;
				}

				.row > .col-11-xsmall {
					width: 91.66667%;
				}

				.row > .off-11-xsmall {
					margin-left: 91.66667%;
				}

				.row > .col-12-xsmall {
					width: 100%;
				}

				.row > .off-12-xsmall {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.25em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.25em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.25em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.25em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -0.5em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 0.5em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -0.5em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 0.5em;
						}

				.row {
					margin-top: 0;
					margin-left: -1em;
				}

					.row > * {
						padding: 0 0 0 1em;
					}

					.row.gtr-uniform {
						margin-top: -1em;
					}

						.row.gtr-uniform > * {
							padding-top: 1em;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -1.5em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 1.5em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -1.5em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 1.5em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -2em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 2em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -2em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 2em;
						}

		}

/* Author */

	.author {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		-moz-flex-direction: row;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		-moz-align-items: center;
		-webkit-align-items: center;
		-ms-align-items: center;
		align-items: center;
		-moz-justify-content: -moz-flex-end;
		-webkit-justify-content: -webkit-flex-end;
		-ms-justify-content: -ms-flex-end;
		justify-content: flex-end;
		border-bottom: 0;
		font-family: "Raleway", Helvetica, sans-serif;
		font-size: 0.6em;
		font-weight: 400;
		letter-spacing: 0.25em;
		text-transform: uppercase;
		white-space: nowrap;
	}

		.author .name {
			-moz-transition: border-bottom-color 0.2s ease;
			-webkit-transition: border-bottom-color 0.2s ease;
			-ms-transition: border-bottom-color 0.2s ease;
			transition: border-bottom-color 0.2s ease;
			border-bottom: dotted 1px rgba(160, 160, 160, 0.65);
			display: block;
			margin: 0 1.5em 0 0;
		}

		.author img {
			border-radius: 100%;
			display: block;
			width: 4em;
		}

		.author:hover .name {
			border-bottom-color: transparent;
		}

/* Blurb */

	.blurb h2 {
		font-size: 0.8em;
		margin: 0 0 1.5em 0;
	}

	.blurb h3 {
		font-size: 0.7em;
	}

	.blurb p {
		font-size: 0.9em;
	}

/* Box */

	.box {
		border: solid 1px rgba(160, 160, 160, 0.3);
		margin-bottom: 2em;
		padding: 1.5em;
	}

		.box > :last-child,
		.box > :last-child > :last-child,
		.box > :last-child > :last-child > :last-child {
			margin-bottom: 0;
		}

		.box.alt {
			border: 0;
			border-radius: 0;
			padding: 0;
		}

/* Button */

	input[type="submit"],
	input[type="reset"],
	input[type="button"],
	button,
	.button {
		-moz-appearance: none;
		-webkit-appearance: none;
		-ms-appearance: none;
		appearance: none;
		-moz-transition: background-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
		-webkit-transition: background-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
		-ms-transition: background-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
		transition: background-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
		background-color: transparent;
		border: 0;
		box-shadow: inset 0 0 0 1px rgba(160, 160, 160, 0.3);
		color: #3c3b3b !important;
		cursor: pointer;
		display: inline-block;
		font-family: "Raleway", Helvetica, sans-serif;
		font-size: 0.6em;
		font-weight: 800;
		height: 4.8125em;
		letter-spacing: 0.25em;
		line-height: 4.8125em;
		padding: 0 2.5em;
		text-align: center;
		text-decoration: none;
		text-transform: uppercase;
		white-space: nowrap;
	}

		input[type="submit"]:hover,
		input[type="reset"]:hover,
		input[type="button"]:hover,
		button:hover,
		.button:hover {
			box-shadow: inset 0 0 0 1px #2690be;
			color: #2690be !important;
		}

			input[type="submit"]:hover:active,
			input[type="reset"]:hover:active,
			input[type="button"]:hover:active,
			button:hover:active,
			.button:hover:active {
				background-color: rgba(46, 186, 174, 0.05);
			}

		input[type="submit"]:before, input[type="submit"]:after,
		input[type="reset"]:before,
		input[type="reset"]:after,
		input[type="button"]:before,
		input[type="button"]:after,
		button:before,
		button:after,
		.button:before,
		.button:after {
			color: #aaaaaa;
			position: relative;
		}

		input[type="submit"]:before,
		input[type="reset"]:before,
		input[type="button"]:before,
		button:before,
		.button:before {
			left: -1em;
			padding: 0 0 0 0.75em;
		}

		input[type="submit"]:after,
		input[type="reset"]:after,
		input[type="button"]:after,
		button:after,
		.button:after {
			left: 1em;
			padding: 0 0.75em 0 0;
		}

		input[type="submit"].fit,
		input[type="reset"].fit,
		input[type="button"].fit,
		button.fit,
		.button.fit {
			width: 100%;
		}

		input[type="submit"].large,
		input[type="reset"].large,
		input[type="button"].large,
		button.large,
		.button.large {
			font-size: 0.7em;
			padding: 0 3em;
		}

		input[type="submit"].small,
		input[type="reset"].small,
		input[type="button"].small,
		button.small,
		.button.small {
			font-size: 0.5em;
		}

		input[type="submit"].disabled, input[type="submit"]:disabled,
		input[type="reset"].disabled,
		input[type="reset"]:disabled,
		input[type="button"].disabled,
		input[type="button"]:disabled,
		button.disabled,
		button:disabled,
		.button.disabled,
		.button:disabled {
			pointer-events: none;
			color: rgba(160, 160, 160, 0.3) !important;
		}

			input[type="submit"].disabled:before, input[type="submit"]:disabled:before,
			input[type="reset"].disabled:before,
			input[type="reset"]:disabled:before,
			input[type="button"].disabled:before,
			input[type="button"]:disabled:before,
			button.disabled:before,
			button:disabled:before,
			.button.disabled:before,
			.button:disabled:before {
				color: rgba(160, 160, 160, 0.3) !important;
			}
		.button.style-red {
  /* This overrides the default grey text color with red */
  color: #D43F3A !important;

  /* This overrides the default grey box-shadow "border" with a red one */
  box-shadow: inset 0 0 0 1px #D43F3A !important;
}
.button.style-red:hover {
  /* This overrides the default grey text color with red */
  color: #2690be !important;

  /* This overrides the default grey box-shadow "border" with a red one */
  box-shadow: inset 0 0 0 1px #2690be !important;
}
/* Form */

	form {
		margin: 0 0 2em 0;
		overflow-x: hidden;
	}

		form > :last-child {
			margin-bottom: 0;
		}

		form > .fields {
			display: -moz-flex;
			display: -webkit-flex;
			display: -ms-flex;
			display: flex;
			-moz-flex-wrap: wrap;
			-webkit-flex-wrap: wrap;
			-ms-flex-wrap: wrap;
			flex-wrap: wrap;
			width: calc(100% + 3em);
			margin: -1.5em 0 2em -1.5em;
		}

			form > .fields > .field {
				-moz-flex-grow: 0;
				-webkit-flex-grow: 0;
				-ms-flex-grow: 0;
				flex-grow: 0;
				-moz-flex-shrink: 0;
				-webkit-flex-shrink: 0;
				-ms-flex-shrink: 0;
				flex-shrink: 0;
				padding: 1.5em 0 0 1.5em;
				width: calc(100% - 1.5em);
			}

				form > .fields > .field.half {
					width: calc(50% - 0.75em);
				}

				form > .fields > .field.third {
					width: calc(100%/3 - 0.5em);
				}

				form > .fields > .field.quarter {
					width: calc(25% - 0.375em);
				}

		@media screen and (max-width : 462px ){

			form > .fields {
				width: calc(100% + 3em);
				margin: -1.5em 0 2em -1.5em;
			}

				form > .fields > .field {
					padding: 1.5em 0 0 1.5em;
					width: calc(100% - 1.5em);
				}

					form > .fields > .field.half {
						width: calc(100% - 1.5em);
					}

					form > .fields > .field.third {
						width: calc(100% - 1.5em);
					}

					form > .fields > .field.quarter {
						width: calc(100% - 1.5em);
					}

		}

	label {
		color: #3c3b3b;
		display: block;
		font-size: 0.9em;
		font-weight: 700;
		margin: 0 0 1em 0;
	}

	input[type="text"],
	input[type="password"],
	input[type="email"],
	input[type="tel"],
	select,
	textarea {
		-moz-appearance: none;
		-webkit-appearance: none;
		-ms-appearance: none;
		appearance: none;
		background: rgba(160, 160, 160, 0.075);
		border: none;
		border: solid 1px rgba(160, 160, 160, 0.3);
		border-radius: 0;
		color: inherit;
		display: block;
		outline: 0;
		padding: 0 1em;
		text-decoration: none;
		width: 100%;
	}

		input[type="text"]:invalid,
		input[type="password"]:invalid,
		input[type="email"]:invalid,
		input[type="tel"]:invalid,
		select:invalid,
		textarea:invalid {
			box-shadow: none;
		}

		input[type="text"]:focus,
		input[type="password"]:focus,
		input[type="email"]:focus,
		input[type="tel"]:focus,
		select:focus,
		textarea:focus {
			border-color: #2690be;
			box-shadow: inset 0 0 0 1px #2690be;
		}

	.select-wrapper {
		text-decoration: none;
		display: block;
		position: relative;
	}

		.select-wrapper:before {
			-moz-osx-font-smoothing: grayscale;
			-webkit-font-smoothing: antialiased;
			display: inline-block;
			font-style: normal;
			font-variant: normal;
			text-rendering: auto;
			line-height: 1;
			text-transform: none !important;
			font-family: 'Font Awesome 5 Free';
			font-weight: 900;
		}

		.select-wrapper:before {
			color: rgba(160, 160, 160, 0.3);
			content: '\f078';
			display: block;
			height: 2.75em;
			line-height: 2.75em;
			pointer-events: none;
			position: absolute;
			right: 0;
			text-align: center;
			top: 0;
			width: 2.75em;
		}

		.select-wrapper select::-ms-expand {
			display: none;
		}

	select {
		background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' preserveAspectRatio='none' viewBox='0 0 40 40'%3E%3Cpath d='M9.4,12.3l10.4,10.4l10.4-10.4c0.2-0.2,0.5-0.4,0.9-0.4c0.3,0,0.6,0.1,0.9,0.4l3.3,3.3c0.2,0.2,0.4,0.5,0.4,0.9 c0,0.4-0.1,0.6-0.4,0.9L20.7,31.9c-0.2,0.2-0.5,0.4-0.9,0.4c-0.3,0-0.6-0.1-0.9-0.4L4.3,17.3c-0.2-0.2-0.4-0.5-0.4-0.9 c0-0.4,0.1-0.6,0.4-0.9l3.3-3.3c0.2-0.2,0.5-0.4,0.9-0.4S9.1,12.1,9.4,12.3z' fill='rgba(160, 160, 160, 0.3)' /%3E%3C/svg%3E");
		background-size: 1.25rem;
		background-repeat: no-repeat;
		background-position: calc(100% - 1rem) center;
		height: 2.75em;
		padding-right: 2.75em;
		text-overflow: ellipsis;
	}

		select option {
			color: #3c3b3b;
			background: #ffffff;
		}

		select:focus::-ms-value {
			background-color: transparent;
		}

		select::-ms-expand {
			display: none;
		}

	input[type="text"],
	input[type="password"],
	input[type="email"],
	select {
		height: 2.75em;
	}

	textarea {
		padding: 0.75em 1em;
	}

	input[type="checkbox"],
	input[type="radio"] {
		-moz-appearance: none;
		-webkit-appearance: none;
		-ms-appearance: none;
		appearance: none;
		display: block;
		float: left;
		margin-right: -2em;
		opacity: 0;
		width: 1em;
		z-index: -1;
	}

		input[type="checkbox"] + label,
		input[type="radio"] + label {
			text-decoration: none;
			color: #646464;
			cursor: pointer;
			display: inline-block;
			font-size: 1em;
			font-weight: 400;
			padding-left: 2.4em;
			padding-right: 0.75em;
			position: relative;
		}

			input[type="checkbox"] + label:before,
			input[type="radio"] + label:before {
				-moz-osx-font-smoothing: grayscale;
				-webkit-font-smoothing: antialiased;
				display: inline-block;
				font-style: normal;
				font-variant: normal;
				text-rendering: auto;
				line-height: 1;
				text-transform: none !important;
				font-family: 'Font Awesome 5 Free';
				font-weight: 900;
			}

			input[type="checkbox"] + label:before,
			input[type="radio"] + label:before {
				background: rgba(160, 160, 160, 0.075);
				border: solid 1px rgba(160, 160, 160, 0.3);
				content: '';
				display: inline-block;
				font-size: 0.8em;
				height: 2.0625em;
				left: 0;
				line-height: 2.0625em;
				position: absolute;
				text-align: center;
				top: 0;
				width: 2.0625em;
			}

		input[type="checkbox"]:checked + label:before,
		input[type="radio"]:checked + label:before {
			background: #3c3b3b;
			border-color: #3c3b3b;
			color: #ffffff;
			content: '\f00c';
		}

		input[type="checkbox"]:focus + label:before,
		input[type="radio"]:focus + label:before {
			border-color: #2690be;
			box-shadow: 0 0 0 1px #2690be;
		}

	input[type="radio"] + label:before {
		border-radius: 100%;
	}

	::-webkit-input-placeholder {
		color: #aaaaaa !important;
		opacity: 1.0;
	}

	:-moz-placeholder {
		color: #aaaaaa !important;
		opacity: 1.0;
	}

	::-moz-placeholder {
		color: #aaaaaa !important;
		opacity: 1.0;
	}

	:-ms-input-placeholder {
		color: #aaaaaa !important;
		opacity: 1.0;
	}

/* Icon */

	.icon {
		text-decoration: none;
		border-bottom: none;
		position: relative;
	}

		.icon:before {
			-moz-osx-font-smoothing: grayscale;
			-webkit-font-smoothing: antialiased;
			display: inline-block;
			font-style: normal;
			font-variant: normal;
			text-rendering: auto;
			line-height: 1;
			text-transform: none !important;
			font-family: 'Font Awesome 5 Free';
			font-weight: 400;
		}

		.icon > .label {
			display: none;
		}

		.icon:before {
			line-height: inherit;
		}

		.icon.solid:before {
			font-weight: 900;
		}

		.icon.brands:before {
			font-family: 'Font Awesome 5 Brands';
		}

		.icon.suffix:before {
			float: right;
		}

/* Image */

	.image {
		border: 0;
		display: inline-block;
		position: relative;
	}

		.image img {
			display: block;
		}

		.image.left, .image.right {
			max-width: 40%;
		}

			.image.left img, .image.right img {
				width: 100%;
			}

		.image.left {
			float: left;
			padding: 0 1.5em 1em 0;
			top: 0.25em;
		}


		.image.fit {
			display: block;
			margin: 0 0 2em 0;
			width: 100%;
		}

			.image.fit img {
				width: 100%;
			}

		.image.featured {
			display: block;
			margin: 0 0 3em 0;
			width: 100%;
		}

			.image.featured img {
				width: 100%;
			}

			@media screen and (max-width: 736px) {

				.image.featured {
					margin: 0 0 1.5em 0;
				}

			}

		.image.main {
			display: block;
			margin: 0 0 3em 0;
			width: 100%;
		}

			.image.main img {
				width: 100%;
			}

/* List */

	ol {
		list-style: decimal;
		margin: 0 0 2em 0;
		padding-left: 1.25em;
	}

		ol li {
			padding-left: 0.25em;
		}

	ul {
		list-style: disc;
		margin: 0 0 2em 0;
		padding-left: 1em;
	}

		ul li {
			padding-left: 0.5em;
		}

		ul.alt {
			list-style: none;
			padding-left: 0;
		}

			ul.alt li {
				border-top: solid 1px rgba(160, 160, 160, 0.3);
				padding: 0.5em 0;
			}

				ul.alt li:first-child {
					border-top: 0;
					padding-top: 0;
				}

	dl {
		margin: 0 0 2em 0;
	}

		dl dt {
			display: block;
			font-weight: 700;
			margin: 0 0 1em 0;
		}

		dl dd {
			margin-left: 2em;
		}

/* Actions */

	ul.actions {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		cursor: default;
		list-style: none;
		margin-left: -1em;
		padding-left: 0;
		padding-top: .5em;
	}

		ul.actions li {
			padding: 0 0 0 1em;
			vertical-align: middle;
			
		}

		ul.actions.special {
			-moz-justify-content: center;
			-webkit-justify-content: center;
			-ms-justify-content: center;
			justify-content: center;
			width: 100%;
			margin-left: 0;
		}

			ul.actions.special li:first-child {
				padding-left: 0;
			}

		ul.actions.stacked {
			-moz-flex-direction: column;
			-webkit-flex-direction: column;
			-ms-flex-direction: column;
			flex-direction: column;
			margin-left: 0;
		}

			ul.actions.stacked li {
				padding: 1.3em 0 0 0;
			}

				ul.actions.stacked li:first-child {
					padding-top: 0;
				}

		ul.actions.fit {
			width: calc(100% + 1em);
		}

			ul.actions.fit li {
				-moz-flex-grow: 1;
				-webkit-flex-grow: 1;
				-ms-flex-grow: 1;
				flex-grow: 1;
				-moz-flex-shrink: 1;
				-webkit-flex-shrink: 1;
				-ms-flex-shrink: 1;
				flex-shrink: 1;
				width: 100%;
			}

				ul.actions.fit li > * {
					width: 100%;
				}

			ul.actions.fit.stacked {
				width: 100%;
			}

		@media screen and (max-width : 462px ){

			ul.actions:not(.fixed) {
				-moz-flex-direction: column;
				-webkit-flex-direction: column;
				-ms-flex-direction: column;
				flex-direction: column;
				margin-left: 0;
				width: 100% !important;
			}

				ul.actions:not(.fixed) li {
					-moz-flex-grow: 1;
					-webkit-flex-grow: 1;
					-ms-flex-grow: 1;
					flex-grow: 1;
					-moz-flex-shrink: 1;
					-webkit-flex-shrink: 1;
					-ms-flex-shrink: 1;
					flex-shrink: 1;
					padding: 1em 0 0 0;
					text-align: center;
					width: 100%;
				}

					ul.actions:not(.fixed) li > * {
						width: 100%;
					}

					ul.actions:not(.fixed) li:first-child {
						padding-top: 0;
					}

					ul.actions:not(.fixed) li input[type="submit"],
					ul.actions:not(.fixed) li input[type="reset"],
					ul.actions:not(.fixed) li input[type="button"],
					ul.actions:not(.fixed) li button,
					ul.actions:not(.fixed) li .button {
						width: 100%;
					}

						ul.actions:not(.fixed) li input[type="submit"].icon:before,
						ul.actions:not(.fixed) li input[type="reset"].icon:before,
						ul.actions:not(.fixed) li input[type="button"].icon:before,
						ul.actions:not(.fixed) li button.icon:before,
						ul.actions:not(.fixed) li .button.icon:before {
							margin-left: -0.5em;
						}

		}

/* Icons */

	ul.icons {
		cursor: default;
		list-style: none;
		padding-left: 0;
	}

		ul.icons li {
			display: inline-block;
			padding: 0 1em 0 0;
		}

			ul.icons li:last-child {
				padding-right: 0;
			}

			ul.icons li > * {
				border: 0;
			}

				ul.icons li > * .label {
					display: none;
				}

/* Posts */

	ul.posts {
		list-style: none;
		padding: 0;
	}

		ul.posts li {
			border-top: dotted 1px rgba(160, 160, 160, 0.3);
			margin: 1.5em 0 0 0;
			padding: 1.5em 0 0 0;
		}

			ul.posts li:first-child {
				border-top: 0;
				margin-top: 0;
				padding-top: 0;
			}

		ul.posts article {
			display: -moz-flex;
			display: -webkit-flex;
			display: -ms-flex;
			display: flex;
			-moz-align-items: -moz-flex-start;
			-webkit-align-items: -webkit-flex-start;
			-ms-align-items: -ms-flex-start;
			align-items: flex-start;
			-moz-flex-direction: row-reverse;
			-webkit-flex-direction: row-reverse;
			-ms-flex-direction: row-reverse;
			flex-direction: row-reverse;
		}

			ul.posts article .image {
				display: block;
				margin-right: 1.5em;
				min-width: 4em;
				width: 4em;
			}

				ul.posts article .image img {
					width: 100%;
				}

			ul.posts article header {
				-moz-flex-grow: 1;
				-webkit-flex-grow: 1;
				-ms-flex-grow: 1;
				flex-grow: 1;
				-ms-flex: 1;
			}

				ul.posts article header h3 {
					font-size: 0.7em;
					margin-top: 0.125em;
				}

				ul.posts article header .published {
					display: block;
					font-size: 0.6em;
					font-weight: 400;
					letter-spacing: 0.25em;
					margin: -0.625em 0 1.7em 0
				}

				ul.posts article header > :last-child {
					margin-bottom: 0;
				}

/* Mini Post */

	.mini-post {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		-moz-flex-direction: column-reverse;
		-webkit-flex-direction: column-reverse;
		-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;
		background: #ffffff;
		border: solid 1px rgba(160, 160, 160, 0.3);
		margin: 0 0 2em 0;
	}

		.mini-post .image {
			overflow: hidden;
			width: 100%;
		}

			.mini-post .image img {
				-moz-transition: -moz-transform 0.2s ease-out;
				-webkit-transition: -webkit-transform 0.2s ease-out;
				-ms-transition: -ms-transform 0.2s ease-out;
				transition: transform 0.2s ease-out;
				width: 100%;
			}

			.mini-post .image:hover img {
				-moz-transform: scale(1.05);
				-webkit-transform: scale(1.05);
				-ms-transform: scale(1.05);
				transform: scale(1.05);
			}

		.mini-post header {
			padding: 1.25em 4.25em 0.1em 1.25em ;
			min-height: 4em;
			position: relative;
			-moz-flex-grow: 1;
			-webkit-flex-grow: 1;
			-ms-flex-grow: 1;
			flex-grow: 1;
		}

			.mini-post header h3 {
				font-size: 0.7em;
			}

			.mini-post header .published {
				display: block;
				font-size: 0.6em;
				font-weight: 400;
				letter-spacing: 0.25em;
				margin: -0.625em 0 1.7em 0;
			}

			.mini-post header .author {
				position: absolute;
				right: 2em;
				top: 2em;
			}

	.mini-posts {
		margin: 0 0 2em 0;
	}

		@media screen and (max-width: 1280px) {

			.mini-posts {
				display: -moz-flex;
				display: -webkit-flex;
				display: -ms-flex;
				display: flex;
				-moz-flex-wrap: wrap;
				-webkit-flex-wrap: wrap;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
				width: calc(100% + 2em);
			}

				.mini-posts > * {
					margin: 2em 2em 0 0;
					width: calc(50% - 2em);
				}

				.mini-posts > :nth-child(-n + 2) {
					margin-top: 0;
				}

		}

		@media screen and (max-width : 462px ){

			.mini-posts {
				display: block;
				width: 100%;
			}

				.mini-posts > * {
					margin: 0 0 2em 0;
					width: 100%;
				}

		}

/* Post */

	.post {
		padding: 3em 3em 1em 3em ;
		background: #ffffff;
		border: solid 1px rgba(160, 160, 160, 0.3);
		margin: 0 0 3em 0;
		position: relative;
	}

		.post > header {
			display: -moz-flex;
			display: -webkit-flex;
			display: -ms-flex;
			display: flex;
			border-bottom: solid 1px rgba(160, 160, 160, 0.3);
			left: -3em;
			margin: -3em 0 3em 0;
			position: relative;
			width: calc(100% + 6em);
		}

			.post > header .title {
    -moz-flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-grow: 1;
    flex-grow: 1;
    -ms-flex: 1;
    padding: 3em; /* Symmetrical padding */
    text-align: center; /* Center the text */
}

				.post > header .title h2 {
					font-weight: 900;
					font-size: 1.2em;
				}

				.post > header .title > :last-child {
					margin-bottom: 0;
				}

			.post > header .meta {
				padding: 3.75em 3em 1.75em 3em ;
				border-left: solid 1px rgba(160, 160, 160, 0.3);
				min-width: 17em;
				text-align: right;
				width: 17em;
			}

				.post > header .meta > * {
					margin: 0 0 1em 0;
				}

				.post > header .meta > :last-child {
					margin-bottom: 0;
				}

				.post > header .meta .published {
					color: #3c3b3b;
					display: block;
					font-size: 0.7em;
					font-weight: 800;
					letter-spacing: 0.25em;
					margin-top: 0.5em;
					white-space: nowrap;
				}

		.post > a.image.featured {
			overflow: hidden;
		}

			.post > a.image.featured img {
				-moz-transition: -moz-transform 0.2s ease-out;
				-webkit-transition: -webkit-transform 0.2s ease-out;
				-ms-transition: -ms-transform 0.2s ease-out;
				transition: transform 0.2s ease-out;
			}

			.post > a.image.featured:hover img {
				-moz-transform: scale(1.05);
				-webkit-transform: scale(1.05);
				-ms-transform: scale(1.05);
				transform: scale(1.05);
			}

		.post > footer {
			display: -moz-flex;
			display: -webkit-flex;
			display: -ms-flex;
			display: flex;
			-moz-align-items: center;
			-webkit-align-items: center;
			-ms-align-items: center;
			align-items: center;
		}

			.post > footer .actions {
				-moz-flex-grow: 1;
				-webkit-flex-grow: 1;
				-ms-flex-grow: 1;
				flex-grow: 1;
			}

			.post > footer .stats {
				cursor: default;
				list-style: none;
				padding: 0;
			}

				.post > footer .stats li {
					border-left: solid 1px rgba(160, 160, 160, 0.3);
					display: inline-block;
					font-size: 0.6em;
					font-weight: 400;
					letter-spacing: 0.25em;
					line-height: 1;
					margin: 0 0 0 2em;
					padding: 0 0 0 2em;
				}

					.post > footer .stats li:first-child {
						border-left: 0;
						margin-left: 0;
						padding-left: 0;
					}

					.post > footer .stats li .icon {
						border-bottom: 0;
					}

						.post > footer .stats li .icon:before {
							color: rgba(160, 160, 160, 0.3);
							margin-right: 0.75em;
						}

		@media screen and (max-width: 980px) {

			.post {
				border-left: 0;
				border-right: 0;
				left: -3em;
				width: calc(100% + (3em * 2));
			}

				.post > header {
					-moz-flex-direction: column;
					-webkit-flex-direction: column;
					-ms-flex-direction: column;
					flex-direction: column;
					padding: 3.75em 3em 1.25em 3em ;
					border-left: 0;
				}

					.post > header .title {
						-ms-flex: 0 1 auto;
						margin: 0 0 2em 0;
						padding: 0;
						text-align: center;
					}

					.post > header .meta {
						-moz-align-items: center;
						-webkit-align-items: center;
						-ms-align-items: center;
						align-items: center;
						display: -moz-flex;
						display: -webkit-flex;
						display: -ms-flex;
						display: flex;
						-moz-justify-content: center;
						-webkit-justify-content: center;
						-ms-justify-content: center;
						justify-content: center;
						border-left: 0;
						margin: 0 0 2em 0;
						padding-top: 0;
						padding: 0;
						text-align: left;
						width: 100%;
					}

						.post > header .meta > * {
							border-left: solid 1px rgba(160, 160, 160, 0.3);
							margin-left: 2em;
							padding-left: 2em;
						}

						.post > header .meta > :first-child {
							border-left: 0;
							margin-left: 0;
							padding-left: 0;
						}

						.post > header .meta .published {
							margin-bottom: 0;
							margin-top: 0;
						}

						.post > header .meta .author {
							-moz-flex-direction: row-reverse;
							-webkit-flex-direction: row-reverse;
							-ms-flex-direction: row-reverse;
							flex-direction: row-reverse;
							margin-bottom: 0;
						}

							.post > header .meta .author .name {
								margin: 0 0 0 1.5em;
							}

							.post > header .meta .author img {
								width: 3.5em;
							}

		}

		@media screen and (max-width: 736px) {

			.post {
				padding: 1.5em 1.5em 0.1em 1.5em ;
				left: -1.5em;
				margin: 0 0 2em 0;
				width: calc(100% + (1.5em * 2));
			}

				.post > header {
					padding: 3em 1.5em 0.5em 1.5em ;
					left: -1.5em;
					margin: -1.5em 0 1.5em 0;
					width: calc(100% + 3em);
				}

					.post > header .title h2 {
						font-size: 1.1em;
					}

		}

		@media screen and (max-width : 462px ){

			.post > header .meta {
				-moz-align-items: center;
				-webkit-align-items: center;
				-ms-align-items: center;
				align-items: center;
				-moz-flex-direction: column;
				-webkit-flex-direction: column;
				-ms-flex-direction: column;
				flex-direction: column;
			}

				.post > header .meta > * {
					border-left: 0;
					margin: 1em 0 0 0;
					padding-left: 0;
				}

				.post > header .meta .author .name {
					display: none;
				}

			.post > .image.featured {
				margin-left: -1.5em;
				margin-top: calc(-1.5em - 1px);
				width: calc(100% + 3em);
			}

			.post > footer {
				-moz-align-items: -moz-stretch;
				-webkit-align-items: -webkit-stretch;
				-ms-align-items: -ms-stretch;
				align-items: stretch;
				-moz-flex-direction: column-reverse;
				-webkit-flex-direction: column-reverse;
				-ms-flex-direction: column-reverse;
				flex-direction: column-reverse;
			}

				.post > footer .stats {
					text-align: center;
				}

					.post > footer .stats li {
						margin: 0 0 0 1.25em;
						padding: 0 0 0 1.25em;
					}

		}

/* Section/Article */

	section.special, article.special {
		text-align: center;
	}

	
/* New Gallery Container Style */
.gallery {
    padding: 3em 3em 1em 3em;
    background: #ffffff;
    border: solid 1px rgba(160, 160, 160, 0.3);
    margin: 0 0 3em 0;
    position: relative;
}

/* Responsive adjustments for the gallery container */
@media screen and (max-width: 980px) {
    .gallery {
        border-left: 0;
        border-right: 0;
        left: -3em;
        width: calc(100% + (3em * 2));
    }
}
 
@media screen and (max-width: 736px) {
    .gallery {
        padding: 1.5em 1.5em 0.1em 1.5em;
        left: -1.5em;
        margin: 0 0 2em 0;
        width: calc(100% + (1.5em * 2));
    }
	 .gallery .actions.pagination {
    /*
      Force the flex container to stay in a row.
      The !important is used here to ensure it overrides
      the template's default mobile styles.
    */
    flex-direction: row !important;
  }
}

/* Optional but Recommended: Ensure Splide images behave correctly */
.gallery .splide__slide img {
    width: 100%;
    height: auto;
    display: block; /* Prevents extra space below the image */
}
.gallery .actions.pagination {
  /* Adds space between the carousel and the buttons */
  margin-top: 2em;

  /* --- Centering Logic --- */
  /* 1. Explicitly make it a flex container */
  display: flex;

  /* 2. Center the buttons horizontally. This is the key part. */
  justify-content: center;

  /* 3. Use 'gap' for clean spacing between the buttons */
  gap: 1.5em; /* Adjust this value as needed */
}


/*
  This is an important addition. It removes any old spacing rules
  (like margin-left) from the list items that would break the centering.
*/
.gallery .actions.pagination li {
  margin: 1em;
  padding: 0;
}
/* Table */

	.table-wrapper {
		-webkit-overflow-scrolling: touch;
		overflow-x: auto;
	}

	table {
		margin: 0 0 2em 0;
		width: 100%;
	}

		table tbody tr {
			border: solid 1px rgba(160, 160, 160, 0.3);
			border-left: 0;
			border-right: 0;
		}

			table tbody tr:nth-child(2n + 1) {
				background-color: rgba(160, 160, 160, 0.075);
			}

		table td {
			padding: 0.75em 0.75em;
		}

		table th {
			color: #3c3b3b;
			font-size: 0.9em;
			font-weight: 700;
			padding: 0 0.75em 0.75em 0.75em;
			text-align: left;
		}

		table thead {
			border-bottom: solid 2px rgba(160, 160, 160, 0.3);
		}

		table tfoot {
			border-top: solid 2px rgba(160, 160, 160, 0.3);
		}

		table.alt {
			border-collapse: separate;
		}

			table.alt tbody tr td {
				border: solid 1px rgba(160, 160, 160, 0.3);
				border-left-width: 0;
				border-top-width: 0;
			}

				table.alt tbody tr td:first-child {
					border-left-width: 1px;
				}

			table.alt tbody tr:first-child td {
				border-top-width: 1px;
			}

			table.alt thead {
				border-bottom: 0;
			}

			table.alt tfoot {
				border-top: 0;
			}

/* Header */

	body {
		padding-top: 3.5em;
	}

	#header {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		-moz-justify-content: space-between;
		-webkit-justify-content: space-between;
		-ms-justify-content: space-between;
		justify-content: space-between;
		background-color: #ffffff;
		align-items: center
		border-bottom: solid 1px rgba(160, 160, 160, 0.3);
		height: 3.5em;
		left: 0;
		line-height: 3.5em;
		position: fixed;
		top: 0;
		width: 100%;
		z-index: 10000;
	}

		#header a {
			color: inherit;
			text-decoration: none;
		}

		#header ul {
			list-style: none;
			margin: 0;
			padding-left: 0;
		}

			#header ul li {
				display: inline-block;
				padding-left: 0;
			}

		#header h1 {
			height: inherit;
			line-height: inherit;
			padding: 0 0 0 1.5em;
			white-space: nowrap;
		}

			#header h1 a {
				font-size: 0.7em;
			}

		#header .links {
			-moz-flex: 1;
			-webkit-flex: 1;
			-ms-flex: 1;
			flex: 1;
			border-left: solid 1px rgba(160, 160, 160, 0.3);
			height: inherit;
			line-height: inherit;
			margin-left: 1.5em;
			overflow: hidden;
			padding-left: 1.5em;
		}

			#header .links ul li {
				border-left: solid 1px rgba(160, 160, 160, 0.3);
				line-height: 1;
				margin-left: 1em;
				padding-left: 1em;
			}

				#header .links ul li:first-child {
					border-left: 0;
					margin-left: 0;
					padding-left: 0;
				}

				#header .links ul li a {
					border-bottom: 0;
					font-family: "Raleway", Helvetica, sans-serif;
					font-size: 0.7em;
					font-weight: 400;
					letter-spacing: 0.25em;
					text-transform: uppercase;
				}

		#header .main {
			height: inherit;
			line-height: inherit;
			text-align: right;
		}

			#header .main ul {
				height: inherit;
				line-height: inherit;
			}

				#header .main ul li {
					border-left: solid 1px rgba(160, 160, 160, 0.3);
					height: inherit;
					line-height: inherit;
					white-space: nowrap;
				}

					#header .main ul li > * {
						display: block;
						float: left;
					}

					#header .main ul li > a {
						text-decoration: none;
						border-bottom: 0;
						color: #3c3b3b;
						overflow: hidden;
						position: relative;
						text-indent: 4em;
						width: 4em;
					}

						#header .main ul li > a:before {
							-moz-osx-font-smoothing: grayscale;
							-webkit-font-smoothing: antialiased;
							display: inline-block;
							font-style: normal;
							font-variant: normal;
							text-rendering: auto;
							line-height: 1;
							text-transform: none !important;
							font-family: 'Font Awesome 5 Free';
							font-weight: 900;
						}

						#header .main ul li > a:before {
							display: block;
							height: inherit;
							left: 0;
							line-height: inherit;
							position: absolute;
							text-align: center;
							text-indent: 0;
							top: 0;
							width: inherit;
						}

		#header form {
			margin: 0;
		}

			#header form input {
				display: inline-block;
				height: 2.5em;
				position: relative;
				top: -2px;
				vertical-align: middle;
			}

		#header #search {
			-moz-transition: all 0.5s ease;
			-webkit-transition: all 0.5s ease;
			-ms-transition: all 0.5s ease;
			transition: all 0.5s ease;
			max-width: 0;
			opacity: 0;
			overflow: hidden;
			padding: 0;
			white-space: nowrap;
		}

			#header #search input {
				width: 12em;
			}

			#header #search.visible {
				max-width: 12.5em;
				opacity: 1;
				padding: 0 0.5em 0 0;
			}

		@media screen and (max-width: 980px) {

			#header .links {
				display: none;
			}

		}

		@media screen and (max-width: 736px) {

			#header {
				height: 2.75em;
				line-height: 2.75em;
			}

				#header h1 {
					padding: 0 0 0 1em;
				}

				#header .main .search {
					display: none;
				}

		}
@media screen and (max-width: 480px) {

    /* --- Hide the Phone Icon --- */
    #header .main ul li.phone-header-link a i.fa-phone {
        display: none; /* This hides the phone icon */
    }

    /* --- Adjust Spacing for Text-Only --- */
    #header .main ul li.phone-header-link {
        margin-right: 0.2em; /* Reduce the space between the number and the menu icon */
		position: relative; /* This "unlocks" the ability to move the element */
    	top: 2px;   
    }

}
/* Wrapper */

	#wrapper {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		-moz-flex-direction: row-reverse;
		-webkit-flex-direction: row-reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
		-moz-transition: opacity 0.5s ease;
		-webkit-transition: opacity 0.5s ease;
		-ms-transition: opacity 0.5s ease;
		transition: opacity 0.5s ease;
		margin: 0 auto;
		max-width: 100%;
		opacity: 1;
		padding: 1.5em 4.5em;
		width: 90em;
	}

		body.is-menu-visible #wrapper {
			opacity: 0.15;
		}

		@media screen and (max-width: 1680px) {

			#wrapper {
				padding: 1.5em;
			}

		}

		@media screen and (max-width: 1280px) {

			#wrapper {
				display: block;
			}

		}

		@media screen and (max-width: 736px) {

			#wrapper {
				padding: 1em;
			}

		}

		body.single #wrapper {
			display: block;
		}

/* Main */

	#main {
		-moz-flex-grow: 1;
		-webkit-flex-grow: 1;
		-ms-flex-grow: 1;
		flex-grow: 1;
		-ms-flex: 1;
		width: 100%;
	}

/* Sidebar */

	#sidebar {
		margin-right: 3em;
		min-width: 22em;
		width: 22em;
	}

		#sidebar > * {
			border-top: solid 1px rgba(160, 160, 160, 0.3);
			margin: 3em 0 0 0;
			padding: 3em 0 0 0;
		}

		#sidebar > :first-child {
			border-top: 0;
			margin-top: 0;
			padding-top: 0;
		}

		@media screen and (max-width: 1280px) {

			#sidebar {
				border-top: solid 1px rgba(160, 160, 160, 0.3);
				margin: 3em 0 0 0;
				min-width: 0;
				padding: 3em 0 0 0;
				width: 100%;
				overflow-x: hidden;
			}

		}

/* --- Your New Intro Section CSS --- */

#intro {
	text-align: center;
}

#intro .logo {
    border-bottom: 0;
    display: block;
    margin:  auto 1em;
    position: relative;
    width: 140px;
    height: 140px;
}

#intro .logo:before {
    display: none; /* Hides the polygon frame */
}

#intro .logo img {
    display: block;
    width: 140px;
    height: 140px;
}

#intro header h2 {
    font-size: 2em;
    font-weight: 900;
}

#intro header p {
    font-size: 0.8em;
}
	@media screen and (max-width: 1280px) {

		#intro {
			margin: 0 0 3em 0;
			text-align: center;
		}

			#intro header h2 {
				font-size: 2em;
			}

			#intro header p {
				font-size: 0.7em;
			}

	}

	@media screen and (max-width: 736px) {

		#intro {
			margin: 0 0 1.5em 0;
			padding: 1.25em 0;
		}

			#intro > :last-child {
				margin-bottom: 0;
			}

			#intro .logo {
				 margin: 0 auto 0.5em; /* This re-applies the horizontal centering */
}
			}

			#intro header h2 {
				font-size: 1.25em;
			}

			#intro header > :last-child {
				margin-bottom: 0;
			}

	}

/* Footer */

	#footer .icons {
		color: #aaaaaa;
	}

	body.single #footer {
		text-align: center;
	}
/* --- 1. Main Menu Container (No Changes) --- */
#menu {
    transform: translateX(25em);
    transition: transform 0.5s ease, visibility 0.5s;
    background: #ffffff;
    border-left: solid 1px rgba(160, 160, 160, 0.3);
    height: 100%;
    max-width: 80%;
    overflow-y: auto;
    position: fixed;
    right: 0;
    top: 0;
    visibility: hidden;
    width: 25em;
    z-index: 10002;
    padding: 2em;
}

#menu section ul li a h3:hover{
	 color: #2690be;
}

body.is-menu-visible #menu {
    transform: translateX(0);
    visibility: visible;
}
@media screen and (max-width: 736px) { #menu { padding: 1.5em; } }


/* --- 2. The List and List Items --- */
#menu ul.links {
    list-style: none;
    padding: 0;
    margin: 0;
}
#menu ul.links > li {
    border-top: dotted 1px rgba(160, 160, 160, 0.3);
    margin-top: 1.5em;
    padding-top: 1.5em;
}
#menu ul.links > li:first-child {
    border-top: 0;
    margin-top: 0;
    padding-top: 0;
}

/* --- THE POSITIONING FIX STARTS HERE --- */

/* 3. Make the list item the positioning context for the arrow */
#menu .menu-item-has-children {
    position: relative; /* CRITICAL: This is the anchor for the arrow */
}


/* 4. Style the Top-Level Link (<a> tag) */
a.main-menu-link {
    display: block; /* Make it take up the full width */
    padding-right: 2em; /* IMPORTANT: Add space on the right so text doesn't go under the arrow */
    border-bottom: 0;
    text-decoration: none;
    
 
}

/* --- 5. The Absolute Positioning for the Arrow --- */
.submenu-indicator {
    position: absolute;      /* Take it out of the normal flow */
    right: 0;                /* Position it on the far right of the <li> */
    top: 70%;                /* Move its top edge to the vertical midpoint of the <li> */
    transform: translateY(-40%); /* Pull it back up by half its own height */

    /* Basic styling */
    font-size: 0.8em;
    color: #3c3b3b;
    transition: transform 0.3s ease;
}

.submenu-indicator::before {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f078';
}


/* --- 6. Submenu and Hover States --- */
a.main-menu-link.active .submenu-indicator {
    transform: translateY(-50%) rotate(180deg); /* Keep the vertical centering during rotation */
}

a.main-menu-link:hover {
    color: #2690be;
}

ul.submenu {
    list-style: none;
    padding: 1em 0 0 1.5em;
    margin: 0;
    display: none;
}

ul.submenu li a {
    padding: 0.6em 0;
    font-family: "Raleway", Helvetica, sans-serif;
    font-size: 0.7em;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    color: #646464;
    border-bottom: 0;
    transition: color 0.2s ease;
}

ul.submenu li a:hover {
    color: #2690be;
}

/* == My Custom Website Styles ===== */
/* ================================= */
/* --- A. HEADING STYLES --- */

/* A1. For large, centered, primary section titles */
.text-heading-main-center {
    
    font-size: 2em;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.25em;
    text-align: center;
    color: #2690be;
}

/* A2. For large, left-aligned, primary section titles (like on the posts page) */
.text-heading-main-left {
    
    font-size: 2em;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.25em;
    text-align: left;
    color: #3c3b3b;
}

/* A3. For smaller, centered titles under images/icons */
.text-heading-card-title {
  
    font-size: 1em;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    text-align: center;
    color: #3c3b3b;
}

/* A4. For even smaller titles, like in the "Why Choose Us" section */
.text-heading-small {
   
    font-size: 0.9em;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #3c3b3b;
}


/* --- B. SUBHEADING & BODY TEXT STYLES --- */

/* B1. For the main intro subheading on the homepage */
.text-subheading-intro {
   
    font-size: 0.9em;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.25em;
    line-height: 2.5;
    color: #333;
}

/* B2. For the subheading on the posts list page */
.text-subheading-post {
    font-family: "Source Sans Pro", Helvetica, sans-serif;
    font-size: 1.1em;
    font-weight: 700;
    text-transform: none;
    letter-spacing: normal;
    color: #666;
}

/* B3. For the main introductory paragraph */
.text-body-intro {
    font-family: 'Inter', sans-serif;
    font-size: 0.9em; /* Standard body font size */
    line-height: 1.8;
    text-transform: none;
    letter-spacing: normal;
    color: #333;
}
.text-body-intro a:hover {
    color: #2690be; /* The theme's main dark text color */
    border-bottom-color: transparent; /* Makes the underline disappear on hover */
}

/* B4. For all other general paragraphs, descriptions, and excerpts */
.text-body-general {
    font-family: 'Inter', sans-serif;
    font-size: 0.9em;
    line-height: 1.7;
    text-transform: none !important;
    letter-spacing: normal !important;font-family: 'Inter', sans-serif;copy
    color: #333;
}


/* --- C. NAVIGATION & LINK STYLES --- */

/* C1. For the main "DRJ PAINTING" link in the header */
.text-header-brand {
    font-family: "Raleway", Helvetica, sans-serif;
    font-size: 0.7em;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.25em;
    color: #3c3b3b;
    border-bottom: 0;
}

/* C2. For the top navigation menu links */
.text-header-menu {
    font-family: "Raleway", Helvetica, sans-serif;
    font-size: 0.7em;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.25em;
    border-bottom: 0;
}

/* C3. For the phone number in the header */
.text-header-phone {
    font-family: "Montserrat", Helvetica, sans-serif;
    font-size: 0.8em;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.25em;
    color: #3c3b3b;
    border-bottom: 0;
}

/* C4. For the slide-out menu (main links) */
.text-side-menu-main {
    font-family: "Raleway", Helvetica, sans-serif;
    font-size: 0.7em;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.25em;
    color: #3c3b3b;
}

/* C5. For the slide-out menu (sub-links) */
.text-side-menu-sub {
    font-family: "Raleway", Helvetica, sans-serif;
    font-size: 0.6em;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    color: #646464;
    border-bottom: 0;
}


/* --- D. BUTTON & FOOTER STYLES --- */

/* D1. For large pagination buttons */
.text-button-large {
    font-family: "Raleway", Helvetica, sans-serif;
    font-size: 0.7em;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.25em;
}

/* D2. For smaller, general-purpose buttons like "Read More" */
.text-button-small {
    font-family: "Raleway", Helvetica, sans-serif;
    font-size: 0.8em;
    font-weight: 800;
    text-transform: none;
    letter-spacing: normal;
}

/* D3. For footer contact info */
.text-footer-contact {
  font-family: 'Inter', sans-serif;
    font-size: 1em;
    font-weight: 400;
    text-transform: none;
    letter-spacing: normal;
    color: #3c3b3b;
    border-bottom: 0;
}

/* D4. For the final copyright notice */
.text-footer-copyright {
    font-family: "Raleway", Helvetica, sans-serif;
    font-size: 0.7em;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.25em;
    color: #aaaaaa;
}
/* Intro Section Logo and Text */
#intro {
	text-align: center;
}
#intro .logo {
    border-bottom: 0;
    display: block;
    margin: 0 auto 1em;
    position: relative;
    width: 140px;
    height: 140px;
}
#intro .logo:before {
    display: none;
}
#intro .logo img {
    display: block;
    width: 140px;
    height: 140px;
}
@media screen and (max-width: 736px) {
	#intro .logo {
    	margin: 0 auto 0.5em; 
	}
}

/* --- THIS IS THE PART YOU NEED TO ADD --- */

/* Contact Info Footer */
ul.contact-info {
	font-size: 1em;
	font-family: 'Inter', sans-serif;
    list-style: none;      /* This is the line that removes the bullet points */
    padding-left: 0;       /* This removes the space where the bullets were */
    margin: 0 0 2em 0;
    text-align: left;
}

.contact-info li {
    padding: 0.5em 0;
}

.contact-info li a {
    color: #3c3b3b; /* Use a standard text color */
    border-bottom: 0;
    text-decoration: none;
}

.contact-info li a:hover {
    color: #2690be; /* Theme's accent color for hover */
}

.contact-info li i {
    color: #3c3b3b; /* Light grey for icons */
    margin-right: 0.75em;
}
/* --- ADD THIS NEW RULE --- */
.contact-info li a:hover i {
    color: #2690be; /* This changes the icon color on hover */
}
/* Copyright and ABN Footer */
.copyright-info {
    text-align: center;
	font-family: 'Inter', sans-serif;
    color: #3c3b3b; /* A light grey color, same as other footer text */
    font-size: 1em; /* Make it a bit smaller */
    padding-top: 2em; /* This creates space BETWEEN the line and the text */
    margin-top: 2em;  /* This creates space ABOVE the line */
    border-top: 1px solid rgba(160, 160, 160, 0.3); /* The faint grey line */
}
/* Fix for aligning items in the three-column layout */
.post .row > .col-4 {
    display: flex;
    flex-direction: column;
}

.post .row > .col-4 > footer {
    margin-top: auto;
}
/* Reasons to Choose Us - Icon Grid Style */
.reasons-grid {
    margin: 4em 0;
    text-align: center; /* Center everything in the columns */
}
.reasons-grid .row > div {
    margin-bottom: 2em; /* Add space below each item on mobile */
}
.reasons-grid .icon {
    font-size: 3em; /* Make icons big and impactful */
    color: #2690be;
    margin-bottom: 0.5em;
}
.reasons-grid h3 {
    font-size: 1em; /* Adjust title size as needed */
    letter-spacing: 0.1em; /* Tighten up letter spacing for short titles */
}
/* Styling for descriptions in the icon grid */
.reasons-grid p {
    font-size: 0.7em; /* Makes the text slightly smaller */
    line-height: 1.6; /* Improves readability for short paragraphs */
    margin-bottom: 0;
}
/* Why Choose Us - Icon Grid Section */
.reasons-grid {
    margin: 2em 0; /* Adds 4em of space above and below the whole section */
    padding: 0 1em; /* Adds 3em of padding on the LEFT and RIGHT */
}

.reasons-grid .row > div {
    margin-bottom: 2em;
}

.reasons-grid h2 {
    margin-bottom: 2em; /* Adds some space below the "Why Choose Us?" title */
}

.reasons-grid .icon {
    font-size: 3em;
    color: #2690be;
    margin-bottom: 0.5em;
}

.reasons-grid h3 {
    font-size: 1em;
    letter-spacing: 0.1em;
}

.reasons-grid p {
    font-size: 0.9em;
    line-height: 1.6;
    margin-bottom: 0;
}
/* == Custom Google Reviews Section == */
/* =================================== */

.reviews-section {
    margin: 1em 0;
}

.review-card {
    background: #ffffff;
    border: 1px solid rgba(160, 160, 160, 0.3);
    padding: 1.5em;
    height: 100%;
}

.review-header {
    display: flex;
    align-items: center;
    margin-bottom: 1.5em;
}

/* This new rule removes the underline from the avatar's link */
.review-header > a {
    border-bottom: 0; 
}

.review-avatar {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    margin-right: 1em;
    display: block;
}

.review-author-info {
    /* This element is fine as is */
}

/* This styles the link on the author's name */
a.review-author-name {
    font-weight: 700;
    color: #3c3b3b;
    border-bottom: 0;
    text-decoration: none;
    display: block;
}
a.review-author-name:hover {
    color: #2690be;
}

.review-stars {
    margin-top: 0.25em;
}
.review-stars .icon {
    color: #2690be;
    font-size: 0.9em;
}

/* This is where we make the review text smaller */
.review-text {
    font-style: italic;
    color: #646464;
    font-size: 0.9em; /* Makes the review text smaller */
    line-height: 1.7; /* Improves readability */
    margin-bottom: 0;
}
.review-stars {
    margin-top: 0.5em;
    display: flex;       /* This activates flexbox */
    align-items: center; /* This vertically aligns the logo and stars */
}

/* New rule for the Google logo image */
.review-source-logo {
    width: 25px;  /* A good small size */
    height: 25px;
    margin-right: 0.5em; /* Adds space between the logo and the first star */
}

.review-stars .icon {
    color: #2690be;
    font-size: 0.9em;
}
/* Make the parent list item a positioning container */
#menu .links .menu-item-has-children {
    position: relative;
}

/* Style the submenu itself - hidden by default */
#menu .submenu {
    list-style: none;
    padding-left: 1.5em; /* Indent the submenu */
    display: none; /* Hide it by default */
	color: #3c3b3b;
		font-family: "Raleway", Helvetica, sans-serif;
		font-weight: 800;
		letter-spacing: 0.25em;
		line-height: 1;
		margin: 0 0 1em 0;
		text-transform: uppercase;
}

/* Style the individual submenu links */
#menu .submenu {
    list-style: none;
    padding-left: 1.5em; /* Indent the submenu */
    display: none; /* Hide it by default */
}

/* This rule handles ALL the text styling */
#menu .submenu li a {
    display: block; /* Make the whole area clickable */
    padding: 0.5em 0; /* Controls spacing between items */
    color: #646464;
    font-family: "Raleway", Helvetica, sans-serif;
    font-weight: 700; /* A good semi-bold weight */
    font-size: 0.7em;  /* <<< THIS CONTROLS THE FONT SIZE */
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border: 0;
}

#menu .submenu li a:hover {
    color: #2690be; /* Use the theme's accent color on hover */
}


/* Create the dropdown arrow indicator */
.submenu-indicator {
    position: absolute;
    right: 0;
    top: -1; /* Change top to 0 */
    height: 100%; /* Make it the full height of the parent */
    display: flex; /* Use flexbox for perfect centering */
    align-items: center; /* This is the key for vertical centering */
    font-size: 0.7em; /* Make the arrow smaller */
    color: #3c3b3b; /* Set the correct color */
    transition: transform 0.3s ease;
}
.submenu-indicator::before {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f078'; /* Font Awesome "down arrow" icon */
}

/* Rotate the arrow when the menu is open */
.menu-item-has-children > a.active .submenu-indicator {
    transform: translateY(-50%) rotate(180deg);
}
.splide__slide img {
  width: 100%;
  height: auto;
}
.splide__slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/* 1. Set a maximum width on the carousel container */
/* This targets ANY element with the class, so it works for both! */
.limited-width-gallery {
  max-width: 800px;
  margin: 0 auto;
}
#image-carousel-2 {
  max-width: 600px;
}

/* 2. Ensure the images inside are responsive and maintain their aspect ratio */
#image-carousel .splide__slide img {
  width: 100%;    /* Make the image fill the full width of its container (the slide) */
  height: auto;   /* CRITICAL: This tells the browser to automatically calculate the height to maintain the original aspect ratio */
  display: block; /* A good practice to remove any extra space below the image */
}
#image-carousel-2 .splide__slide {
  /* This creates a 16:9 box for the video to load into */
  aspect-ratio: 9 / 16;

  /* Optional: A dark background while the video loads */
  background-color: #000;
}
#header .main ul li.phone-header-link {
    /* Remove the vertical line that separates icons */
    border-left: none;
    /* Add some space between the phone and the menu icon */
    margin-right: 0.2em; 
}

/* Target the link (<a> tag) inside the phone number list item */
#header .main ul li.phone-header-link a {
	  font-family: "Montserrat", Helvetica, sans-serif;
    font-weight: 700; /* Use 700 for a nice bold look */
    /* --- Part 1: UNDO the problematic icon styles --- */
    width: auto;         /* Allow it to be as wide as needed */
    text-indent: 0;      /* Bring text back into view */
    overflow: visible;   /* Stop hiding the text */
    
    /* --- Part 2: APPLY the "DRJ PAINTING" styles --- */
   
    font-size: 0.8em;
    font-weight: 800;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: #3c3b3b;      /* Your desired color */
    
    /* --- Part 3: General cleanup --- */
    display: flex;         /* Use flexbox for nice alignment */
    align-items: center;   /* Vertically center the icon and text */
}

/* Add a little space between the phone icon and the number */
#header .main ul li.phone-header-link a .fa-phone {
    margin-right: 0.8em;
	
}
/* --- Main Post Container Styling --- */
.post-summary {
    margin-bottom: 50px; 
}

/* This is now our GRID container */
.post-summary section {
    padding: 20px;
    background-color: #ffffff;
border: solid 1px rgba(160, 160, 160, 0.3);
    /* --- DESKTOP GRID SETUP --- */
    display: grid;
    /* Define two columns: one flexible, one fixed at 400px */
    grid-template-columns: 1fr 400px; 
    /* Define named areas for our grid items */
    grid-template-areas: 
        "header image"
        "excerpt image";
    gap: 0 30px; /* 0px row gap, 30px column gap */
}

/* --- Assigning elements to grid areas --- */
.post-summary-header { grid-area: header; }
.post-summary-image  { grid-area: image; }
.post-summary-excerpt{ grid-area: excerpt; }

/* Styling for the header content */
.post-summary-header {
    text-align: left;
    margin-bottom: 20px;
}
.post-summary-header h2 { margin-top: 0; font-size: 1em; }
.post-summary-header h3 { 
    font-size: 0.8em; /* Smaller font size */
    color: #666; 
    font-weight: 700; /* Bolder text */
    margin-top: -10px; 
}

.post-summary-excerpt {
    text-align: left;
	font-size: 0.9em;
    /* We can leave text-transform: none; here, it doesn't hurt */
    /* but the rule below is the one that will do the work. */
}

/* --- THIS IS THE KEY FIX --- */
.excerpt { 
    color: #333; 
    line-height: 1.7; 
    margin-top: 0; 
    text-transform: none !important;
    letter-spacing: normal; /* ADD THIS LINE */
}
.Follow {text-align: left }

}
/* Styling for the image */
.post-summary-image {
    height: 300px; /* Fixed height on desktop */
   
    overflow: hidden;
    align-self: start; /* Aligns the image to the top of its grid area */
}
.post-summary-image img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* Styling for the excerpt content */
.post-summary-excerpt {
    text-align: left;
}
.excerpt { color: #333; line-height: 1.7; margin-top: 0; }

/* --- MOBILE LAYOUT (for screens 768px wide or smaller) --- */
@media (max-width: 768px) {
    .post-summary section {
        /* Redefine the grid for a single column layout */
        grid-template-columns: 1fr; /* Only one column */
        /* THE MAGIC: Rearrange the named areas for the mobile view! */
        grid-template-areas: 
            "header"
            "image"
            "excerpt";
        gap: 0; /* Reset gaps for mobile stacking */
    }

    /* Adjust spacing for mobile */
    .post-summary-header {
        margin-bottom: 15px; /* The gap between subheading and photo */
    }

    .post-summary-image {
        height: auto;
        aspect-ratio: 16 / 9;
        width: 100%;
        margin-bottom: 15px; /* Space between photo and excerpt */
    }
}
.post .row .col-4 p,
.post .row .col-3.col-6-medium.col-12-small p {
   
    /* 3. Apply a consistent style for description text */
    color: #333;
    line-height: 1.7;
    font-size: 0.9em;
	
    margin-top: 0; 
    text-transform: none !important;
    letter-spacing: normal; /* ADD THIS LINE */
}

ul.checklist {
    list-style: none;
    padding-left: 0;
    
    /* FIX: Remove horizontal centering and adjust width/margin */
    max-width: 100%;  /* Allow it to take up the full available width */
    margin: 2em 0 0 1em; /* Set top margin, but 0 for right, bottom, and left */
}

/* 2. Style each list item (No changes needed here) */
ul.checklist li {
    display: flex;
    align-items: center;
    padding: 0.5em 0;
    border: none;
    font-family: "Source Sans Pro", Helvetica, sans-serif;
    font-size: 1.1em;
    line-height: 1.2;
    text-transform: none;
    letter-spacing: normal;
    color: #333;
}

/* 3. Style the checkmark icon (No changes needed here) */
ul.checklist li .icon.fa-check {
    color: #2690be;
    font-size: 1.3em;
    margin-right: 0.75em;
    flex-shrink: 0;
}

/* --- Step 1: The initial (grayscale) state --- */
/* This now targets an img inside ANY element with the specified classes */
.post .image.featured img,
.row .image.fit img {
    filter: grayscale(100%);
    transition: filter 1s ease-in-out; /* A nice, slow transition for the reveal */
    transform: none !important; /* Keep the zoom disabled */
}


/* --- Step 2: The final (color) state, triggered by JavaScript --- */
/* This also targets an img inside ANY element with the specified classes */
.post .image.featured.visible-color img,
.row .image.fit.visible-color img {
    filter: grayscale(0%);
}

/* This now targets the container (<a> or <div>) directly */
.post .image.featured {
    max-width: 800px;  /* Set the maximum width */
    width: 100%;       /* Ensure it's responsive on smaller screens */
    margin-left: auto; /* These two lines center the container */
    margin-right: auto;
}
.checkbox-group {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 0.5em 1em; /* Vertical and horizontal gap */
    background: rgba(160, 160, 160, 0.075);
    border: solid 1px rgba(160, 160, 160, 0.3);
    padding: 1em 1em 1em 2em;
}

/* Ensure labels inside the group align correctly */
.checkbox-group div {
    display: flex;
    align-items: center;
}
.faq-section {
    margin: 4em 0; /* Add vertical spacing */
}

/* The card that holds one Q&A pair */
.faq-card {
    background-color: #ffffff;
    border: 1px solid rgba(160, 160, 160, 0.3);    
    padding: 2em;
    height: 100%; /* Ensures cards in the same row are the same height */
   
}

/* The question inside the card */
.faq-card .faq-question {
    font-family: "Raleway", Helvetica, sans-serif;
    font-size: 1.1em;
    font-weight: 700;
    color: #3c3b3b;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-bottom: 1em; /* Space between question and answer */
    position: relative;
    padding-left: 2em; /* Space for the icon */
}

/* Add a decorative question mark icon */
.faq-card .faq-question::before {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f059'; /* Font Awesome "question-circle" icon */
    color: #2690be;   /* Your theme's accent color */
    position: absolute;
    left: 0;
    top: 1px; /* Adjust for vertical alignment */
}


/* The answer inside the card */
.faq-card .faq-answer {
    margin-bottom: 0; /* Remove default bottom margin from the paragraph */
}
/* ================================================= */
/* ==   Font Awesome Specificity Override         == */
/* ================================================= */

/*
 * This rule forces the correct font family and weight onto any
 * element using the 'icon solid' classes.
*/
.icon.solid:before {
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
}

/* You might also need one for the 'brands' icons */
.icon.brands:before {
    font-family: "Font Awesome 5 Brands" !important;
    font-weight: 400 !important;
}
.about-capabilities .icon {
    font-size: 2.5em; /* Smaller than the default 3em for this grid */
}
#site-footer {
    width: 100%;
    border-top: 1px solid rgba(160, 160, 160, 0.3);
    padding-top: 2em;
    margin-top: 2em; /* Creates space above the footer */
}

/* The flex container for the two main columns */
#site-footer .footer-container {
    display: flex;
    flex-wrap: wrap; /* Allows columns to stack on mobile */
    justify-content: space-between; /* Pushes columns to the edges */
    gap: 2em;
}

/* The left column (contains Follow and Contact) */
#site-footer .footer-column-left {
    display: flex;
    flex-direction: column;
    gap: 2em; /* Vertical space between Follow and Contact sections */
}

/* The right column (contains Certs) */
#site-footer #footer-certs {
    /* No specific flex properties needed here; space-between handles it */
}

/* General styling for the individual sections (Follow, Contact, Certs) */
#site-footer .footer-column {
    text-align: left;
}

/* Styling for the supplier logos */
#site-footer .supplier-logos img {
    display: block;
    width: 100%;          /* Image is responsive */
    max-width: 370px;     /* But won't grow larger than its native size */
    height: auto;
    margin-bottom: 1em;
}


.row > .col-6.col-12-medium {
    display: flex;
    flex-direction: column;
	padding-left: 0.4em;
	padding-right: 0.4em;
}

.row > .col-6.col-12-medium > .checklist {
    margin-top: auto; /* This is the magic part! */
}
.intro-image {
    max-width: 320px;
    margin-left: auto; /* This will push the image to the right side of its column */
}

/* On mobile, let it take up full width again */
@media screen and (max-width: 736px) {
    .intro-image {
        max-width: 320px;
        margin-left: 0;
    }
}
.image img { filter: grayscale(100%); transition: filter .6s ease, opacity .3s ease; }

/* either .image container gets class, or the img itself gets it */
.image.visible-color img,
.image img.visible-color {
  filter: none;
}
.text-blue {
    color: #2690be;
}
/* --- Painting Guide Section (Updated) --- */
.guide-category-box {
    border: 1px solid rgba(0, 0, 0, 0.1);
    padding: 1.5em;
    margin-bottom: 2em;
    height: 100%;
    display: flex;
    flex-direction: column;
}

/* New: Styles for the header containing icon and title */
.guide-category-header {
    display: flex; /* Aligns items horizontally */
    align-items: left; /* Vertically centers items */
    justify-content: left; /* Horizontally centers the whole group */
    text-align: left; /* Ensures text inside is centered */
}

/* Update: Style the icon within the new header */
.guide-category-header .icon {
    margin-right: 0.75em; /* Adds space between icon and title */
    margin-top: 0; /* Resets any top margin */
}
.guide-category-header .icon.solid.style1::before {
    color: #2690be; /* Sets the icon color */
}

/* Update: Ensure h3 has no extra margin pushing it down */
.guide-category-box h3 {
    margin-top: 0;
    margin-bottom: 0.5em;
}

.article-link-list {
    list-style: none;
    padding-left: 0;
    margin-top: auto;
    padding-top: 1em;
}

/* Update: Removed the border-bottom from list items */
.article-link-list li {
    padding: 0.3em 0;
}
-
.article-link-list li:last-child {
    border-bottom: none;
}

.article-link-list a.read-more {
    color: #2690be;
    font-weight: bold;
}
/* --- Custom Reordering for Article Posts on Mobile --- */
@media screen and (max-width: 980px) {

    /* Target the row inside each article post */
    .post .row {
        display: flex;
        flex-direction: column;
    }

    /* Set the visual order for the text column (col-8) */
    .post .row .col-8 {
        order: 2; /* This will appear second */
    }

    /* Set the visual order for the image column (col-4) */
    .post .row .col-4 {
        order: 1; /* This will appear first */
        margin-bottom: 2em; /* Add space below the image */
    }
}
/* --- Custom Reordering for Article Posts on Mobile --- */
@media screen and (max-width: 980px) {

    /* Target the row inside each article post */
    .post .row {
        display: flex;
        flex-direction: column;
    }

    /* Set the visual order for the text column (col-8) */
    .post .row .col-8 {
        order: 2; /* This will appear second */
    }

    /* Set the visual order for the image column (col-4) */
    .post .row .col-4 {
        order: 1; /* This will appear first */
        margin-bottom: 2em; /* Add space below the image */
    }
}
/* --- Aligns the 'Read More' button to the bottom of article previews --- */
.post .row > .col-8.col-12-medium {
    display: flex;
    flex-direction: column;
}

.post .row > .col-8.col-12-medium > footer {
    margin-top: auto;
    padding-top: 1em; /* Adds some space above the button */
}
.image.right {
	float: right;
	max-width: 40%;
	margin: 0.25em 0 1em 1.5em; /* Replaces padding/top for spacing AROUND the element */
	border: 1px solid #ddd;      /* The light grey border */
	padding: 0px;                /* 5px of space BETWEEN the border and the image */
	background-color: #fff;      /* White background for the padded area */
}

/* --- Mobile Adjustments for Smallest Screens --- */
@media screen and (max-width: 462px) {

    /* --- 1. Center the icon/title group on the main guide page --- */
    .guide-category-header {
        justify-content: center; /* This centers the whole group, keeping the icon left of the text */
    }

    /* --- 2. Center all article titles on category pages --- */
    .post > div > h3,
    .post > header > h3 {
        text-align: center;
    }

    /* --- 3. Make floated images "break" into centered blocks --- */
    .image.right {
        float: none;              /* Stop the image from floating to the right */
        display: block;           /* Make it a block element */
        width: 100%;              /* Make it take up the full width */
        max-width: 300px;         /* But cap its width at 300px */
        margin: 0 auto 1em auto;  /* Center the block and give it bottom margin */
    }

}