@charset "utf-8";
/*==========================================================================================*/
/*   _____                                                      _____   _             _              
/*  / ____|                                                    / ____| | |           | |             
/* | |        ___    _ __ ___    _ __ ___     ___    _ __     | (___   | |_   _   _  | |   ___   ___ 
/* | |       / _ \  | '_ ` _ \  | '_ ` _ \   / _ \  | '_ \     \___ \  | __| | | | | | |  / _ \ / __|
/* | |____  | (_) | | | | | | | | | | | | | | (_) | | | | |    ____) | | |_  | |_| | | | |  __/ \__ \
/*  \_____|  \___/  |_| |_| |_| |_| |_| |_|  \___/  |_| |_|   |_____/   \__|  \__, | |_|  \___| |___/
                                                                             __/ |                 
                                                                            |___/                  
/*==========================================================================================*/

/*-------------------  Development ---------------------*/
.red-border { /* help in development - red dahed lin around modules */
	border: thin dashed #F00;
}

.textarea_html ul{ /* adds dots to bullets in VC */
	padding-left:20px;
	list-style:disc;
}

.admin-bar .shiftnav-wrap { /* Remove pesky overlappting bar when editing - ShiftNav is the culprit only with Beaver Builder */
	z-index:auto !important;
}

/*-------------------  General Gloabal Styles ---------------------*/
a:focus { /* Removes blue outline when clicked on */
	outline:none !important;
}

img, img a {
	max-width:100% !important; /* makes sure the images scale to viewing width - mobiles etc */
	height:auto!important; /* image stays in proportion */
}

.fl-row-full-width { /* make all FULL-WIDTH rows break the parent div of 1200px. All default pages default to 1200px though */
    position: relative;
    width: 100vw;
    left: calc(-50vw + 50%);
}

.post {
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
	padding-left:15px;
	padding-right:15px;
}

/*----------- MYSTICKY-NAV Commong Styles -------------------------*/

.navigation-top { /* Make invisible the sticky navigation bar initially */
	display: none;
}

#mysticky-nav.wrapfixed .navigation-top { /* Display the sticky navigation bar after scrolling */
	display:inline;
	margin-left:auto;
	margin-right:auto;
}

#mysticky-nav .logo img{
	padding-top:5px;
}

#mysticky-nav .ubermenu-bar-align-left { /* Menu now RIGHT justifys on sticky menu */
	float:right !important;
	margin-right:10px; /* Moves menu a bit to the left to alight with phone number */
}

#mysticky-nav .facebook-header {
	padding-right:45px;
	padding-bottom:20px;
	padding-top:7px;
	background-image: url(../../uploads/facebook-icon-wp-sticky.png);
	background-repeat:no-repeat;
}

/*----------------------------------------------------------------*/


.nivoSlider { /* Removes bottom margin for slider - must be set to NIVOSlider in plugin */
	margin-bottom:0px !important;
}

.slide-shadow img { /* MUST add "slide-shadow" to class of this image so there is no gap between slide and shadow on mobile devices. */
	vertical-align:top; 
	margin-top:-10px; 
}

.fl-rich-text img, .fl-photo-img { /* Change for Beaver Builder */
	box-shadow: 4px 4px 5px 0px rgba(50, 50, 50, 0.75);
    border: thin solid #000;
	width: auto;
    height: auto;
}

.shadow { /* give small shadow eg images etc. must specifiy shadow for relevant class */
	box-shadow: 4px 4px 5px 0px rgba(50, 50, 50, 0.75);
}

.border { /* Puts border around image or block */
	border: thin solid #000;
}

.no-img-shadow .fl-rich-text img, .no-img-shadow .fl-photo-img { /* Just add "no-img-shadow" to main rows of page or column etc */
	box-shadow:none;
	border: thin solid #000;
	border-style:none;
}

.main-body img:not(.gmpMapDetailsContainer img) { /* To display shadow and border on all main-body images by default (not Google Maps) */
	box-shadow: 4px 4px 5px 0px rgba(50, 50, 50, 0.75);
	border: thin solid #000;
	margin-bottom:15px;
}

.text-shadow-black {
	text-shadow: 1px 1px 1px rgba(0, 0, 0, .5);
}

.text-shadow-white {
	text-shadow: 1px 1px 1px rgba(255, 255, 255, .5);
}

