.wpcf7 .screen-reader-response {
	position: absolute;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	width: 1px;
	margin: 0;
	padding: 0;
	border: 0;
}

.wpcf7 form .wpcf7-response-output {
	margin: 2em 0.5em 1em;
	padding: 0.2em 1em;
	border: 2px solid #00a0d2; /* Blue */
}

.wpcf7 form.init .wpcf7-response-output {
	display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
	border-color: #46b450; /* Green */
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
	border-color: #dc3232; /* Red */
}

.wpcf7 form.spam .wpcf7-response-output {
	border-color: #f56e28; /* Orange */
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
	border-color: #ffb900; /* Yellow */
}

.wpcf7-form-control-wrap {
	position: relative;
}

.wpcf7-not-valid-tip {
	color: #dc3232;
	font-size: 1em;
	font-weight: normal;
	display: block;
}

.use-floating-validation-tip .wpcf7-not-valid-tip {
	position: absolute;
	top: 20%;
	left: 20%;
	z-index: 100;
	border: 1px solid #dc3232;
	background: #fff;
	padding: .2em .8em;
}

span.wpcf7-list-item {
	display: inline-block;
	margin: 0 0 0 1em;
}

span.wpcf7-list-item-label::before,
span.wpcf7-list-item-label::after {
	content: " ";
}

div.wpcf7 .ajax-loader {
	visibility: hidden;
	display: inline-block;
	background-image: url('mb-cms-plugins/contact-form-7/assets/ajax-loader.gif');
	width: 16px;
	height: 16px;
	border: none;
	padding: 0;
	margin: 0 0 0 4px;
	vertical-align: middle;
}

div.wpcf7 .ajax-loader.is-active {
	visibility: visible;
}

div.wpcf7 div.ajax-error {
	display: none;
}

div.wpcf7 .placeheld {
	color: #888;
}

div.wpcf7 input[type="file"] {
	cursor: pointer;
}

div.wpcf7 input[type="file"]:disabled {
	cursor: default;
}

div.wpcf7 .wpcf7-submit:disabled {
	cursor: not-allowed;
}

.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] {
	direction: ltr;
}
@charset "UTF-8";

/*
Theme Name: RedSpark FSE
Theme URI: https://mediabunker.co.uk
Author: mediaBunker
Author URI: https://mediabunker.co.uk
Description: Bespoke theme created by mediaBunker for Red Spark FSE.
Requires at least: 5.3
Tested up to: 5.6
Requires PHP: 5.6
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: redsparkfse
Tags: one-column, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready

Resetting and rebuilding styles have been helped along thanks to the fine work of
Eric Meyer https://meyerweb.com/eric/tools/css/reset/index.html
along with Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
*/

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, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}

html {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 62.5%;
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

*, *:before, *:after {
	-webkit-box-sizing: inherit;
	-moz-box-sizing: inherit;
	box-sizing: inherit;
}

article, aside, details, figcaption, figure, footer, header, main, nav, section {
	display: block;
}

ol, ul {
	list-style: none;
}

table {
	border-collapse: separate;
	border-spacing: 0;
}

caption, th, td {
	font-weight: normal;
	text-align: left;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: "";
}

blockquote, q {
	-webkit-hyphens: none;
	-moz-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
	quotes: none;
}

a:hover, a:active {
	outline: 0;
}

a img {
	border: 0;
}

input:focus, select:focus, textarea:focus, button:focus {
	outline: none;
}

/**********************************/
/*** RedSpark FSE Styling ***/
/**********************************/

/*** Font Styles ***/

@font-face {
    font-family: 'Gilroy';
    src: url('redspark/assets/fonts/Gilroy-Light.eot');
    src: url('redspark/assets/fonts/Gilroy-Light.eot?#iefix') format('embedded-opentype'),
         url('redspark/assets/fonts/Gilroy-Light.woff2') format('woff2'),
         url('redspark/assets/fonts/Gilroy-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('redspark/assets/fonts/Gilroy-Regular.eot');
    src: url('redspark/assets/fonts/Gilroy-Regular.eot?#iefix') format('embedded-opentype'),
         url('redspark/assets/fonts/Gilroy-Regular.woff2') format('woff2'),
         url('redspark/assets/fonts/Gilroy-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gilroy';
    src: url('redspark/assets/fonts/Gilroy-ExtraBold.eot');
    src: url('redspark/assets/fonts/Gilroy-ExtraBold.eot?#iefix') format('embedded-opentype'),
         url('redspark/assets/fonts/Gilroy-ExtraBold.woff2') format('woff2'),
        url('redspark/assets/fonts/Gilroy-ExtraBold.woff') format('woff');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

/*** Base Styles ***/

body {
	font-family: 'Gilroy', Helvetica, Arial, sans-serif;
	font-weight: normal;
	font-style: normal;
	-webkit-font-smoothing: antialiased; /* Makes certain fonts look less heavy! */
	font-size: 16px; font-size: 1.6rem;
	color: #1D1D1B;
	background-color: #fff;
	text-align: left;
	line-height: 1.3;
	letter-spacing: -0.2px;
	min-width: 320px;
}

h1, h2 {
	font-weight: 800;
	font-size: 26px; font-size: 2.6rem;
	text-transform: uppercase;
	line-height: 1.0;	
}

h3 {
	font-weight: 800;
	font-size: 18px; font-size: 1.8rem;
}

h4 {
	font-weight: normal;
	font-size: 14px; font-size: 1.4rem;
}

h5 {	
	font-size: 9px; font-size: 0.9rem;
}

@media only screen and (min-width: 480px) {

	h5 {	
		font-size: 11px; font-size: 1.1rem;
	}
}

@media only screen and (min-width: 690px) {

	body {
		font-size: 18px; font-size: 1.8rem;
	}

	h1, h2 {
		font-size: 36px; font-size: 3.6rem;
	}

	h3 {
		font-size: 20px; font-size: 2.0rem;
	}

	h4 {
		font-size: 16px; font-size: 1.6rem;
	}

	h5 {	
		font-size: 13px; font-size: 1.3rem;
	}
}

a, a:link, a:visited {
	color: #a30a10;
	text-decoration: none;

}

a:hover {
	color: inherit;
	text-decoration: underline;
}

i, em {
	font-style: italic;
}

sup { 
	vertical-align: super;
	font-size: smaller;
}

strong {
	font-weight: bold;
}

p + p, ul + p, p + a.cta, ul + a.cta, p + h2, p + h3, p + ul, ul + h3 {
	margin-top: 25px;
}

h3 + ul, h3 + p  { 
	margin-top: 10px;
}


img {
	display: block;
	width: 100%;
	height: auto;
}

a.cta, a span.cta, button.cta, .cc-cookies a.cc-cookie-accept  {
	color: #fff;
	border: 4px solid #ED1C24;
	background-color: rgb(244,119,124);
	background-color: rgba(237,28,36,0.6);
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	border-radius: 50px;
	font-weight: 800;
	font-size: 13px; font-size: 1.3rem;
	text-transform: uppercase;
	padding: 8px 12px 6px 12px;
	-webkit-transition: background-color .3s linear, border-color .3s linear;
    -ms-transition: background-color .3s linear, border-color .3s linear;
	transition: background-color .3s linear, border-color .3s linear;
	display: inline-block;
	text-align: center;
}

a.cta:hover, a span.cta:hover, button.cta:hover, .cc-cookies a.cc-cookie-accept:hover {
	text-decoration: none;
	background-color: rgb(237,28,36);
	background-color: rgba(237,28,36,1);
}

@media only screen and (min-width: 690px) {

	a.cta, a span.cta, button.cta, .cc-cookies a.cc-cookie-accept  {
		font-size: 16px; font-size: 1.6rem;
	}
}


/*** Columns & Responsive Setup ***/
.sectionWrapper {
	width: 100%;
}

header, section {
	padding: 0;
	margin:	0 auto 0 auto;
	width: 100%;
	max-width: 960px;
	position: relative;
}

section { 
	padding: 7% 20px 7% 20px;
	overflow: hidden;
	zoom:1; /* For IE 6/7 */
}

section:before,
section:after { content:""; display:table; }
section:after { clear:both;}

.columnWrapper {
	clear: both;
	overflow: hidden;
}

.sectionWrapper.hasOffSetImage .columnWrapper { /* Can only be used on 2 column based content */
	margin-left: -20px;
	margin-right: -20px; 
}

.column {
	display: block;
	float:left;
	margin: 0 0 7% 0;
	min-height: 1px; /* Fix to ensure its space is occupied even if empty */
}

.column:last-child {
	margin-bottom: 0;
}

.sectionWrapper.hasOffSetImage .columnWrapper .column {
	padding-left: 20px;
	padding-right: 20px;
}

.sectionWrapper.hasOffSetImage .columnWrapper .column.offSetImage {
	padding-left: 0;
	padding-right: 0;
}

.span_1_of_1, .span_2_of_2, .span_1_of_2, .span_3_of_3, .span_2_of_3, .span_1_of_3 { width: 100%; }

@media only screen and (min-width: 690px) {

	section {
		padding: 50px;
	}

	.sectionWrapper.hasOffSetImage .columnWrapper {
		margin-left: -50px;
		margin-right: -50px; 
	}

	.column {  
		margin: 0 0 0 4%;
	}

	.column:first-child { 
		margin-left: 0;
	}

	.sectionWrapper.hasOffSetImage .columnWrapper .column {
		padding-left: 0;
		padding-right: 50px;
	}
	
	.sectionWrapper.alt.hasOffSetImage .columnWrapper .column { /* Flip 2 column layout (left to right)  */
		padding-left: 50px;
		padding-right: 0px;
		float: right;
	}

	.sectionWrapper.alt.hasOffSetImage .columnWrapper .column:first-child { 
		margin-left: 4%;
	}

	.sectionWrapper.alt.hasOffSetImage .columnWrapper .column:last-child {
		margin-left: 0;
		float: right;
	}
	
	.sectionWrapper.hasOffSetImage .columnWrapper .column.offSetImage {
		padding-left: 0;
		padding-right: 0;
	}

	.span_1_of_2 { width: 48%; }

	.span_2_of_3 { width: 65.33%; }
	.span_1_of_3 { width: 30.66%; }

}

/*** Header & Navigation ***/

header#navigation {
	transform: translate3d(0, 0, 0);
	-webkit-transform: translate3d(0px,0px,0px); /* Fix to allow instant fixed navigation on ios (not just after finger release) */
	display: block;
	z-index: 2000;
	position: fixed;
	top: 0;
	max-width: 100%;
	padding-bottom: 40px;
	background: linear-gradient(0deg, rgba(29,29,27,0) 0%, rgba(29,29,27,0.7) 60%, rgba(29,29,27,1) 100%);
	-webkit-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

header.hidden {
	margin-top: -150px;
}

header a, header a:link, header a:visited {
	color: #fff;
	-webkit-transition: color .3s ease-in-out;
    -ms-transition: color .3s ease-in-out;
	transition: color .3s ease-in-out;
}

header a:hover {
	color: #ED1C24;
	text-decoration: none;
}

header nav {
	display: block;
	max-width: 960px;
	overflow: hidden;
	margin:	0 auto;
	padding: 0 20px 0 20px;
}

header #logo {
	display: block;
	float: left;
	margin-left: -16px;
	margin-top: 15px;
	max-width: 140px;
	/* filter: drop-shadow(0px 0px 1px rgba(29, 29, 27, 0.7)); */
}

header nav ul li {
	display: inline-block;
	vertical-align: middle;
	margin-left: 3.2rem;
	text-shadow: 0px 0px 1px rgba(29, 29, 27, 0.7);
}

header nav ul li:first-child {
	margin-left: 0;
}

header nav ul#contactNavigationFull {
	float: left;
	margin-top: 20px;
	font-size: 14px; font-size: 1.4rem;
}

header nav ul#contactNavigationFull {
	display: none;
}

header nav ul#contactNavigationFull .email {
	display: none;
}