.white-trans {
	background-color:rgba(255,255,255,.8);
	margin-top:10px;
	margin-bottom:10px;
	color:#000;
}

.black-trans {
	background-color:rgba(0,0,0,.8);
	margin-top:10px;
	margin-bottom:10px;
	color:#FFF;
}

.center-vertical { /* Add this class to the COLUMN SETTINGS - Advanced - box on columns that have been set to the same height. */
	align-items: center;
}

.gmp_map_opts { /* Maps border and shadow */
	border: thin solid #000;
	box-shadow: 4px 4px 5px 0px rgba(50, 50, 50, 0.75);
}

.gmp_map_opts img { /* Nulls out shadow & border for google maps from style above - .main-body img */
	box-shadow:none;
	border:none;
}

.wp-caption-text { /* Extends WP captions box down 10px to go below shadow. */
	margin-top:10px !important;
}

.facebook-header {
	padding-right:45px;
	padding-bottom:20px;
	padding-top:15px;
	background-image: url(../../uploads/facebook-icon-wp.png);
	background-repeat:no-repeat;
	height:36px;
	width:36px;
}

.hidden {
	display:none;
}

.fancy-button a.fl-button {
	background-color:rgba(255,255,255, .8) !important;
}

.fancy-button a.fl-button:hover {
	background-color:rgba(255,255,255, 1) !important;
}


/*-------------------  Beaver Builder specific  ---------------------*/

.fl-builder-block-title[title~="Editor"] { /* Changes the "Text Editor" in the BB right menu to RED */
	color:#F00;
}

/*-------------------  Blockquotes ---------------------*/

blockquote {
	font-family:Georgia, "Times New Roman", Times, serif;
	position: relative;
	margin-top: 1.5em !important;
	margin-right: 0 !important;
	margin-bottom: 20px !important;
	margin-left: 0!important;
	padding-top: 0!important;
	padding-right: 70px!important;
	padding-bottom: 0px!important;
	padding-left: 70px!important;
	border:0;
	font-style:italic;
	color:#666;
	border-left:none !important;
}
blockquote:before
 {
	color: #666;
	content: "\201C";
	font-size: 6em;
	position: absolute;
	left: 5px;
	top: 0.3em;
	line-height: 0.1em;
}

blockquote:after
 {
   color: #666;
  content: "\201D";
  font-size: 6em;
  position:absolute;
  right:25px;
  bottom: -10px;
  line-height: 0.1em;
}

.psw-divider {
  height: 35px;
  width:100%;
  margin:0px auto;
  background: url(../../uploads/divider.png) no-repeat scroll center transparent;
  padding:6px;
}

/*--Bullet TICK lists boxes Place "bullet-ticks" class in editing element--*/

.bullet-ticks .fl-module-content ul li:before {
	content: "\f00c";
	font-family: FontAwesome;
	float: left;
	width: 1.4em;
	color:#0C0;
	font-size:16px;
}

.bullet-ticks .fl-module-content  ul li {
	list-style: none;
	text-indent: -23px;
	list-style-position: outside;
	padding-left: 0px;
	padding-top:3px;
	padding-bottom:3px;
}

/*--Bullet arrow lists boxes Place "bullet-arrow" class in editing element--*/

.bullet-arrows .fl-module-content ul li:before {
	content: "\25b6";
	font-family: FontAwesome;
	float: left;
	width: 1.4em;
	color: #999;
	font-size:16px;
}


.bullet-arrows .fl-module-content ul li  {
	list-style: none;
	margin-left: -22px;
	list-style-position: outside;
	padding-left: 10px;
	padding-top:3px;
	padding-bottom:3px;
	text-indent:-22px;
}

/*-------------------  Adds PDF icon before each PDF link - add pdf-icon_small.gif to uploads ---------------------*/
a[href$=".PDF"], a[href$=".pdf"] {
	background: url(../../uploads/pdf-icon_small.gif) left center no-repeat;
	padding-top: 10px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 50px;
	line-height:3em;
}

.no-pdf a[href$=".PDF"], .no-pdf a[href$=".pdf"] {
	background:none !important;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
	line-height:1em;
}


/*-------------------  Used for home page full width / height image & Animated Arrow ---------------------*/
.home-image {
	background-image: url(../../uploads/home-background.jpg);
	background-position: center center;
	background-size: cover;
	min-height: 100vh; /* use “min-height” if text inside the row may extend past the natural row height on mobiles etc */
	padding-top:200px; /* To extend content past menu */
}

.animated.fadeInDown { /* Used for the fadding animated arrow on the home page */
    -webkit-animation-duration: 2s; 
    animation-duration: 2s; 
    animation-iteration-count:infinite; 
    -webkit-animation-iteration-count:infinite; 
} 

/*----------------Foo Gallery ------------------------------*/
.justified-gallery>a>img { /* Justifyed Gallery outline */
	outline: 1px solid #000;
  	outline-offset: -2px; 
}

.justified-gallery>a>img:hover { /* Justifyed Gallery hover effect - file must be in child folder */
	-webkit-filter: brightness(65%);
	cursor: url('enlarge.ico'), default;
}

.justified-gallery>a>.caption.caption-visible { /* Justifyed Gallery removes caption box when no caption */
	/* [disabled]display:none !important; */
}

.justified-gallery>a>.caption,.justified-gallery>div>.caption { /* Displays Captions without the need for hover and change the opacity ENABLE these if captions are needed */
	display: block !important;
	opacity: .7 !important;
	font-size: 18px !important;
	text-align: center !important;
}
/* ---------------- Meta Slider Plugin- add .slideshow to text area module--------------------*/
.slideshow {
	margin-bottom:0px;
}

/* ----------------Video Container IFRAME ------------------------------*/
.video-container { /* this style and the next allows iframe videos (youtube etc) to be responsive. A functions filter places a div around the iframe with a class of video-container */
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 10px;
	height: 0;
	overflow: hidden;
}

.video-container iframe, .video-container object, .video-container embed {
	position: absolute;
	top: 0;
	max-width: 100%;
	max-height: 100%;
	width: 100% !important; /*expands the video to the full height and width of the parent container. THis is it's responsive on all devices. */
	height: 100% !important;
	border: thin solid #000;
}

/* Includes the VIDEO icon in the editor toolbar from Dashicons */
.mce-i-media:before {
	content: "\f236" !important;
}

/* Accoridon - Change to Medium */
.fl-accordion-medium .fl-accordion-button {
	background-color: #D0ECFF
}

.fl-accordion-button-icon.fa {
	font-size:1.5em;
	
}

.fl-accordion-medium .fl-accordion-content {
	padding-top:10px !important;
}

/* Move BB Accordion's icons to the left side */
.fl-module-accordion .fl-accordion-button {
  position: relative;
  width: 100%;
}
.fl-module-accordion .fl-accordion-button-label {
  padding-left: 20px;
}
.fl-module-accordion .fl-accordion-button-icon {
  position: absolute;
  left: 0px;
}
	

/*==========================================================================*/
/*  ______    ____     ____    _______   ______   _____   
/* |  ____|  / __ \   / __ \  |__   __| |  ____| |  __ \  
/* | |__    | |  | | | |  | |    | |    | |__    | |__) | 
/* |  __|   | |  | | | |  | |    | |    |  __|   |  _  /  
/* | |      | |__| | | |__| |    | |    | |____  | | \ \  
/* |_|       \____/   \____/     |_|    |______| |_|  \_\ 
/*
/*==========================================================================*/   


.footwrapper a:link, .footwrapper a:visited  {
	color: #FFF;
}

.footwrapper h2 { /* Heading style for all columns */
	color: #969696;
	letter-spacing: 0.5px;
	margin-top:5px;
	margin-bottom:0px;
}

.footer-menu h2 { /* Controls spacing between the footer menu heading and the footer menu */
	margin-bottom:0px;
}

/*--------------------------------*/
/* Start footer contact styles */
/*--------------------------------*/

.footer-contact h3, .footer-contact h3 a {
	color:#FFF;
	font-family:Verdana, Geneva, sans-serif;
	font-size:16px;
	padding-left:0px;
	border:none;
	text-decoration:none;
}

.footwrapper .footer-services h1 {
	font-family:Verdana, Geneva, sans-serif;
	color:#CCC;
	font-size:12px;
	line-height:1em;
	letter-spacing:normal;
	margin-top:10px;
	font-weight:normal;
}


/*--------------------------------*/
/* Start footer menu styles */
/*--------------------------------*/