header nav ul#websiteNavigationFull  {
	display: none;
	float: right;
	margin-top: 20px;
}

header nav ul#websiteNavigationFull li {
	text-transform: uppercase;
	font-weight: 800;
}

header nav a:link#sideNavigationMenuActivator, header nav a:visited#sideNavigationMenuActivator {
	float: right;
	margin-top: 20px;
	text-transform: uppercase;
	font-weight: 800;
	color: #fff;
	text-align: right;
	text-decoration: none;
	vertical-align: middle;
	width: 50%;
}

header nav a:hover#sideNavigationMenuActivator {
	color: #ED1C24;
	text-decoration: none;
}

header nav a:link#sideNavigationMenuActivator i {
	margin-left: 6px;
	margin-bottom: 3px;
	vertical-align: middle;
}

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

	header #logo {
		margin-top: 44px;
		margin-left: -12px;
		max-width: 200px;
	}

	header nav ul#contactNavigationFull {
		display: initial;
		float: right;
	}
}

@media only screen and (min-width: 690px) {

	header nav {
		padding: 0 50px 0 50px;
	}

	header nav ul#contactNavigationFull .email {
		display: initial;
	}

	header #logo {
		margin-top: 44px;
		margin-left: -22px;
		max-width: 190px;
	}
}

@media only screen and (min-width: 770px) {

	header #logo {
		margin-top: 41px;
		margin-left: -29px;
		max-width: 240px;
	}
}