.footer-menu {
	text-align:left;
}

.footer-menu .menu {
	padding-left:0px;
}

.footer-menu .menu-item {
	padding-top: 5px;
	padding-bottom: 5px;
	font-size: 16px;
	border-bottom-width: thin;
	border-bottom-style: dashed;
	border-bottom-color: #999;
	width:75%
}

.footer-menu .menu-item a:hover { /* HOVER Colour of menu items in the footer */
	color: #5A8AAE;
	text-decoration:none;
}

.footer-menu .vertical-menu a {
	padding:0px;
}

/*--------------------------------*/
/* Start footer RIGHT styles */
/*--------------------------------*/


.footer-right {
	padding-top:0px;
}

/*--------------------------------*/
/* Footer SEO Block */
/*--------------------------------*/

.seo-block h1 {
	font-family: Verdana, Geneva, sans-serif;
	font-size: 12px;
	color: #ccc;
	font-weight:normal;
	text-shadow:none;
	background-color:transparent;
}



/*--------------------------------*/
/* Start Under Footer styles */
/*--------------------------------*/

.footwrapper .psw-link a:link, .footwrapper .psw-link a:visited {
	color: #FFFFFF !important;
	text-decoration: none;
}

.psw-link {
	padding-top: 5px;
	background-color: #000000;
}

.footwrapper .psw-link a:hover {
	color: #3399FF !important;
	text-decoration: none;
}

/*--------------------------------*/
/* Virtical Align FontAwesome */
/*--------------------------------*/

.fa-2x, .fa-3x, .fa-4x, .fa-5x {
	vertical-align:middle;
}

/*================================================================================================================================================*/
/*                             __  __           _       _   _             __  __                                                   
/*                            |  \/  |         | |     (_) | |           |  \/  |                                                  
/*  ______   ______   ______  | \  / |   ___   | |__    _  | |   ___     | \  / |   ___   _ __    _   _   ______   ______   ______ 
/* |______| |______| |______| | |\/| |  / _ \  | '_ \  | | | |  / _ \    | |\/| |  / _ \ | '_ \  | | | | |______| |______| |______|
/*                            | |  | | | (_) | | |_) | | | | | |  __/    | |  | | |  __/ | | | | | |_| |                           
/*                            |_|  |_|  \___/  |_.__/  |_| |_|  \___|    |_|  |_|  \___| |_| |_|  \__,_|                           
/*
/*================================================================================================================================================*/
/*================================================================================================================================================*/
/*================================================================================================================================================*/
/*================================================================================================================================================*/

/*--------------------------------------------------------------- */
/*           _____    _                                            
/*          |  __ \  | |                                           
/*  ______  | |__) | | |__     ___    _ __     ___   ___    ______ 
/* |______| |  ___/  | '_ \   / _ \  | '_ \   / _ \ / __|  |______|
/*          | |      | | | | | (_) | | | | | |  __/ \__ \          
/*          |_|      |_| |_|  \___/  |_| |_|  \___| |___/          
/*                                                                 
/*--------------------------------------------------------------- */
@media (max-width: 480px) {

blockquote {
	padding-right: 5px!important;
	padding-left: 5px!important;
}
blockquote:before
 {
	content: "";
}

blockquote:after
 {
  content: "";
}

} /* End of Phones Only */

/*--------------------------------------------------- */
/*           _______           _                     
/*          |__   __|         | |                    
/*  ______     | |      __ _  | |__    ___    ______ 
/* |______|    | |     / _` | | '_ \  / __|  |______|
/*             | |    | (_| | | |_) | \__ \          
/*             |_|     \__,_| |_.__/  |___/          
/*                                                  
/*---------------------------------------------------- */

@media only screen and (max-width: 991px) and (min-width: 481px){ 

} /* End of Tabs Only */

@media only screen and (max-width: 768px) { 
.fl-col-small { /* Force smaller columns to fit 100% width on tablets */
	max-width:100% !important;
	} 
}

/*----------------------------------------------------------------- */
/*           _____  _           __  _______           _              
/*          |  __ \| |         / / |__   __|         | |             
/*  ______  | |__) | |__      / /     | |      __ _  | |__    ______ 
/* |______| |  ___/| '_ \    / /      | |     / _` | | '_ \  |______| + Portrait IPAD
/*          | |    | | | |  / /       | |    | (_| | | |_) |         
/*          |_|    |_| |_| /_/        |_|     \__,_| |_.__/          
/*                                                                   
/*------------------------------------------------------------------ */
@media (max-width: 991px) { 

.home-slider { /* pushes home page slider to full width of mobile screens - ie removes padding */
	padding-left:0px;
	padding-right:0px;
}

#shiftnav-toggle-main .shiftnav-main-toggle-content{
	padding-top: 10px !important;
	padding-bottom: 10px !important;
}

#shiftnav-toggle-main.shiftnav-toggle-main-entire-bar:before {
	padding-top: 10px !important;
	padding-bottom: 10px !important;
}

.shiftnav ul.shiftnav-menu li.menu-item {
	border-bottom-width: thin;
	border-bottom-style: solid;
	border-bottom-color: #666;
}

.shiftnav ul.shiftnav-menu li.shiftnav-depth-1 {
	border-bottom-style:none;
	border-top-style:none;
}

.shiftnav.shiftnav-skin-standard-dark ul.shiftnav-menu li.shiftnav-depth-1 a {
	padding-left:40px;
}

.shiftnav.shiftnav-skin-standard-dark ul.shiftnav-menu li.menu-item.current-menu-item > .shiftnav-target,
.shiftnav.shiftnav-skin-standard-dark ul.shiftnav-menu.shiftnav-active-on-hover li.menu-item > .shiftnav-target:hover {
	background:#666!important; /* Change background colour of shiftnav hover and active */
}

#logo-container, #logo-container img { /* Centers the main logo on tabs / phones - don't know where the #logo-container comes from but works */
	margin-right:auto;
	margin-left:auto;
}

.header-logo-column {
	padding-left:0px;
	padding-right:0px;
}

.header-contacts, .header-tag-line h1, .header-tag-line h2 {
	text-align:center!important;
	margin-left:auto;
	margin-right:auto;
	margin-left:0px !important;
	margin-right:0px !important;
}


.footer-contact h3 {
	font-size:14px;
}

.seo-block h1 {
	margin-top:0px;
	margin-bottom:15px;
}


.shiftnav.shiftnav-skin-standard-dark ul.shiftnav-menu.shiftnav-active-on-hover li.menu-item > .sub-menu .shiftnav-target { /* Change lineheight for long submenu items ONLY for mobile menu */
	line-height:200%;
}

.home-image {
	padding-top:130px;
}


} /* End of Phone / Tablets / Portrait Ipads */

/*------------------------------------------------------- */
/*          _____   _____               _____           
/*          |_   _| |  __ \      /\     |  __ \          
/*  ______    | |   | |__) |    /  \    | |  | |  ______ 
/* |______|   | |   |  ___/    / /\ \   | |  | | |______| Landscape + Small Screens upto 1200px
/*           _| |_  | |       / ____ \  | |__| |         
/*          |_____| |_|      /_/    \_\ |_____/          
/*                                                       
/*-------------------------------------------------------- */
@media only screen and (max-width: 1198px) and (min-width: 992px){ /* Mainly Ipads */


.footer-contact h3 {
	font-size:14px;
}

} /* End of Landscape Ipad / Small screens upto 1200 */

/*-------------------------------------------------------------- */
/*          __     _                                              
/*          \ \   | |                                             
/*  ______   \ \  | |        __ _   _ __    __ _    ___    ______ 
/* |______|   > > | |       / _` | | '__|  / _` |  / _ \  |______|
/*           / /  | |____  | (_| | | |    | (_| | |  __/          
/*          /_/   |______|  \__,_| |_|     \__, |  \___|          
/*                                          __/ |                 
/*                                         |___/                  
/*-------------------------------------------------------------- */
@media (min-width: 1199px){ /* 1200px and larger */

} /* End > Large */

/*--------------------------------------------------- */
/*          __     _______           _              
/*          \ \   |__   __|         | |             
/*  ______   \ \     | |      __ _  | |__    ______ 
/* |______|   > >    | |     / _` | | '_ \  |______|
/*           / /     | |    | (_| | | |_) |         
/*          /_/      |_|     \__,_| |_.__/          
/*                                                 
/*----------------------------------------------------- */

@media (min-width: 992px) { /* all devices larger than tablets */


} /* End > Tabs */