@media only screen and (min-width: 890px) {

	header nav a:link#sideNavigationMenuActivator {
		display: none;
	}

	header nav ul#websiteNavigationFull  {
		display: inline-block;
	}
}

/*** General Main Content Setup ***/

main .sectionWrapper {
	background-color: #fff;
}

main .sectionWrapper.alt {
	background-color: #f3f3f3;
}

main section h1 span.special, main section h2 span.special {
	color: #ED1C24;
}

main section h2 {
	width: 100%;
	margin-bottom: 25px;
	float: left;
}

main section ul, main section ol {
	list-style-type: disc;
}

@media only screen and (min-width: 690px) {
	main section h2.span_1_of_2 { width: 48%; }
	main section h2.span_1_of_3 { width: 30.66%; }
	main section h2.span_2_of_3 { width: 65.33%; }
}

/*** Main: Introduction section ***/

main .introduction.sectionWrapper {
	background-size: cover;
	background-position: top center !important;
	padding-top: 70px;
	
	width: 100%;
}

main .introduction.sectionWrapper .titleWrapper h1 {
	color: #fff;
	background-color: rgb(29,29,27);
	background-color: rgba(29,29,27, 0.7);
	padding: 14px;
	display: inline-block;
}

main .introduction.sectionWrapper .titleWrapper span.wrapper:before,
main .introduction.sectionWrapper .titleWrapper span.wrapper:after { /* Hack for equal padding above and below text (as background color block is visible) */
    content: '';
    display: block;
    height: 0;
    width: 0;
}

main .introduction.sectionWrapper .titleWrapper span.wrapper:before {
    margin-top:-2px;
}

main .introduction.sectionWrapper .titleWrapper span.wrapper:after {
    margin-bottom:-7px;
}

main .introduction.sectionWrapper .titleWrapper p span.wrapper:after {
    margin-bottom:-2px;
}

main .introduction.sectionWrapper .titleWrapper p {
	color: #fff;
	background-color: rgb(29,29,27);
	background-color: rgba(29,29,27, 0.7);
	padding: 14px;
}

@media only screen and (min-width: 300px) {

	main .introduction.sectionWrapper {
		padding-top: 50px;
	}
}

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

	main .introduction.sectionWrapper  {
		padding-top: 100px;
	}
}

@media only screen and (min-width: 770px) {

	main .introduction.sectionWrapper {
		padding-top: 120px;
	}

	main .introduction.sectionWrapper .titleWrapper p {
		width: 50%;
	}
}

main .introduction.sectionWrapper .titleWrapper + .cta {
	margin-top: 20px;
}

main #headerSplideWrapper {
	background-color: #1D1D1B;
}

main #headerSplideWrapper.column {
	margin-bottom: 40px;
}

main #headerSplideWrapper .splide__pagination {
	position: absolute;
	z-index: 1;
	bottom: 15px;
	left: 50%;
	transform: translateX( -50% );
	width: auto;
	background-color: rgb(255,255,255);
	background-color: rgba(255,255,255,0.3);
	padding: 4px 6px;
	-webkit-border-radius: 40px;
	-moz-border-radius: 40px;
	border-radius: 40px;
}
  
main #headerSplideWrapper .splide__pagination__page {
	display: inline-block;
	width: 10px;
	height: 10px;
	background: #fff;
	border-radius: 50%;
	margin: 3px;
	padding: 0;
	transition: transform .2s linear;
	border: none;
}

main #headerSplideWrapper .splide__pagination__page:hover {
	cursor: pointer;
	background-color: #E9E9E9;
}

main #headerSplideWrapper .splide__pagination__page.is-active {
	background-color: #1D1D1B;
}

main #headerSplideWrapper .splide__pagination__page:focus {
	outline: none;
}

@media only screen and (min-width: 690px) {
	
	main #headerSplideWrapper .column {
		margin-bottom: 80px;
	}

	main #headerSplideWrapper .splide__pagination {
		bottom: 70px;
		padding: 8px 11px;
	}

	main #headerSplideWrapper .splide__pagination__page {
		width: 20px;
		height: 20px;
	}
}

/*** Main (Home Page Only): Services Summary ***/
main #servicesSummary section {
	background-color: #ED1C24;
	color: #fff;
}

main #servicesSummary section span {
	width: 100%;
	float: left;
}

main #servicesSummary section .column {
	padding-top: 7%;
	padding-bottom: 50px;
	position: relative;
	border-top: 1px dotted #F58185;
}

main #servicesSummary section .column:first-child {
	border-top: none;
	padding-top: 0;
}

main #servicesSummary section .column img {
	max-width: 35px;
	float: left;
	margin-top: -2px;
	margin-right: 5px;
}

main #servicesSummary section .security img {
	margin-right: 8px;
}

main #servicesSummary section .electrical img {
	margin-right: 2px;
	margin-top: 0;
	margin-left: -4px;
}

main #servicesSummary section h2 {
	color: #1D1D1B;
	width: auto;
	float: left;
	line-height: 40px;
	font-size: 20px; font-size: 2.0rem;
	margin-bottom: 5px;
}

main #servicesSummary section a.cta  {
	border-color: #fff;
	position: absolute;
	bottom: 0px;
}

main #servicesSummary section a.cta:hover {
	border-color: #761016;
	background-color: #B1151C;
}

@media only screen and (min-width: 690px) {

	main #servicesSummary section {
		margin-top: -50px;
	}

	main #servicesSummary section .column {
		padding-bottom: 80px;
		border-top: none;
		padding-top: 0;
	}

	main #servicesSummary section h2 {
		font-size: 30px; font-size: 3.0rem;
	}
}

/*** Main (Home Page Only): Services Gallery ***/



main #servicesGallery li {
	float: left;
	width: 48%;
	list-style: none;
	margin: 0 4% 4% 0;
	line-height: 1.4em;
}

main #servicesGallery li.lastRowDoubleColumnItem {
	margin-bottom: 0;
}

main #servicesGallery ul li a {
	position: relative;
	display: block;
	color: #fff;
}

main #servicesGallery ul li a h2 {
	position: absolute;
	bottom:0;
	left: 0;
	text-align: left;
	background-color: rgb(96,96,96);
	background-color: rgba(29,29,27,0.6);
	width: 100%;
	margin: 0;
	padding: 14px 14px 10px 14px;
	font-size: 16px; font-size: 1.6rem;
	-webkit-transition: background-color .3s ease-in-out;
    -ms-transition: background-color .3s ease-in-out;
	transition: background-color .3s ease-in-out;
}

main #servicesGallery ul li a:hover h2 {
	background-color: rgb(29,29,27);
}

main #servicesGallery li.everySecondItem {
	margin-right: 0;
}

@media only screen and (min-width: 690px) { /* 3 column layout */

	main #servicesGallery li {
		width: 30.66%;
	}

	main #servicesGallery li.lastRowDoubleColumnItem {
		margin-bottom: 4%;
	}
	
	main #servicesGallery li.lastRowTripleColumnItem {
		margin-bottom: 0;
	}

	main #servicesGallery li.everySecondItem {
		margin-right: 4%;
	}
	
	main #servicesGallery li.everyThirdItem {
		margin-right: 0;
	}
	
	main #servicesGallery li.afterEveryThirdItem {
		clear: left;
	}

	main #servicesGallery ul li a h2 {
		font-size: 20px; font-size: 2.0rem;
	}
}

/*** Main (Home Page Only): Testimonials Summary ***/
main #testimonialsSummary.sectionWrapper {
	background-image: url('redspark/assets/images/electrical-security-fire-happy-customers.jpg');
	background-size: cover;
	background-position: top center !important;
}

main #testimonialsSummary.sectionWrapper .column {
	text-align: center;
	color: #fff;
}

main #testimonialsSummary.sectionWrapper .splide__slide {
	overflow: hidden;
}

main #testimonialsSummary.sectionWrapper .column h4 {
	color: #ED1C24;
}

main #testimonialsSummary.sectionWrapper .splide__arrows {
	display: none;
}

main #testimonialsSummary.sectionWrapper .splide__arrow {
	position: absolute;
	padding: 0;
	margin:0;
	top: 30%;
	transform:translateY(-50%);
	border: none;
	background: none;
	max-height: 90px;
	max-width: 31px;
	-webkit-transition: opacity .3s ease-in-out;
    -ms-transition: opacity .3s ease-in-out;
	transition: opacity .3s ease-in-out;
}

main #testimonialsSummary.sectionWrapper .splide__arrow:hover {
	cursor: pointer;
	opacity: 0.4;
}

main #testimonialsSummary.sectionWrapper .splide__arrow.splide__arrow--prev {
	left:-3.5rem;
	transform:translateY(-50%) rotate(180deg);
}

main #testimonialsSummary.sectionWrapper .splide__arrow.splide__arrow--next {
	right:-3.5rem;
}

@media only screen and (min-width: 690px) {

	main #testimonialsSummary.sectionWrapper .splide__slide {
		padding: 0 35px 20px 35px;
	}

	main #testimonialsSummary.sectionWrapper .splide__arrows {
		display: inherit;
	}
}

/*** Main: Call to Action section ***/
main .sectionWrapper#callToAction, main .sectionWrapper#callToAction h2 {
	text-align: center;
}

main .sectionWrapper#callToAction ul {
	list-style-type: none;
	width: 100%;
	display: inline-block;
}

main .sectionWrapper#callToAction ul a, main .sectionWrapper#callToAction ul a:link, main .sectionWrapper#callToAction ul a:visited {
	color: #1D1D1B;
}

main .sectionWrapper#callToAction ul li {
	display: inline-block;
	margin-left: 3%;
	margin-right: 3%;
	padding-bottom: 5px;
	line-height: 2.5;
	font-size: 26px; font-size: 2.6rem;
	text-transform: uppercase;
	line-height: 1.0;
	white-space: nowrap;
}

main .sectionWrapper#callToAction a.cta {
	margin-top: 20px;
}

@media only screen and (min-width: 690px) {

	main .sectionWrapper#callToAction ul li {
		font-size: 36px; font-size: 3.6rem;
	}
}

/*** Testimonials Page ***/
main .sectionWrapper.testimonial .column {
	text-align: center;
}

main .sectionWrapper.testimonial h4 {
	color: #ED1C24;
}

/*** Contact Page ***/
main .sectionWrapper.contact a, main .sectionWrapper.contact a:link, main .sectionWrapper.contact a:visited {
	color: #1D1D1B;
}

main .sectionWrapper.contact ul li.spacer {
	margin-bottom: 2.5rem;
}

main .sectionWrapper.contact ul {
	padding-left:24px;
	list-style:none;
}

main .sectionWrapper.contact ul li {
	margin-bottom:10px;
    list-style-position: outside
}

main .sectionWrapper.contact ul li:before {    
    font-family: 'Font Awesome 5 Free';
    content: '\f0a9';
	display: inline-block;
    width: 30px;
    margin: 0 0 0 -30px;
	text-align: center;
}

main .sectionWrapper.contact ul li.telephone:before {    
   content: '\f879';
}

main .sectionWrapper.contact ul li.mobile:before {    
    content: '\f3cd';
}

main .sectionWrapper.contact ul li.email:before {    
    content: '\f0e0';
}

main .sectionWrapper.contact ul li.address:before {    
    content: '\f3c5';
}

main .sectionWrapper.contact form.wpcf7-form p {
	margin: 0;
}

form.wpcf7-form input, form.wpcf7-form textarea {
	float: left;
	border: 3px solid #F1F1F1;
	display: block;

	font-family: 'Gilroy', Helvetica, Arial, sans-serif;
	font-weight: normal;
	font-style: normal;
	font-size: 16px; font-size: 1.6rem;
	color: #1D1D1B;

	outline: none;
	width: 100%;
	background-color: #fff;
	-webkit-border-radius:0; 
    border-radius:0;
	-webkit-appearance: none;
	margin-top: 4px;
	-webkit-transition: border .3s ease-in-out;
    -ms-transition: border .3s ease-in-out;
	transition: border .3s ease-in-out;
}

@media only screen and (min-width: 690px) {

	form.wpcf7-form input, form.wpcf7-form textarea {
		font-size: 18px; font-size: 1.8rem;
	}
}

form.wpcf7-form input {
	line-height: 22px;
	padding: 0 9px 0 9px;
	margin-bottom:10px;
	height: 2.9em;
}

form.wpcf7-form textarea {
	height: 234px;
	padding: 9px;
	resize:vertical;
}

form.wpcf7-form .checkboxes .wpcf7-list-item input {
	padding: 0;
	margin:0;
	-webkit-appearance:checkbox;
}

form.wpcf7-form .wpcf7-list-item {
	margin: 10px 35px 0 0;
	padding: 0;
}

form.wpcf7-form .wpcf7-list-item.last {
	margin-right: 0;
}

form.wpcf7-form .checkboxes.wpcf7-not-valid {
	border: 0;
}

form.wpcf7-form button::-moz-focus-inner { /* Remove weird border around button in Firefox */
    padding: 0;
    border: 0
}

form.wpcf7-form button.submitButton {
	float: left;
	clear: both;
	margin-top: 10px;
	cursor: pointer;
	padding: 8px 12px 8px 12px;
}

form.wpcf7-form .wpcf7-not-valid  {
	border: 2px solid rgb(244,119,124);
}

form.wpcf7-form .wpcf7-not-valid-tip-no-ajax, form.wpcf7-form .wpcf7-not-valid-tip {
	display: none;
}

.wpcf7 .ajax-loader::before { /* Remove default loader icon - for 5.4 onwards only? */
	/* content: none; */
}

form.wpcf7-form .ajax-loader {
	background: none;
	width: auto;
	height: auto;
	line-height: 40px;
	float: left;
	font-size: 30px; font-size: 3.0rem;
	margin-top: 10px;
	margin-left: 10px;
	color: #1D1D1B;
	vertical-align: middle;
}



form.wpcf7-form .wpcf7-response-output {
	float: left;
	clear: both;
	border: none;
	margin: 5px 0 0 0;
	padding: 0;
	color: #1D1D1B;
	line-height: 1.4em;	
}

form.wpcf7-form .wpcf7-response-output.wpcf7-mail-sent-ok {
	color: #1D1D1B;
	margin-top: 10px;
	text-transform: uppercase;
}

form.wpcf7-form .watermark {
    color: #1D1D1B !important;
}

::-webkit-input-placeholder {
    color: #1D1D1B !important;
}

:-moz-placeholder {
    color: #1D1D1B !important;
}

::-moz-placeholder {
    color: #1D1D1B !important;
}

:-ms-input-placeholder {
    color: #1D1D1B !important;
}

input:-webkit-autofill, input:-webkit-autofill:focus { /*  Prevent autofill fields going yellow */
	-webkit-box-shadow: 0 0 0 1000px white inset;
	-webkit-text-fill-color: #333;
}

main .sectionWrapper.contact #contactForm #messageSent {
	float: left;
	border: 3px solid #F1F1F1;
	display: block;
	padding: 5%;
	width: 100%;
	margin-top: 4px;
}

main .sectionWrapper.contact #contactForm h2 {
	margin-top: 5%;
	margin-bottom: 5%;
}

main #googleMap.sectionWrapper {
	width: 100%;
	min-height: 250px;
}

@media only screen and (min-width: 690px) {

	main #googleMap.sectionWrapper {
		min-height: 350px;
	}
}

/*** Footer ***/
footer {
	background-color: #1D1D1B;
	color: #fff;
}

footer a, footer a:link, footer a:visited {
	color: #fff;
	text-decoration: none;
}

footer a:hover {
	color: inherit;
	text-decoration: underline;
}

footer h3, footer h3 a:link, footer h3 a:visited {
	color: #ED1C24;
	margin-bottom: 5px;
}

footer ul + ul {
	margin-top: 2.5rem;
} 

footer ul li.spacer {
	margin-bottom: 2.5rem;
}

footer .sectionWrapper {
	width: 100%;
	border-bottom: 12px solid #ED1C24;
	box-shadow: 0px 500px 0px 0px #1D1D1B; /* Extend footer height beyond window (useful on short length pages) */
	padding-top: 3.5rem;
}

footer #logo {
	display: block;
	padding-bottom: 35px;
	margin-left: -16px;
	max-width: 230px;
}

footer ul.socialMedia {
	margin-top: 3.5rem;
	display: inline-block;
	font-size: 3.0px; font-size: 3.0rem;
	width: 100%;
}

footer ul.socialMedia li {
	display: inline;
	margin-right: 2%;
}

footer ul.socialMedia li:last-child {
	margin-right: 0;
}

footer section#affilates {
	padding-top: 0;
	padding-bottom: 0;
}

footer section#affilates ul {
	display: inline-block;
	width: 100%;
}

footer section#affilates ul li {
	display: inline-block;
	margin-right: 4%;
	margin-bottom: 4%;
	vertical-align: middle;
}

footer section#affilates ul li:last-child {
	margin-right: 0;
}

footer section#affilates ul li a {
	display: block;
}

footer section#affilates ul li a img {
	width: auto;
	height: 100%;
	max-height: 90px;
}

footer section#copyrightNotice hr {
	display: block; /* Jiggery pokery to recolor line (and it work on all browsers) */
	height: 1px;
	border: 0;
	border-top: 1px solid #383838;
    margin: 1em 0; padding: 0;
  	margin: 0 0 30px 0;
}

footer section#copyrightNotice hr:after {
	content: url('redspark/assets/images/fire-electrical-security-services.png');
	content: url('redspark/assets/images/fire-electrical-security-services.svg');
	left: 50%;
	position: absolute;
	transform: translateY(-50%) translateX(-50%);
	margin-top: 3px;
	padding: 0 10px;
	background-color: #1D1D1B;
}

footer section#copyrightNotice h5 {
	text-align: center;
}

@media only screen and (min-width: 690px) {

	footer section#navigation .column:first-child {
		padding-right: 40px;
	}

	footer #logo {
		margin-left: -14%; 
	}

	footer section#copyrightNotice {
		padding-top: 30px;
	}

}

@media only screen and (min-width: 890px) { 

	footer #logo {
		margin-left: -28px; 
	}
}
