@charset "UTF-8";
/******************************************************************
Site Name:
Author: Kook

Stylesheet: Main Stylesheet

Here's where the magic happens. Here, you'll see we are calling in
the separate media queries. The base mobile goes outside any query
and is called at the beginning, after that we call the rest
of the styles inside media queries.
******************************************************************/
/*! normalize.css 2012-07-07T09:50 UTC - http://github.com/necolas/normalize.css */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/*
 * Corrects `block` display not defined in IE6/7/8/9 & FF3.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
  display: block; }

/*
 * Corrects `inline-block` display not defined in IE6/7/8/9 & FF3.
 */
audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1; }

/*
 * Prevents modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/*
 * Addresses styling for `hidden` attribute not present in IE7/8/9, FF3, S4.
 * Known issue: no IE6 support.
 */
[hidden] {
  display: none; }

/* ==========================================================================
   Base
   ========================================================================== */
/*
 * 1. Corrects text resizing oddly in IE6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevents iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-size: 100%;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 2 */ }

/*
 * Addresses `font-family` inconsistency between `textarea` and other form
 * elements.
 */
html,
button,
input,
select,
textarea {
  font-family: sans-serif; }

/*
 * Addresses margins handled incorrectly in IE6/7.
 */
body {
  margin: 0; }

/* ==========================================================================
   Links
   ========================================================================== */
/*
 * Addresses `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted; }

/*
 * Improves readability when focused and also mouse hovered in all browsers.
 * people.opera.com/patrickl/experiments/keyboard/test
 */
a:active,
a:hover {
  outline: 0; }

/* ==========================================================================
   Typography
   ========================================================================== */
/*
 * Addresses font sizes and margins set differently in IE6/7.
 * Addresses font sizes within `section` and `article` in FF4+, Chrome, S5.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

h2 {
  font-size: 1.5em;
  margin: 0.83em 0; }

h3 {
  font-size: 1.17em;
  margin: 1em 0; }

h4 {
  font-size: 1em;
  margin: 1.33em 0; }

h5 {
  font-size: 0.83em;
  margin: 1.67em 0; }

h6 {
  font-size: 0.75em;
  margin: 2.33em 0; }

/*
 * Addresses styling not present in IE7/8/9, S5, Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/*
 * Addresses style set to `bolder` in FF3+, S4/5, Chrome.
 */
b,
strong {
  font-weight: bold; }

blockquote {
  margin: 1em 40px; }

/*
 * Addresses styling not present in S5, Chrome.
 */
dfn {
  font-style: italic; }

/*
 * Addresses styling not present in IE6/7/8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/*
 * Addresses margins set differently in IE6/7.
 */
p,
pre {
  margin: 1em 0; }

/*
 * Corrects font family set oddly in IE6, S4/5, Chrome.
 * en.wikipedia.org/wiki/User:Davidgothberg/Test59
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  _font-family: 'courier new', monospace;
  font-size: 1em; }

/*
 * Improves readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word; }

/*
 * Addresses CSS quotes not supported in IE6/7.
 */
q {
  quotes: none; }

/*
 * Addresses `quotes` property not supported in S4.
 */
q:before,
q:after {
  content: '';
  content: none; }

small {
  font-size: 75%; }

/*
 * Prevents `sub` and `sup` affecting `line-height` in all browsers.
 * gist.github.com/413930
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* ==========================================================================
   Lists
   ========================================================================== */
/*
 * Addresses margins set differently in IE6/7.
 */
dl,
menu,
ol,
ul {
  margin: 0em 0; }

dd {
  margin: 0 0 0 40px; }

/*
 * Addresses paddings set differently in IE6/7.
 */
menu,
ol,
ul {
  padding: 0 0 0 40px; }

/*
 * Corrects list images handled incorrectly in IE7.
 */
nav ul,
nav ol {
  list-style: none;
  list-style-image: none; }

/* ==========================================================================
   Embedded content
   ========================================================================== */
/*
 * 1. Removes border when inside `a` element in IE6/7/8/9, FF3.
 * 2. Improves image quality when scaled in IE7.
 *    code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/
 */
img {
  border: 0;
  /* 1 */
  -ms-interpolation-mode: bicubic;
  /* 2 */ }

/*
 * Corrects overflow displayed oddly in IE9.
 */
svg:not(:root) {
  overflow: hidden; }

/* ==========================================================================
   Figures
   ========================================================================== */
/*
 * Addresses margin not present in IE6/7/8/9, S5, O11.
 */
figure {
  margin: 0; }

/* ==========================================================================
   Forms
   ========================================================================== */
/*
 * Corrects margin displayed oddly in IE6/7.
 */
form {
  margin: 0; }

/*
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/*
 * 1. Corrects color not being inherited in IE6/7/8/9.
 * 2. Corrects text not wrapping in FF3.
 * 3. Corrects alignment displayed oddly in IE6/7.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  white-space: normal;
  /* 2 */
  *margin-left: -7px;
  /* 3 */ }

/*
 * 1. Corrects font size not being inherited in all browsers.
 * 2. Addresses margins set differently in IE6/7, FF3+, S5, Chrome.
 * 3. Improves appearance and consistency in all browsers.
 */
button,
input,
select,
textarea {
  font-size: 100%;
  /* 1 */
  margin: 0;
  /* 2 */
  vertical-align: baseline;
  /* 3 */
  *vertical-align: middle;
  /* 3 */ }

/*
 * Addresses FF3/4 setting `line-height` on `input` using `!important` in the
 * UA stylesheet.
 */
button,
input {
  line-height: normal; }

/*
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Corrects inability to style clickable `input` types in iOS.
 * 3. Improves usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Removes inner spacing in IE7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE6.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
  *overflow: visible;
  /* 4 */ }

/*
 * Re-set default cursor for disabled elements.
 */
button[disabled],
input[disabled] {
  cursor: default; }

/*
 * 1. Addresses box sizing set to content-box in IE8/9.
 * 2. Removes excess padding in IE8/9.
 * 3. Removes excess padding in IE7.
 *    Known issue: excess padding remains in IE6.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
  *height: 13px;
  /* 3 */
  *width: 13px;
  /* 3 */ }

/*
 * 1. Addresses `appearance` set to `searchfield` in S5, Chrome.
 * 2. Addresses `box-sizing` set to `border-box` in S5, Chrome (include `-moz`
 *    to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box; }

/*
 * Removes inner padding and search cancel button in S5, Chrome on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/*
 * Removes inner padding and border in FF3+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/*
 * 1. Removes default vertical scrollbar in IE6/7/8/9.
 * 2. Improves readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */ }

/* ==========================================================================
   Tables
   ========================================================================== */
/*
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%; }

/******************************************************************
CUSTOMIZED RESET VALUES
I added these extra styles as a more personalized reset. Feel free
to remove them if you like or add your own. If you want to update
the normalize styles, make sure to edit from this point up.
******************************************************************/
p {
  -webkit-hyphens: none;
  -epub-hyphens: none;
  -moz-hyphens: none;
  hyphens: none; }

b, strong, .strong {
  font-weight: bold; }

dfn, em, .em {
  font-style: italic; }

small, .small {
  font-size: 75%; }

nav ul, nav ol {
  padding: 0;
  list-style-type: none; }

dd {
  margin: 0; }

.sidebar ul,
.sidebar ol,
.commentlist {
  list-style: none; }

/******************************************************************
Site Name:
Author:

Stylesheet: Mixins & Constants Stylesheet

This is where you can take advantage of Sass' great features:
Mixins & Constants. I won't go in-depth on how they work exactly,
there are a few articles below that will help do that. What I will
tell you is that this will help speed up simple changes like
changing a color or adding CSS3 techniques gradients.

A WORD OF WARNING: It's very easy to overdo it here. Be careful and
remember less is more.

******************************************************************/
/*********************
CLEARFIXIN'
*********************/
.cf {
  zoom: 1; }
  .cf:before, .cf:after {
    content: "";
    display: table; }
  .cf:after {
    clear: both; }

/*********************
TOOLS
*********************/
.image-replacement {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden; }

/*********************
COLORS
Need help w/ choosing your colors? Try this site out:
http://0to255.com/
*********************/
/*blue*/
/*red*/
/*dark blue*/
/*blue-bg*/
/*
Here's a great tutorial on how to
use color variables properly:
http://sachagreif.com/sass-color-variables/
*/
/*********************
TYPOGRAPHY
*********************/
/* 	To embed your own fonts, use this syntax
	and place your fonts inside the
	library/fonts folder. For more information
	on embedding fonts, go to:
	http://www.fontsquirrel.com/
	Be sure to remove the comment brackets.
*/
/*	@font-face {
    	font-family: 'Font Name';
    	src: url('/library/fonts/font-name.eot');
    	src: url('/library/fonts/font-name.eot?#iefix') format('embedded-opentype'),
             url('/library/fonts/font-name.woff') format('woff'),
             url('/library/fonts/font-name.ttf') format('truetype'),
             url('/library/fonts/font-name.svg#font-name') format('svg');
    	font-weight: normal;
    	font-style: normal;
	}
*/
/*
use the best ampersand
http://simplebits.com/notebook/2008/08/14/ampersands-2/
*/
span.amp {
  font-family: Baskerville,'Goudy Old Style',Palatino,'Book Antiqua',serif !important;
  font-style: italic; }

.text-left {
  text-align: left; }

.text-center {
  text-align: center; }

.text-right {
  text-align: right; }

.alert-help, .alert-info, .alert-error, .alert-success {
  margin: 10px;
  padding: 5px 18px;
  border: 1px solid; }

.alert-help {
  border-color: #cd1631;
  background: #e41937; }

.alert-info {
  border-color: #bfe4f4;
  background: #d5edf8; }

.alert-error {
  border-color: #f8cdce;
  background: #fbe3e4; }

.alert-success {
  border-color: #deeaae;
  background: #e6efc2; }

/*********************
TRANSITION
*********************/
/*
I totally rewrote this to be cleaner and easier to use.
You'll need to be using Sass 3.2+ for these to work.
Thanks to @anthonyshort for the inspiration on these.
USAGE: @include transition(all 0.2s ease-in-out);

transition-property: property_name; 				
transition-duration: duration; 				
transition-timing-function: timing_function; 				
transition-delay: delay;


*/
/*needed for when using scroll-down easing to anchor point on page*/
.scrollpoint {
  display: block;
  position: relative;
  top: -110px;
  visibility: hidden; }

/*********************
Border Radius
*********************/
/*
USAGE: @include border-radius($small-border-radius);
*/
/*********************
Image zoom
*********************/
/*
USAGE: @include transform($zoom);
*/
/*********************
BOX Shadow
*********************/
/*
USAGE: @include box-shadow($boxshadow);
*/
/*********************
Align Center
*********************/
/*
USAGE: 
@include center(); 
@include center(true, false);
@include center(false, true); 
*/
/*********************
CSS3 GRADIENTS
Be careful with these since they can
really slow down your CSS. Don't overdo it.
*********************/
/* @include css-gradient(#dfdfdf,#f8f8f8); */
/*********************
BOX SIZING
*********************/
/* NOTE: value of "padding-box" is only supported in Gecko. So
probably best not to use it. I mean, were you going to anyway? */
/* @include box-sizing(border-box); */
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

/********************************************
MIXIN CREATED FOR WHEN YOU NEED A BREAKPOINT
********************************************/
/*
USAGE: @include bp(baby-screen) {
    width: 100%;
  }
*/
/*********************
BUTTONS
*********************/
.button, button {
  padding: 0.4em 1.4em;
  display: inline-block;
  text-decoration: none;
  cursor: pointer;
  border: 1px solid #4e4f51;
  background: transparent;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  border-radius: 20px;
  line-height: 2; }
  .button:hover, .button:focus, button:hover, button:focus {
    background: #004890;
    border-color: #004890;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out; }

.button.primary, #pushMenu .button {
  background: #004890;
  border: none; }
  .button.primary:hover, .button.primary:focus, .button.primary:active, #pushMenu .button:hover, #pushMenu .button:focus, #pushMenu .button:active {
    background: #004890;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out; }

.button.tertiary {
  background: #003b77;
  border: none; }
  .button.tertiary:hover, .button.tertiary:focus, .button.tertiary:active {
    background: #003b77;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out; }

.button.secondary {
  border: none;
  background: #e41937;
  /*.button.secondary {
    border: 1px solid $white;
    background: transparent;
    &:hover, &:focus, &:active {
		background: $white;
        border-color: $white;
		@include transition(all 0.5s ease-in-out);
	}*/ }
  .button.secondary:hover, .button.secondary:focus, .button.secondary:active {
    background: #cd1631;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out; }

.button.showHide:before {
  content: "\f107";
  font-family: FontAwesome;
  position: relative;
  float: right;
  margin-left: 0.5em;
  font-size: large;
  line-height: 1.6;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out; }

.button.showHide.open {
  background: #e41937; }
  .button.showHide.open:before {
    content: "\f106";
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out; }

.fw {
  width: 100% !important;
  display: block; }

.download-icon {
  position: relative;
  padding-left: 1.5em;
  margin-bottom: 0.75em; }
  .download-icon:before {
    content: "\f56d";
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    color: #004890;
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    font-size: 1.25em;
    line-height: 1.3; }

/*! Pushy - v1.1.0 - 2017-1-30
* Pushy is a responsive off-canvas navigation menu using CSS transforms & transitions.
* https://github.com/christophery/pushy/
* by Christopher Yee */
/* Menu Appearance */
.pushy {
  position: fixed;
  width: 300px;
  height: 100%;
  top: 0;
  z-index: 9999;
  background: #4e4f51;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  /* enables momentum scrolling in iOS overflow elements */
  /*a.menu-btn:hover{ @include spin(spin 2s infinite linear); cursor:pointer;}*/ }
  .pushy a.menu-btn, .pushy p {
    padding: 0.5em 0.5em; }
  .pushy ul:first-child {
    margin-top: 10px; }
  .pushy.pushy-left {
    left: 0; }
  .pushy.pushy-right {
    right: 0; }

.pushy-content {
  visibility: hidden;
  padding-top: 1em; }

/* Menu Movement */
.pushy-left {
  -webkit-transform: translate3d(-300px, 0, 0);
  -ms-transform: translate3d(-300px, 0, 0);
  transform: translate3d(-300px, 0, 0); }

.pushy-open-left #container,
.pushy-open-left .push {
  -webkit-transform: translate3d(300px, 0, 0);
  -ms-transform: translate3d(300px, 0, 0);
  transform: translate3d(300px, 0, 0); }

.pushy-right {
  -webkit-transform: translate3d(300px, 0, 0);
  -ms-transform: translate3d(300px, 0, 0);
  transform: translate3d(300px, 0, 0); }

.pushy-open-right #container,
.pushy-open-right .push {
  -webkit-transform: translate3d(-300px, 0, 0);
  -ms-transform: translate3d(-300px, 0, 0);
  transform: translate3d(-300px, 0, 0); }

.pushy-open-left .pushy,
.pushy-open-right .pushy {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.pushy-open-left .pushy-content,
.pushy-open-right .pushy-content {
  visibility: visible; }

/* Menu Transitions */
#container,
.pushy,
.push {
  transition: transform 0.2s cubic-bezier(0.16, 0.68, 0.43, 0.99); }

.pushy-content {
  transition: visibility 0.2s cubic-bezier(0.16, 0.68, 0.43, 0.99); }

/* Site Overlay */
.site-overlay {
  display: none; }

.pushy-open-left .site-overlay,
.pushy-open-right .site-overlay {
  display: block;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9998;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-animation: fade 500ms;
  animation: fade 500ms; }

@keyframes fade {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes fade {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

/* Submenu Appearance */
.pushy-submenu {
  /* Submenu Buttons */
  /* Submenu Icon */ }
  .pushy-submenu ul {
    padding-left: 15px;
    transition: max-height 0.2s ease-in-out, visibility 0.2s ease-in-out; }
    .pushy-submenu ul .pushy-link {
      transition: opacity 0.2s ease-in-out; }
  .pushy-submenu button {
    width: 100%;
    color: #b3b3b1;
    padding: 15px 30px;
    text-align: left;
    background: transparent;
    border: 0; }
    .pushy-submenu button:hover {
      color: #FFF; }
  .pushy-submenu > a,
  .pushy-submenu > button {
    position: relative; }
  .pushy-submenu > a::after,
  .pushy-submenu > button::after {
    content: '';
    display: block;
    height: 11px;
    width: 8px;
    position: absolute;
    top: 50%;
    right: 15px;
    /*background: url("../img/arrow.svg") no-repeat;*/
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    transition: transform 0.2s; }

/* Submenu Movement */
.pushy-submenu-closed ul {
  max-height: 0;
  overflow: hidden;
  visibility: hidden; }

.pushy-submenu-closed .pushy-link {
  opacity: 0; }

.pushy-submenu-open {
  /* Submenu Icon */ }
  .pushy-submenu-open ul {
    max-height: 1000px;
    visibility: visible; }
  .pushy-submenu-open .pushy-link {
    opacity: 1; }
  .pushy-submenu-open a::after,
  .pushy-submenu-open button::after {
    -webkit-transform: translateY(-50%) rotate(90deg);
    -ms-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg); }

/*
BASE (MOBILE) SIZE
This are the mobile styles. It's what people see on their phones. If
you set a great foundation, you won't need to add too many styles in
the other stylesheets. Remember, keep it light: Speed is Important.
*/
/******************************************************************
Site Name:
Author:

Stylesheet: Base Mobile Stylesheet

Be light and don't over style since everything here will be
loaded by mobile devices. You want to keep it as minimal as
possible. This is called at the top of the main stylsheet
and will be used across all viewports.

******************************************************************/
/*********************
GENERAL STYLES
*********************/
body {
  font-family: "Open Sans", sans-serif;
  font-size: 97.5%;
  line-height: 1.6;
  color: #001f4b;
  font-weight: 400; }

.mobileOnly {
  display: inline-block; }

.desktopOnly {
  display: none; }

/********************
BODY CLASSES
style a page via class
********************/
/* home page */
/*********************
Z_INDEX
*********************/
.cd-top {
  z-index: 9999; }

.header {
  z-index: 1100; }

#content {
  z-index: 1000; }

#hero {
  z-index: 700; }

ul.children {
  z-index: 800; }

/*********************
LAYOUT & GRID STYLES
*********************/
.row, body.Home #content #leftcol > div > div, .row-small, body.fullWidth #leftcol > div > div {
  margin: 0 auto;
  width: 92%;
  padding: 1em 0; }

/* Turn off padding on some rows*/
.header .row {
  padding: 0 0; }

/*********************
LINK STYLES
*********************/
a {
  color: #004890;
  /* removing text decoration from all headline links */
  text-decoration: underline;
  /* on hover */
  /* on click */
  /* mobile tap color */ }
  a:hover, a:focus {
    color: #0062c3; }
  a:link {
    /*
		this highlights links on iPhones/iPads.
		so it basically works like the :hover selector
		for mobile devices.
		*/
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0.3); }

.button, nav a, #header a, #bottomBlocks a {
  text-decoration: none; }

/******************************************************************
H1, H2, H3, H4, H5 STYLES
******************************************************************/
h1, .h1, h2, .h2, h3, .h3, .siteName {
  font-family: "Open Sans", sans-serif;
  font-display: fallback; }
  h1 a, .h1 a, h2 a, .h2 a, h3 a, .h3 a, .siteName a {
    text-decoration: none; }

.fal, h4, .h4 {
  font-weight: 300; }

#accountMenu .h2 {
  font-family: "Open Sans", sans-serif;
  font-display: fallback; }

h1, .h1, h2, .h2, h3, .h3, h4, .h4 {
  line-height: 1.3; }

strong, h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, #accountMenu > a, .topMenu .nav > li > a, a.link {
  font-weight: 700; }

h1, .h1, h2, .h2 {
  margin: 0.35em 0; }

h3, .h3, h5, .h5, h6, .h6 {
  margin: 0.75em 0; }

#accountMenu .h2, #address .h2, .slideshow_caption .h1, .slideshow_caption .h2, #pushMenu p {
  margin: 0em 0; }

h3, .h3, h4, .h4, #message p, .siteName strong, .topMenu .nav > li > a, thead, .slideHeading, button, .button, .button-primary {
  text-transform: uppercase; }

h3, .h3, h4, .h4, #message p {
  letter-spacing: 1px; }

h1, .h1, .phone {
  font-size: 1.6em; }

h2, .h2, .slideDescription, .fa-ul li, .bigger, .topBlock > div p, .phone {
  font-size: 1.2em; }

h3, .h3, h4, .h4, h5, .h5, h6, .h6, #breadcrumbs .siteName strong, .accountMenu {
  font-size: 1em; }

#rightcol h4, #rightcol .h4 {
  position: relative;
  text-align: center;
  color: black;
  margin-bottom: 1.5em; }
  #rightcol h4:before, #rightcol .h4:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    top: 200%;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    background-color: #e41937; }
  #rightcol h4:after, #rightcol .h4:after {
    content: '';
    position: absolute;
    width: 20%;
    height: 3px;
    top: 200%;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background-color: #e41937;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out; }
  #rightcol h4:hover:after, #rightcol .h4:hover:after {
    width: 100%; }

.responsive .h3:after {
  display: none;
  margin-bottom: 0; }

.smtext, #breadcrumbs, thead, .respond-form label, .holdForm ul, #message p {
  font-size: 0.85em; }

a.link i, a.button i {
  display: inline-block;
  padding-left: 0.25em;
  -webkit-transition: transform 0.3s ease-out;
  -moz-transition: transform 0.3s ease-out;
  -ms-transition: transform 0.3s ease-out;
  -o-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out; }

a.link:hover i, a.button:hover i {
  -webkit-transform: translateX(4px);
  -moz-transform: translateX(4px);
  -ms-transform: translateX(4px);
  -o-transform: translateX(4px);
  transform: translateX(4px); }

/*************************
Colours
*************************/
.blue,
h2, .h2, h4, .h4,
.darkHeader #accountMenu, #accountMenu .h2, .darkHeader .phone, body.Home #content ul li::before, blockquote:before,
body.Home .columnlayout h2 a:hover, .respond-form h2, .fa-li, .slideshow_caption a.button {
  color: #004890; }

.yellow, h3, .h3 {
  color: #e41937; }

.h3 white {
  color: #fff; }

.light-blue, #div407 {
  background: #e9f2ff; }

.black, .topMenu .nav > li > a,
a.button, button,
body.Home #content #leftcol > div:first-of-type,
ul.responsive3 .h2.slideDescription,
body.Home #content #leftcol > div:first-of-type,
body.fullWidth #content #leftcol > div:first-of-type,
body.CurrentSpecials.fullWidth #content #leftcol > div:nth-child(odd),
body#body_476 #content #leftcol > div:nth-child(odd),
body.Apartment #leftcol > div:first-of-type,
#breadcrumbs, body.CurrentSpecials.fullWidth #content #leftcol > div:nth-child(odd) h2 a, #breadcrumbs a {
  color: #001f4b; }

.grey {
  color: #b4b5b7; }

.white, #pushMenu .nav li a, .pushy a,
.topMenu .nav li ul li a,
ul.responsive3 .slideshow_caption a,
.slick-slider button:before,
.responsive .h3,
.holdForm, .holdForm h2, .holdForm a.button,
#footer #facebook a, #copyright, #footer, #footer a, .cd-top i, #cta a.button, .button.primary, a.button.primary, a.button:hover, a.button.secondary, .button.tertiary,
#hero .slick-slider button:before, #hero .heading h1, #hero .heading .h1 {
  color: #fff; }

/*************************
Turn off printable items
*************************/
.printable {
  display: none; }

/*********************
SPRITE
*********************/
/*use modernizer script stop detect browser fallback for next gen images*/
/*.no-webp .box { color: red; }
.webp .box { color: green; }*/
/*.no-js #logo, .no-webp #logo { background-image: url('../images/logo.png'); }
.webp #logo { background-image: url('../images/logo.webp'); }*/
#logo {
  display: block;
  margin: 0 auto;
  background: transparent url("../images/logo.svg") no-repeat center top;
  background-position: center top;
  width: 135px;
  height: 65px;
  background-size: 135px 70px; }

/*********************
HEADER STYLES
*********************/
#message {
  background-color: #001f4b;
  padding: 0.5em 1em;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out; }
  #message > p {
    margin: 0 0; }

/* STICKY NAV - This is where the header is set to be sticky. 
We can also change colour and size here - effects all take place onScroll (waypoints triggers this) */
body:not(.Home) .clearHeader {
  border-bottom: 2px solid #004890; }

.header .clearHeader {
  position: relative;
  background-color: #fff;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out; }

.header .darkHeader {
  position: fixed;
  background-color: #fff;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  top: 0; }

/* position header elements as needed */
.header {
  position: relative;
  /*#accountMenu {
        
		position: relative;
        min-height: 55px;
        > a { @include center(false, true); }
        > a:first-of-type {
            left: 0%;
            font-size: 1em;
        }
        > a.icon-hotdoc {
            right: 0%;
            font-size: 0.8em;
        }
	}*/ }
  .header .row {
    min-height: 90px;
    position: relative; }
  .header .menu {
    width: 100%; }
  .header .menu-btn, .header #logo, .header #accountMenu > a {
    position: absolute; }
  .header #accountMenu {
    right: 65px;
    bottom: 10%;
    min-height: none;
    /*top: 79%;*/
    position: absolute;
    text-align: right; }
    .header #accountMenu > a {
      display: block;
      position: relative;
      transform: none;
      top: unset;
      left: unset; }
    .header #accountMenu > a:first-of-type {
      font-size: 1.2em;
      margin-bottom: 0.25em; }
  .header .menu-btn {
    right: 0px;
    bottom: 17%;
    display: block;
    text-align: center;
    padding: 0.5em;
    text-decoration: none; }
    .header .menu-btn i, .header .menu-btn span {
      display: block;
      vertical-align: middle;
      line-height: 1; }
  .header #logo {
    left: 0%;
    bottom: 18%; }
  .header #mainMenu {
    display: none; }
  .header i.fa.fa-bars {
    font-weight: 300;
    padding-bottom: 0.1em; }
  .header i.fal.fa-phone {
    bottom: 17%;
    position: absolute;
    right: 0px;
    padding: 0.3em; }

/***********************
HERO - HERO
************************/
#hero {
  position: relative;
  overflow: hidden; }

body.Home #hero .row {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  -ms-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
  width: 85%;
  left: 50%; }

body:not(.Home) #hero {
  position: relative;
  height: 250px;
  height: 40vh; }
  body:not(.Home) #hero p {
    margin: 0 0; }
  body:not(.Home) #hero p img, body:not(.Home) #hero .heading {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    -ms-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0); }
  body:not(.Home) #hero p img {
    min-height: 250px;
    max-width: none;
    z-index: -1; }
  body:not(.Home) #hero .heading {
    padding: 1em;
    width: 90%;
    z-index: 2;
    text-align: center; }
  body:not(.Home) #hero:before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.25);
    z-index: 0; }

/*********************
NAVIGATION STYLES
*********************/
#touchMenu,
.menu-btn {
  display: block; }

#mainMenu {
  display: none; }

#pushMenu ul:nth-of-type(2) {
  /*hide home link in 2nd nav*/ }
  #pushMenu ul:nth-of-type(2) > li:first-of-type {
    display: none; }

.topMenu, #pushMenu {
  /*list-style:none;
	float: right;
	clear: right;*/
  /* end .nav */ }
  .topMenu a.toggleMenu, #pushMenu a.toggleMenu {
    width: 100%;
    padding: 2% 4%;
    text-transform: uppercase;
    margin-bottom: 0; }
    .topMenu a.toggleMenu span, #pushMenu a.toggleMenu span {
      display: block;
      width: auto;
      float: right;
      padding-left: 0.5em; }
  .topMenu .nav, #pushMenu .nav {
    /*margin-top:0;
			position: absolute;
			width: 96%;
			z-index: 99999;*/
    /* end .menu li */ }
    .topMenu .nav li, #pushMenu .nav li {
      position: relative;
      text-align: left;
      /* Sub-menu level 2 */
      /* end level 2	*/
      /* Hover effects */ }
      .topMenu .nav li a, #pushMenu .nav li a {
        display: block;
        text-decoration: none;
        padding: 0.5em 0.5em;
        border-bottom: 1px solid rgba(130, 154, 193, 0.21); }
        .topMenu .nav li a.parent:before, #pushMenu .nav li a.parent:before {
          content: "\f107";
          font-family: "Font Awesome 5 Pro";
          font-weight: 300;
          display: block;
          float: right;
          font-size: large;
          padding: 0 0.5em; }
      .topMenu .nav li.hover > a.parent:before, #pushMenu .nav li.hover > a.parent:before {
        content: "\f106"; }
      .topMenu .nav li ul,
      .topMenu .nav li ul.sub-menu,
      .topMenu .nav li ul.children, #pushMenu .nav li ul,
      #pushMenu .nav li ul.sub-menu,
      #pushMenu .nav li ul.children {
        margin-top: 0;
        border-top: 0;
        display: none; }
        .topMenu .nav li ul li,
        .topMenu .nav li ul.sub-menu li,
        .topMenu .nav li ul.children li, #pushMenu .nav li ul li,
        #pushMenu .nav li ul.sub-menu li,
        #pushMenu .nav li ul.children li {
          /* Sub-sub-menu level 3	*/
          /* end level 3	*/ }
          .topMenu .nav li ul li a,
          .topMenu .nav li ul.sub-menu li a,
          .topMenu .nav li ul.children li a, #pushMenu .nav li ul li a,
          #pushMenu .nav li ul.sub-menu li a,
          #pushMenu .nav li ul.children li a {
            padding-left: 1em;
            background: #001432;
            border-bottom: 1px solid rgba(130, 154, 193, 0.21); }
            .topMenu .nav li ul li a:hover, .topMenu .nav li ul li a:focus,
            .topMenu .nav li ul.sub-menu li a:hover,
            .topMenu .nav li ul.sub-menu li a:focus,
            .topMenu .nav li ul.children li a:hover,
            .topMenu .nav li ul.children li a:focus, #pushMenu .nav li ul li a:hover, #pushMenu .nav li ul li a:focus,
            #pushMenu .nav li ul.sub-menu li a:hover,
            #pushMenu .nav li ul.sub-menu li a:focus,
            #pushMenu .nav li ul.children li a:hover,
            #pushMenu .nav li ul.children li a:focus {
              background: #001f4b; }
          .topMenu .nav li ul li ul li,
          .topMenu .nav li ul.sub-menu li ul li,
          .topMenu .nav li ul.children li ul li, #pushMenu .nav li ul li ul li,
          #pushMenu .nav li ul.sub-menu li ul li,
          #pushMenu .nav li ul.children li ul li {
            /* Sub-sub-menu level 4	*/
            /* end level 4	*/ }
            .topMenu .nav li ul li ul li a,
            .topMenu .nav li ul.sub-menu li ul li a,
            .topMenu .nav li ul.children li ul li a, #pushMenu .nav li ul li ul li a,
            #pushMenu .nav li ul.sub-menu li ul li a,
            #pushMenu .nav li ul.children li ul li a {
              padding-left: 1.5em;
              background: #001f4b; }
              .topMenu .nav li ul li ul li a:hover, .topMenu .nav li ul li ul li a:focus,
              .topMenu .nav li ul.sub-menu li ul li a:hover,
              .topMenu .nav li ul.sub-menu li ul li a:focus,
              .topMenu .nav li ul.children li ul li a:hover,
              .topMenu .nav li ul.children li ul li a:focus, #pushMenu .nav li ul li ul li a:hover, #pushMenu .nav li ul li ul li a:focus,
              #pushMenu .nav li ul.sub-menu li ul li a:hover,
              #pushMenu .nav li ul.sub-menu li ul li a:focus,
              #pushMenu .nav li ul.children li ul li a:hover,
              #pushMenu .nav li ul.children li ul li a:focus {
                background: #002a65; }
            .topMenu .nav li ul li ul li ul li a,
            .topMenu .nav li ul.sub-menu li ul li ul li a,
            .topMenu .nav li ul.children li ul li ul li a, #pushMenu .nav li ul li ul li ul li a,
            #pushMenu .nav li ul.sub-menu li ul li ul li a,
            #pushMenu .nav li ul.children li ul li ul li a {
              padding-left: 2em;
              background: #005ee4; }
  .topMenu .nav > li.hover > ul, #pushMenu .nav > li.hover > ul {
    left: 0;
    display: block; }
  .topMenu .nav li li.hover > ul, #pushMenu .nav li li.hover > ul {
    left: 100%;
    top: 0;
    display: block; }

/* end .topMenu */
/*********************
CONTENT STYLES
*********************/
/* content area all inner pagesset different or alternate row colours here*/
body.fullWidth #content #leftcol > div:first-of-type,
body.Home #content #leftcol > div:nth-of-type(even),
#intro,
#breadcrumbs {
  background: #e9f2ff; }

/*body.Home #content #leftcol > div:first-of-type  {background: $white;}*/
/* content area all inner pages */
#content, #homeBlocks, #bottomBlocks {
  position: relative;
  background: #fff; }

.sixcol img {
  border-radius: 10px; }

#div381 {
  padding-bottom: 250px; }

#div393 {
  margin-top: -275px; }

#div354 {
  background-color: #fff !important; }

.fa-ul {
  padding-left: 60px; }

#leftcol ul {
  list-style: none;
  padding: 0 0 0 0;
  margin: 1em 0em 1.5em 0em; }
  #leftcol ul li:not(.slick-slide) {
    position: relative;
    padding-left: 2em;
    margin-bottom: 0.75em; }
    #leftcol ul li:not(.slick-slide):before {
      content: "\f058";
      font-family: "Font Awesome 5 Pro";
      font-weight: 300;
      color: #e41937 !important;
      position: absolute;
      display: block;
      top: 0;
      left: 0;
      font-size: 1.25em;
      line-height: 1.3; }

blockquote {
  margin: 0 0 0 0;
  text-align: left; }

blockquote {
  padding: 1em; }
  blockquote p {
    padding-left: 2em;
    margin-top: 0; }
  blockquote h5 {
    margin: 0.4em 0; }
  blockquote:before {
    content: "\f10d";
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    display: block;
    float: left;
    padding-right: 0.5em;
    line-height: 1.2; }
  blockquote a {
    text-decoration: none; }
  blockquote em {
    text-align: right; }

dd {
  margin-left: 0;
  font-size: 0.9em;
  color: #787878;
  margin-bottom: 1.5em; }

img {
  /*margin: 0 0 1.5em 0;*/
  max-width: 100%;
  height: auto; }

#breadcrumbs {
  /*border-bottom: 1px dotted lighten($color-secondary, 0%);*/ }
  #breadcrumbs > div {
    /*text-align: center;*/ }
    #breadcrumbs > div div {
      display: inline; }

/*********************************
 BLOCKS
*********************************/
.columnlayout {
  display: -webkit-flex;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  height: 100%;
  padding-left: 0;
  justify-content: flex-start;
  /*turn off basic li styling*/
  padding: 0 0 0em 0; }
  .columnlayout li:before {
    display: none; }
  .columnlayout li {
    margin-bottom: 0em;
    padding-left: 0em; }
  .columnlayout > div, .columnlayout li, .columnlayout article {
    display: inline-block;
    vertical-align: top;
    flex: 1 1 auto;
    flex-grow: 0;
    width: 80%;
    padding: 0 1em; }
    .columnlayout > div > div, .columnlayout li > div, .columnlayout article > div {
      width: auto; }
    .columnlayout > div article.newsBlock, .columnlayout li article.newsBlock, .columnlayout article article.newsBlock {
      width: 100%; }

#bottomBlocks.columnlayout > div {
  width: 100%;
  padding: 2em; }

#bottomBlocks.columnlayout > div:first-of-type {
  background: url("/userfiles/Images/Inner-page-air-vents(1000x614).jpg") no-repeat center;
  background-size: cover; }

.service-info {
  width: 80%;
  margin: 1em auto !important; }

.columnlayout.services > div {
  background: #fff;
  margin: 1em;
  flex-grow: 1;
  width: calc(100% - 2em);
  text-align: center;
  padding: 1em;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.2); }
  .columnlayout.services > div > .wrap {
    display: -webkit-flex;
    display: flex;
    flex-direction: row;
    align-items: center;
    margin: 0 auto;
    justify-content: center; }
    .columnlayout.services > div > .wrap > p {
      width: 20%;
      /*text-align: left; flex-grow: 1;*/ }
    .columnlayout.services > div > .wrap > h2 {
      text-align: center;
      /*width: 60%;*/ }

/* #gallery */
#gallery li {
  padding: 0 0.25em; }

/* RIGHT BLOCKS */
#rightcol {
  /* end .block */ }
  #rightcol .block {
    margin-bottom: 1em; }
    #rightcol .block .respond-form form, #rightcol .block #newsletter form {
      width: 100%; }
    #rightcol .block ol, #rightcol .block ul {
      padding: 0em 0em 1em 0em; }
      #rightcol .block ol li, #rightcol .block ul li {
        list-style: none;
        line-height: 1.6;
        padding: 0.25em;
        margin-bottom: 0.25em;
        border-bottom: 1px dotted #9a9b9e; }
        #rightcol .block ol li a, #rightcol .block ul li a {
          display: block;
          text-decoration: none; }
      #rightcol .block ol li:before, #rightcol .block ul li:before {
        content: "\f105";
        font-family: "Font Awesome 5 Pro";
        font-weight: 300;
        display: block;
        float: left;
        font-size: large;
        padding-right: 0.5em;
        line-height: 1.2; }

/* end #rightcol */
/*TOP BLOCKS INNER PAGES*/
body:not(.Home) #topblocks {
  background-color: #e6e6e6; }
  body:not(.Home) #topblocks div.block {
    max-height: 350px;
    position: relative;
    overflow: hidden;
    margin-bottom: 0; }
    body:not(.Home) #topblocks div.block > p {
      margin: 0 0; }
    body:not(.Home) #topblocks div.block img {
      /*max-height: 500px; 
              height: 80vh;
              max-width: none;*/
      width: auto;
      height: auto; }
    body:not(.Home) #topblocks div.block .caption {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate3d(-50%, -50%, 0);
      -ms-transform: translate3d(-50%, -50%, 0);
      transform: translate3d(-50%, -50%, 0);
      /*background-color:rgba(255, 255, 255, 0.6);*/
      width: 95%;
      text-align: center;
      padding: 1em; }

/******************************************************************
FORM STYLES
******************************************************************/
/* show/hid fields on gift voucher form*/
.respond-form {
  margin: 0em auto;
  padding: 0%;
  min-width: 190px;
  background-color: transparent; }

.respond-form, #address {
  /* not nested as not all forms contain a table */ }
  .respond-form table, #address table {
    width: 100%; }
  .respond-form form, #address form {
    margin: 0 0; }
    .respond-form form li, #address form li {
      list-style-type: none;
      clear: both;
      margin-bottom: 0.7335em; }
      .respond-form form li label,
      .respond-form form li small, #address form li label,
      #address form li small {
        display: none; }
    .respond-form form fieldset, #address form fieldset {
      border: 0;
      margin: 0 0;
      padding: 0 0 0 0; }
    .respond-form form input[type=text],
    .respond-form form input[type=email],
    .respond-form form input[type=date],
    .respond-form form input[type=url],
    .respond-form form input[type=tel],
    .respond-form form textarea,
    .respond-form form select, #address form input[type=text],
    #address form input[type=email],
    #address form input[type=date],
    #address form input[type=url],
    #address form input[type=tel],
    #address form textarea,
    #address form select {
      padding: 1em;
      background-color: #fff;
      margin: 0 0 1em 0;
      display: table-cell;
      width: 100%;
      max-width: 100%;
      border: 1px solid #003b77;
      /* form validation - comment out as editor doesn't support some of the html5 validation techniques */
      /* &:invalid {
				outline: none;
				border-color: #fbc2c4;
				background-color: #f6e7eb;
				-webkit-box-shadow: none;
				   -moz-box-shadow: none;
				    -ms-box-shadow: none;
						box-shadow: none;
			}*/ }
      .respond-form form input[type=text]:focus,
      .respond-form form input[type=email]:focus,
      .respond-form form input[type=date]:focus,
      .respond-form form input[type=url]:focus,
      .respond-form form input[type=tel]:focus,
      .respond-form form textarea:focus,
      .respond-form form select:focus, #address form input[type=text]:focus,
      #address form input[type=email]:focus,
      #address form input[type=date]:focus,
      #address form input[type=url]:focus,
      #address form input[type=tel]:focus,
      #address form textarea:focus,
      #address form select:focus {
        /*background-color: #fff;*/ }
    .respond-form form input[type=checkbox], #address form input[type=checkbox] {
      margin-right: 5px; }
    .respond-form form input[name="180_LeaseEnquiry"], #address form input[name="180_LeaseEnquiry"] {
      margin-bottom: 1em; }
    .respond-form form .required, #address form .required {
      background-position: right top;
      background-repeat: no-repeat; }
    .respond-form form textarea, #address form textarea {
      height: 80px; }
    .respond-form form img, #address form img {
      float: left; }
      .respond-form form img.fullwidth, #address form img.fullwidth {
        max-width: 100%; }

#address form {
  margin: 0 auto; }
  #address form input[type=email] {
    width: auto;
    padding: 0.5em; }
  #address form input[type="submit"] {
    min-height: 36px; }

/*********************
LEFT COLUMN
*********************/
#leftcol {
  padding-bottom: 0em; }
  #leftcol #div307 div {
    text-align: center; }

/*********************
FOOTER STYLES
*********************/
#bottomBlocks {
  background: #e9f2ff; }

#footer {
  background: #001f4b; }
  #footer > div i {
    padding-right: 0.25em; }
  #footer > div #copyright .first a {
    display: block; }
  #footer > div nav ul li {
    border-bottom: 1px dotted #e9f2ff; }
    #footer > div nav ul li a {
      display: block;
      line-height: 2; }
  #footer > div #privacy a {
    padding: 0 0.5em; }
    #footer > div #privacy a:first-child {
      border-right: 1px solid #e9f2ff; }

/* ================================================ */
/* reCAPTCHA */
/* ================================================ */
.grecaptcha-badge {
  z-index: 9999; }

/* ================================================ */
/* SLIDESHOWS */
/* ================================================ */
.rslides {
  position: relative;
  list-style: none;
  overflow: hidden;
  width: 100%;
  padding: 0;
  margin: 0; }
  .rslides li {
    position: absolute;
    display: none;
    width: 100%;
    left: 0;
    top: 0;
    /*padding: 2%;*/
    background: #fff; }
  .rslides img {
    display: block;
    height: auto;
    float: left;
    width: 100%;
    border: 0; }

.rslides_nav {
  display: none;
  visibility: hidden; }

.slides1_nav {
  display: none;
  visibility: hidden; }

#leftcol li.slick-slide:before,
#leftcol ul.responsive .slick-dots li:before {
  display: none; }

/* ================================================ */
/* SLIDESHOWS */
/* ================================================ */
/*.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-perspective: 1000px;
}*/
/* SLIDER */
.slick-slider {
  padding: 0;
  list-style: none; }
  .slick-slider .slick-list {
    margin: 0 auto; }
    .slick-slider .slick-list .slick-track .slick-slide {
      position: relative;
      padding: 0; }
  .slick-slider button {
    padding: 0.2em;
    height: auto;
    z-index: 9999; }
    .slick-slider button:before {
      content: "\f104";
      font-family: "Font Awesome 5 Pro";
      font-weight: 300;
      height: auto;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; }
  .slick-slider .slick-next:before {
    content: "\f105";
    padding-left: 0.1em; }

.slick-prev, .slick-next {
  top: 48%;
  z-index: 9999; }

.slick-prev {
  left: 1px; }

.slick-next {
  right: 1px; }

.slick-arrow:hover, .slick-arrow:focus, .slick-arrow:active {
  border: none; }

.slick-slider .slick-list, .slick-track, .slick-slide, .slick-slide img {
  width: 100%; }

.slick-dots li button:before, .slick-dots li.slick-active button:before {
  color: #fff; }

/*Full width slider x3 with captions, dots and arrows */
ul.responsive {
  /*padding-bottom: 3em;*/
  overflow: visible; }
  ul.responsive .slick-list .slick-track .slick-slide img {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
  ul.responsive .slick-list .slick-track .slick-slide:hover img {
    -webkit-transform: scale(1.04);
    -ms-transform: scale(1.04);
    -moz-transform: scale(1.04);
    -o-transform: scale(1.04);
    transform: scale(1.04);
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
  ul.responsive .slick-list .slick-track .slick-slide .slideshow_caption {
    /*text-align: center;*/
    width: 80%;
    background-color: rgba(0, 0, 0, 0.7);
    opacity: 1;
    padding: 0.5em;
    bottom: 0;
    position: absolute;
    left: 50%;
    -webkit-transform: translate3d(-50%, 0, 0);
    -ms-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
  ul.responsive .slick-prev {
    left: 0; }
  ul.responsive .slick-next {
    right: 0; }
  ul.responsive .slick-dots {
    bottom: 0; }
    ul.responsive .slick-dots li:before {
      display: none; }

/*Full width slider with captions */
ul.responsive3 {
  margin-bottom: 0; }
  ul.responsive3 .slick-list .slick-track .slick-slide {
    height: 420px;
    height: 85vh; }
    ul.responsive3 .slick-list .slick-track .slick-slide:before {
      content: "";
      position: absolute;
      display: block;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.45); }
    ul.responsive3 .slick-list .slick-track .slick-slide picture {
      position: relative;
      display: block;
      width: 100%;
      height: 100%; }
    ul.responsive3 .slick-list .slick-track .slick-slide img {
      display: block;
      max-width: none;
      width: auto;
      position: relative;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transition: transform 3s;
      min-width: 100%;
      min-height: 100%;
      z-index: -1; }
    ul.responsive3 .slick-list .slick-track .slick-slide p:last-of-type {
      margin-bottom: 0.75em; }
    ul.responsive3 .slick-list .slick-track .slick-slide a.button:first-of-type {
      animation-delay: 1s; }
    ul.responsive3 .slick-list .slick-track .slick-slide a.button {
      animation-delay: 1.5s; }
  ul.responsive3 .slick-list .slick-track .slick-slide.slick-active img {
    display: block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(1.05);
    -webkit-transform: translate(-50%, -50%) scale(1.05);
    -ms-transform: translate(-50%, -50%) scale(1.05);
    position: relative;
    min-width: 100%;
    min-height: 100%; }
  ul.responsive3 .slick-list .slick-track .slideshow_caption {
    opacity: 0;
    visibility: hidden;
    display: none;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    position: relative; }
  ul.responsive3 .slick-list .slick-track .slideshow_caption.activate {
    background: rgba(255, 255, 255, 0);
    opacity: 1;
    visibility: visible;
    display: block;
    text-align: center;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out; }
  ul.responsive3 .slick-list .slick-track .slideshow_caption p.h5 {
    top: -15%;
    position: absolute;
    left: 50%;
    -webkit-transform: translate3d(-50%, 0, 0);
    -ms-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0); }

/************************
RESPONSIVE VIDEO WRAPPER
************************/
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 35px;
  height: 0;
  overflow: hidden; }
  .video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

/*********************
CUSTOMISE colorbox
*********************/
#cboxContent {
  padding: 0 40px; }

#cboxCurrent, #cboxNext, #cboxNext, #cboxPrevious, #cboxClose {
  top: 4px; }

#cboxNext, #cboxPrevious {
  top: 50%; }

#cboxPrevious {
  left: 0; }

#cboxNext {
  right: 0; }

#cboxTitle {
  font-size: 120%;
  line-height: 1.8em; }

#cboxLoadedContent {
  margin-top: 28px; }

/*************************
STICKY BACK TO TOP
*************************/
.cd-top {
  display: inline-block;
  height: 40px;
  width: 40px;
  text-align: center;
  position: fixed;
  bottom: 3em;
  right: 0.5em;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  white-space: nowrap;
  background: #001432;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.3s 0s, visibility 0s 0.3s;
  transition: opacity 0.3s 0s, visibility 0s 0.3s;
  border-radius: 50%; }
  .cd-top i {
    margin: auto;
    line-height: 2.5;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    -ms-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0); }

.cd-top.cd-is-visible, .cd-top.cd-fade-out, .no-touch .cd-top:hover {
  -webkit-transition: opacity 0.3s 0s, visibility 0s 0.3s;
  transition: opacity 0.3s 0s, visibility 0s 0.3s; }

.cd-top.cd-is-visible {
  /* the button becomes visible */
  visibility: visible;
  opacity: 1; }

.cd-top.cd-fade-out {
  /* if the user keeps scrolling down, the button is out of focus and becomes less visible */
  opacity: .5; }

.no-touch .cd-top:hover {
  background-color: #e86256;
  opacity: 1; }

/* used for pagination on the news listing page*/
div.new-items-pagination {
  display: grid;
  grid-template-columns: 50% 50%;
  align-items: center;
  background: #d9d9d9;
  margin: 1em auto;
  padding: 0; }
  div.new-items-pagination .news-item-label, div.new-items-pagination .news-items-next {
    padding: 0.6em; }
  div.new-items-pagination .news-items-next {
    text-align: right; }

/*********REVIEW Full & Limited Styles*********/
.gmb-review {
  background-color: #fff;
  display: inline-block;
  margin: 0em 0em 1.5em 0;
  width: 100%;
  border: 1px solid #dddddd;
  box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.2);
  padding: 1.5em; }

.gmb-header {
  font-weight: 700;
  color: #2196f3; }
  .gmb-header br {
    display: none; }
  .gmb-header img {
    width: 25%;
    padding-right: 1em;
    float: left; }

.gmb-reviewdate {
  color: #6aa7ff; }

.gmb-rating {
  padding-top: 0.5em;
  max-height: 55px; }

/*********REVIEWS FULL*********/
.gmb-widget-full:not(.holdSlider) {
  column-count: 1; }
  .gmb-widget-full:not(.holdSlider) .gmb-rating {
    position: relative; }
    .gmb-widget-full:not(.holdSlider) .gmb-rating:before {
      content: url(../images/google-21.png);
      position: absolute;
      top: -80%;
      right: -2px;
      display: block; }

/*********REVIEWS SLIDER*********/
.gmb-widget-full.holdSlider {
  width: 100%; }
  .gmb-widget-full.holdSlider .slick-slide .gmb-review {
    background-color: transparent;
    border: none;
    box-shadow: none; }

/*********REVIEWS LIMITED*********/
.gmb-limited {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  max-width: 1200px;
  margin: 0 auto; }
  .gmb-limited .gmb-review {
    width: 100%;
    flex: 1 1 auto;
    flex-grow: 0;
    text-align: center;
    position: relative; }
    .gmb-limited .gmb-review:before {
      content: url(../images/google-21.png);
      font-weight: 900;
      position: absolute;
      top: 10%;
      right: 20px;
      display: block; }
  .gmb-limited .gmb-header {
    width: 100%;
    display: block;
    text-align: left;
    margin: 0 auto; }
    .gmb-limited .gmb-header img.gmb-avatar {
      width: 100%;
      padding: 0;
      max-width: 46px;
      margin-right: 0.5em; }
  .gmb-limited .gmb-reviewdate {
    text-align: left; }
  .gmb-limited .gmb-rating {
    height: 30px;
    overflow: hidden;
    display: inline-block;
    text-align: left;
    width: 100%;
    padding-top: 0; }
  .gmb-limited .gmb-reviewtext {
    text-align: left;
    color: #4e4f51; }

/*********************
ACCORDIAN - multi-level
*********************/
#ProductCustomisation > [data-accordion-group] > [data-accordion].open > [data-control] {
  border-bottom: 0px solid #4e4f51; }

[data-accordion-group] > [data-accordion].open {
  border-bottom: 0px solid #4e4f51; }

[data-accordion-group] [data-accordion] {
  margin-bottom: 0.5em;
  /*border: 1px dotted darken($white, 25%);*/
  border-bottom: 1px solid #004890;
  border-radius: 20px; }
  [data-accordion-group] [data-accordion] [data-control] {
    background-color: #e9f2ff;
    margin-bottom: 0;
    outline: none;
    width: 100%;
    display: block;
    text-align: left;
    border: none;
    border-radius: 5 !important;
    padding-right: 1.5em; }
    [data-accordion-group] [data-accordion] [data-control]:before {
      content: "\f067";
      font-family: 'Font Awesome 5 Pro';
      display: block;
      float: right;
      font-size: large;
      padding-right: 0em;
      line-height: 1.2;
      font-weight: 300; }
  [data-accordion-group] [data-accordion] [data-content] article p {
    margin-top: 0; }

[data-accordion-group] .open > [data-control]:before {
  content: "\f068";
  font-family: 'Font Awesome 5 Pro';
  display: block;
  float: right;
  padding-right: 0em;
  line-height: 1.2;
  font-weight: 300;
  /*margin-right: -1.5em;*/ }

[data-accordion-group] .open [data-content] {
  margin-top: 0.8em;
  padding-left: 1em; }

/*
LARGER MOBILE DEVICES
This is for devices like the Galaxy Note or something that's
larger than an iPhone but smaller than a tablet. Let's call them
tweeners.
*/
@media only screen and (min-width: 481px) {
  /******************************************************************
Site Name: 
Author: 

Stylesheet: 481px and Up Stylesheet

This stylesheet is loaded for larger devices. It's set to 
481px because at 480px it would load on a landscaped iPhone.
This isn't ideal because then you would be loading all those
extra styles on that same mobile connection. 

A word of warning. This size COULD be a larger mobile device,
so you still want to keep it pretty light and simply expand
upon your base.scss styles.

******************************************************************/ }

/*
TABLET & SMALLER LAPTOPS
This is the average viewing window. So Desktops, Laptops, and
in general anyone not viewing on a mobile device. Here's where
you can add resource intensive styles.
Also colvers tablets in portrait
*/
@media only screen and (min-width: 768px) {
  /******************************************************************
Site Name:
Author:

Stylesheet: Tablet & Small Desktop Stylesheet

Here's where you can start getting into the good stuff.
This size will work on iPads, other tablets, and desktops.
So you can start working with more styles, background images,
and other resources. You'll also notice the grid starts to
come into play. Have fun!

******************************************************************/
  /*********************************
Overwrites needed for grid
*********************************/
  body.Newsdescription #content .row > #leftcol {
    width: 100%; }
  body.Newsdescription #content .row > #righttcol {
    display: none; }
  /******************************************************************
H1, H2, H3, H4, H5 STYLES
******************************************************************/
  .h1, h1 {
    font-size: 2em; }
  blockquote .h2, body.Home #topblocks h2 {
    font-size: 1.6em; }
  .slideshow_caption a.button, #bottomblocks .button {
    font-size: 1.1em; }
  /*********************
GENERAL STYLES
*********************/
  /*********************
LAYOUT & GRID STYLES
*********************/
  .row, .row, body.Home #content #leftcol > div > div, .row-small, body.fullWidth #leftcol > div > div {
    max-width: 1400px; }
  header .row, footer .row {
    max-width: 1600px; }
  .row-small {
    max-width: 1000px; }
  /*********************
NAVIGATION STYLES
*********************/
  .menuWrap {
    width: 95%; }
  .topMenu {
    text-align: right; }
    .topMenu a.toggleMenu {
      margin-top: 0.75em;
      padding: 2% 4%; }
  .header .menu-btn {
    right: 0px;
    bottom: 17%; }
  /*********************
CONTENT STYLES
*********************/
  /* content area all inner pages */
  blockquote:before {
    float: left;
    font-size: 2em; }
  /*********************
HOME STYLES
*********************/
  body.Home #hero .row {
    width: 65%; }
  body.Home #content #leftcol > div > div > div.last img body.Landing #content #leftcol > div {
    padding: 4em 0; }
  /*********************
BLOCK LAYOUT
**********************/
  .columnlayout > div, .columnlayout li {
    width: 50%; }
  .columnlayout article.newsBlock {
    width: 50%; }
  /*REVIEWS }*/
  .gmb-widget-full:not(.holdSlider) {
    column-count: 2; }
  .gmb-limited .gmb-review {
    width: 47%; }
  /*********************
NEWS LISTING
*********************/
  div.listingImg {
    float: left;
    width: 30%; }
  div.listingTxt {
    float: left;
    width: 70%; }
  div.caseStudy {
    float: left;
    width: 48%;
    padding: 1em 0 2em 0;
    position: relative;
    margin-right: 1.9%; }
  /*********************
VIDEOS
*********************/
  .videoWrapper {
    margin-left: 0px;
    margin-right: 0px; }
  /*************************
THIS IS FOR THE PARALLAX SCROLL
*************************/
  #trusticons .parallax-window {
    position: relative;
    padding: 5em 0;
    height: 500px;
    text-align: center;
    margin-top: 0; }
  /*********************
FOOTER STYLES
*********************/
  #footer #copyright .last {
    text-align: right; }
  /*
you'll probably need to do quite a bit
of overriding here if you styled them for
mobile. Make sure to double check these!
*/
  /*SLIDER*/
  /* Bug fix for flashing on Slick slideshow */
  /*Full width slider with captions */
  ul.responsive3 .slick-list .slick-track .slick-slide img {
    /*height: 520px;*/ }
  ul.responsive3 .slick-slider .slick-active img {
    margin-left: -400px; }
  /*Fix to prevent last slide flashing*/
  .slick-slider .slick-track, .slick-slider .slick-list {
    -webkit-perspective: 1000px; }
  /*************************
STICKY BACK TO TOP
*************************/
  .cd-top {
    bottom: 5em; }
  /******************************************************************
Site Name:
Author:

Stylesheet: Admin Tablet & Small Desktop Stylesheet

Here's where I've put the Admin stuff cause I'm not sure what to do with it just yet.
Keeping it clean and seperate from the new stuff.

******************************************************************/
  /* ============================= */
  /* ! Admin MENU   */
  /* ============================= */
  .adminmenucontainer {
    width: 100%;
    background-color: #eeeeee; }
  .adminmenu {
    width: 100%; }
  .adminmenurow {
    text-align: center;
    height: 24px; }
  .adminrootheading {
    line-height: 14px;
    display: block;
    color: #000000;
    padding: 6px;
    font-weight: bold;
    font-size: 13px; }
  .adminrootitem {
    text-align: center;
    background-color: #eeeeee;
    color: #000000;
    text-decoration: none;
    width: 14.28%;
    text-indent: 30px; }
  a.adminrootmenulink {
    line-height: 14px;
    display: block;
    color: #000000;
    padding: 6px;
    text-decoration: none;
    font-weight: bold;
    font-size: 13px; }
  .adminsubmenu {
    line-height: 14px;
    width: 180px;
    display: none;
    position: absolute;
    background-color: #eeeeee;
    margin: 0px;
    padding: 0px;
    text-decoration: none;
    list-style-type: none;
    z-index: 1000; }
  .adminmenuitem {
    height: 24px;
    padding: 3px; }
  a.adminmenulink {
    line-height: 14px;
    display: block;
    color: #000000;
    padding: 6px;
    text-align: left;
    text-decoration: none;
    font-size: 12px;
    text-indent: 10px; }
  body.admcaptcha_edit #leftcol {
    width: 100%; }
  body.admcaptcha_edit #leftcol .block, body.admcaptcha_edit #rightcol {
    display: none; }
  body.admhome #topblocks {
    display: none; }
  /* ============================= */
  /* ! MAIN MENU   */
  /* ============================= */
  body.admindex .header div.menu, body.admhome .header div.menu, body.admnewsection .header div.menu {
    position: relative !important; }
  body.admindex .header, body.admhome .header, body.admnewsection .header {
    z-index: 9999 !important; }
  body.admindex .header #logo, body.admhome .header #logo, body.admnewsection .header #logo {
    position: relative;
    float: left !important; }
  body.admindex #hero::before, body.admhome #hero::before {
    display: none; }
  body.admindex,
  body.admhome,
  body.admnewsection {
    color: #414142;
    /* end .topmenu */ }
    body.admindex .header, body.admindex .header .parallax-window, body.admindex .header .topBlock,
    body.admhome .header,
    body.admhome .header .parallax-window,
    body.admhome .header .topBlock,
    body.admnewsection .header,
    body.admnewsection .header .parallax-window,
    body.admnewsection .header .topBlock {
      height: auto;
      overflow: visible; }
    body.admindex .cke_tpl_list,
    body.admhome .cke_tpl_list,
    body.admnewsection .cke_tpl_list {
      overflow-y: auto;
      max-height: 400px; }
    body.admindex .cke_tpl_item table.cke_tpl_preview td,
    body.admhome .cke_tpl_item table.cke_tpl_preview td,
    body.admnewsection .cke_tpl_item table.cke_tpl_preview td {
      vertical-align: middle;
      padding: 0.25em; }
      body.admindex .cke_tpl_item table.cke_tpl_preview td:first-child,
      body.admhome .cke_tpl_item table.cke_tpl_preview td:first-child,
      body.admnewsection .cke_tpl_item table.cke_tpl_preview td:first-child {
        width: 70%; }
      body.admindex .cke_tpl_item table.cke_tpl_preview td:last-child,
      body.admhome .cke_tpl_item table.cke_tpl_preview td:last-child,
      body.admnewsection .cke_tpl_item table.cke_tpl_preview td:last-child {
        width: 30%; }
    body.admindex .topMenu .nav > li,
    body.admhome .topMenu .nav > li,
    body.admnewsection .topMenu .nav > li {
      padding: 0 0.5em;
      /*turn some of the main nav items ON for admin*/ }
      body.admindex .topMenu .nav > li > a,
      body.admhome .topMenu .nav > li > a,
      body.admnewsection .topMenu .nav > li > a {
        font-size: 1em; }
      body.admindex .topMenu .nav > li:first-child, body.admindex .topMenu .nav > li:nth-child(5), body.admindex .topMenu .nav > li:nth-child(6), body.admindex .topMenu .nav > li:nth-child(7),
      body.admhome .topMenu .nav > li:first-child,
      body.admhome .topMenu .nav > li:nth-child(5),
      body.admhome .topMenu .nav > li:nth-child(6),
      body.admhome .topMenu .nav > li:nth-child(7),
      body.admnewsection .topMenu .nav > li:first-child,
      body.admnewsection .topMenu .nav > li:nth-child(5),
      body.admnewsection .topMenu .nav > li:nth-child(6),
      body.admnewsection .topMenu .nav > li:nth-child(7) {
        display: inline-block; }
      body.admindex .topMenu .nav > li:first-child > a,
      body.admhome .topMenu .nav > li:first-child > a,
      body.admnewsection .topMenu .nav > li:first-child > a {
        display: inline-block; }
  /*********************
HOME BLOCK LAYOUT
**********************/
  /* Needed to lay home blocks out in admin interface and overwrite some of the styling*/
  .columnlayout div.admin_content_block, div.admin_content_block > div {
    width: 96% !important;
    margin: 0 auto; }
  div.admin_content_block .columnlayout {
    margin-top: 0; }
  div.admin_content_block div {
    margin: 0px auto;
    padding: 0 0 0 0;
    background: #fff;
    border: none; }
  body.admindex .columnlayout > div {
    width: 100%; }
  body.admhome #imageslider, body.admhome #hero, body.admhome #bottomblocks {
    display: none; }
  #addBlock_T, #block_new_T {
    position: relative;
    z-index: 1; }
  /* ============================= */
  /* ! Admin CKEDITOR  */
  /* ============================= */
  .cke_button__kook_templates, .cke_button__kook_forms, .cke_button__kook_slideshows, .cke_button__kook_embed, .cke_button__kook_products, .cke_button__kook_templates_label, .cke_button__kook_forms_label, .cke_button__kook_slideshows_label, .cke_button__kook_embed_label, .cke_button__kook_products_label {
    display: inline !important; }
  .cke_button__kook_templates_icon, .cke_button__kook_forms_icon, .cke_button__kook_slideshows_icon, .cke_button__kook_embed_icon, .cke_button__kook_products_icon {
    display: none !important; }
  .cke_editable {
    line-height: normal !important; }
  body.cke_editable {
    background-color: #fff;
    line-height: normal !important; }
  /*Content Template styles*/
  .cke_dialog_contents_75 .cke_tpl_item table.cke_tpl_preview td {
    vertical-align: middle !important;
    padding: 0.25em !important; }
  .cke_dialog_contents_75 .cke_tpl_item table.cke_tpl_preview td.cke_tpl_preview_img {
    width: 150px !important; }
  /*********************
Captcha
**********************/
  #grdCaptcha td {
    padding: 0.25em 0.5em;
    word-wrap: break-word; }
  /* ============================= */
  /* ! Admin DRAG DROP SITEMAP  */
  /* ============================= */
  #sitemap {
    width: 70%; }
    #sitemap ul, #sitemap ol {
      list-style: none; }
      #sitemap ul li > div, #sitemap ol li > div {
        /*background-color: $color-quaternary;*/
        border: 1px solid #e6e6e6;
        padding: 0.5em;
        margin-bottom: 0.5em;
        position: relative;
        cursor: move; }
      #sitemap ul li.dragging:hover > div, #sitemap ol li.dragging:hover > div {
        background-color: #cccccc;
        border: 1px solid #bfbfbf; }
      #sitemap ul li.active:hover, #sitemap ol li.active:hover {
        background-color: #fff;
        border: 1px dashed #004890; }
  #sitemap .placeholder {
    outline: 1px dashed #4183C4;
    /*-webkit-border-radius: 3px;
			-moz-border-radius: 3px;
			border-radius: 3px;
			margin: -1px;*/ }
  .notification {
    color: #555;
    border-radius: 10px;
    font-family: Tahoma,Geneva,Arial,sans-serif;
    font-size: 11px;
    padding: 10px 10px 10px 36px;
    margin: 10px;
    background: #e9ffd9 url("/images/success.png") no-repeat 10px 50%;
    border: 1px solid #a6ca8a; }
  #sitemap .dropzone {
    height: 6px;
    background-color: #fff;
    border-bottom: 4px solid #fff; }
  .HideAdminField {
    display: none; }
  /* admin photo gallery page*/
  .ui-dialog {
    z-index: 1000 !important; }
  #photo-edit-dialog input {
    width: 100%; }
  #photo-edit-dialog textarea {
    height: 103px;
    width: 100%; }
  #photo-edit-dialog .photo-edit-footer {
    margin-top: 20px; }
  #photo-edit-dialog button {
    background: transparent; }
    #photo-edit-dialog button:hover, #photo-edit-dialog button:focus {
      background: transparent; }
  #gallery .photo-sub-container {
    position: relative;
    width: 100%;
    max-height: 226px;
    overflow: hidden; }
  #gallery li {
    padding: 2em; }
  #gallery .photo-img-container {
    border: 1px solid #ccc; }
  #gallery .photo_path {
    vertical-align: middle;
    height: auto; }
  #gallery .overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    opacity: 0;
    transition: .3s ease;
    background-color: black; }
  #gallery .photo-sub-container:hover .overlay {
    opacity: 0.3; }
  #gallery .icon {
    color: white;
    font-size: 100px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    text-align: center; }
  #gallery button {
    width: 40px;
    padding: 0em 0em;
    border: 0px solid #4e4f51; }
  #gallery .photo_schedule {
    font-size: smaller; } }

/*
TABLET ONLY (PORTRAIT) 
*/
@media all and (device-width: 768px) and (device-height: 1024px) and (orientation: portrait) {
  /******************************************************************
Site Name:
Author:

Stylesheet: Tablet (Portrait) 

******************************************************************/ }

/*
TABLET ONLY (LANDSCAPE) 
*/
@media all and (device-width: 768px) and (device-height: 1024px) and (orientation: landscape) {
  /******************************************************************
Site Name: 
Author: 

Stylesheet: Tablet & small Desktop Landscape

 

******************************************************************/ }

/*
TABLET & SMALLER LAPTOPS LANDSCAPE
Tablets in landscape view and upwards, display the desktop menu
*/
@media only screen and (min-width: 1024px) {
  /******************************************************************
Site Name:
Author:

Stylesheet: Grid Stylesheet

I've seperated the grid so you can swap it out easily. It's
called at the top the style.scss stylesheet.

There are a ton of grid solutions out there. You should definitely
experiment with your own. Here are some recommendations:

http://gridsetapp.com - Love this site. Responsive Grids made easy.
http://susy.oddbird.net/ - Grids using Compass. Very elegant.
http://gridpak.com/ - Create your own responsive grid.

The grid below is a combination of the 1140 grid and Twitter Boostrap. 
I liked 1140 but Boostrap's grid was way more detailed so I merged them 
together, let's see how this works out. If you want to use 1140, the original 
values are commented out on each line.

******************************************************************/
  .onecol, .col-1 {
    width: 5.801104972%; }
  /* 4.85%;  } /* grid_1  */
  .twocol, .col-2 {
    width: 14.364640883%; }
  /* 13.45%; } /* grid_2  */
  .threecol, .col-3 {
    width: 22.928176794%; }
  /* 22.05%; } /* grid_3  */
  .fourcol, .col-4 {
    width: 31.491712705%; }
  /* 30.75%; } /* grid_4  */
  .fivecol, .col-5 {
    width: 40.055248616%; }
  /* 39.45%; } /* grid_5  */
  .sixcol {
    width: 48.618784527%; }
  /* 48%;    } /* grid_6  */
  .col-6 {
    width: 50%; }
  /* 50%;    } /* grid_6  */
  .sevencol, .col-7 {
    width: 57.182320438000005%; }
  /* 56.75%; } /* grid_7  */
  .eightcol, .col-8 {
    width: 65.74585634900001%; }
  /* 65.4%;  } /* grid_8  */
  .ninecol, .col-9 {
    width: 74.30939226%; }
  /* 74.05%; } /* grid_9  */
  .tencol, .col-10 {
    width: 82.87292817100001%; }
  /* 82.7%;  } /* grid_10 */
  .elevencol, .col-11 {
    width: 91.436464082%; }
  /* 91.35%; } /* grid_11 */
  .twelvecol, .col-12 {
    width: 99.999999993%; }
  /* 100%;   } /* grid_12 */
  .onecol, .twocol, .threecol, .fourcol, .fivecol, .sixcol, .sevencol, .eightcol, .ninecol, .tencol, .elevencol, .twelvecol {
    position: relative;
    float: left;
    margin-left: 2.762430939%; }
  .first {
    margin-left: 0; }
  .last {
    float: right; }
  /* Flex grid to be used as needed
******************************************************************/
  .flexWrap {
    display: -webkit-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
    height: 100%; }
    .flexWrap.reverse {
      flex-direction: row-reverse; }
    .flexWrap .col-1, .flexWrap .col-2, .flexWrap .col-3, .flexWrap .col-4, .flexWrap .col-5, .flexWrap .col-7, .flexWrap .col-8, .flexWrap .col-9, .flexWrap .col-10, .flexWrap .col-11, .flexWrap .col-12 {
      margin-left: 2.762430939%; }
    .flexWrap > h2, .flexWrap > h3, .flexWrap > p {
      width: 99.999999993%; }
    .flexWrap .wrap {
      margin: 0 auto;
      width: 90%;
      max-width: 680px; }
    .flexWrap .first {
      margin-left: 0;
      order: 1; }
    .flexWrap .last {
      order: 2; }
  /* use this class on surrounding div to achieve vertical alignment*/
  .aligner {
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: center; }
  /* STICKY BLOCKS USING FLEX */
  .flexStick {
    /*stretch is default so set auto height on columns*/
    align-items: flex-start;
    /*turn on for vertical align center*/
    /*height: auto;
    align-items: center;
    justify-content: center;*/
    /* tell the main element to take three times as much width as the other sidebars */
    /*.last{flex: 2 0px;}*/ }
    .flexStick .first {
      order: 1; }
    .flexStick .last {
      order: 2; }
    .flexStick .sticky-item {
      position: -webkit-sticky;
      position: sticky;
      /*flex: 1 0px;*/
      top: 0.5rem; } }
    @media only screen and (min-width: 1024px) and (min-width: 768px) {
      .flexStick .sticky-item {
        top: 3rem; } }
    @media only screen and (min-width: 1024px) and (min-width: 1024px) {
      .flexStick .sticky-item {
        top: 8rem; } }

@media only screen and (min-width: 1024px) {
  body:not(.admindex) .grid > br {
    display: none; }
  /******************************************************************
Site Name:
Author:

Stylesheet: Tablet & Small Desktop Stylesheet Landscape

Needed to change the menu styling from mobile to desktop

******************************************************************/
  .mobileOnly {
    display: none; }
  .desktopOnly {
    display: inline-block; }
  h1, .h1 {
    font-size: 2em; }
  h2, .h2, #homeMission {
    font-size: 1.6em; }
  .bigger, h3, .h3 {
    font-size: 1.2em; }
  .submenu a {
    font-size: 0.9em; }
  #homeMission {
    font-weight: 700; }
  /*************************
Colours
*************************/
  .white {
    color: #fff; }
  /*********************
LAYOUT & GRID STYLES
*********************/
  .row, body.Home #content #leftcol > div > div, body.fullWidth #leftcol > div > div {
    width: 97%;
    padding: 2em 0; }
  /* Reduce padding on some rows*/
  #breadcrumbs .row {
    padding: 1em 0; }
  /*Increase padding content some rows */
  /* Restrict width on some rows and content areas that behave like rows*/
  /*********************
SPRITE
*********************/
  #logo {
    width: 167px;
    height: 80px;
    background-size: 167px 80px; }
  /*********************
HEADER STYLES
*********************/
  body.Home .header {
    /*height: 112.09px;*/ }
  .header .row {
    position: relative;
    min-height: 90px; }
  .header #logo {
    bottom: unset;
    position: absolute;
    top: 50%;
    -webkit-transform: translate3d(0, -50%, 0);
    -ms-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0); }
  .header #accountMenu {
    right: 0%;
    bottom: 10%;
    min-height: none;
    /*top: 79%;*/
    position: absolute;
    text-align: right; }
    .header #accountMenu > a {
      display: block;
      position: relative;
      transform: none;
      top: unset;
      left: unset; }
    .header #accountMenu > a:first-of-type {
      font-size: 1.2em;
      margin-bottom: 0.25em; }
  .header #mainMenu {
    display: inline-block;
    position: absolute;
    right: 250px;
    bottom: 10%; }
  .header a span.desktopOnly {
    padding: 0.4em 1.4em;
    background-color: #004890;
    color: #fff;
    display: inline-block;
    text-decoration: none;
    cursor: pointer;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    border-radius: 20px;
    line-height: 2; }
  /**************************
HERO - Home
***************************/
  body.Home #hero .row {
    /*top: 33%;*/
    width: 40%;
    left: 30%; }
  body:not(.Home) #hero .block img {
    max-width: 1200px; }
  /*hero*/
  article.slideshow_caption {
    text-align: left !important; }
  /*********************
NAVIGATION STYLES
*********************/
  /*#touchMenu*/
  .menu-btn {
    display: none !important; }
  .topMenu {
    text-align: right;
    margin-left: auto;
    margin-right: auto;
    float: right;
    clear: none;
    /* end .nav */ }
    .topMenu a.toggleMenu {
      display: none; }
    .topMenu .nav {
      position: relative;
      width: auto;
      border: 0;
      display: inline;
      /* end .menu ul li */ }
      .topMenu .nav > li {
        display: inline-block;
        padding: 0 0.4em;
        /*Prominent contact link*/
        /*turn some of the main nav items OFF for public*/ }
        .topMenu .nav > li > a {
          outline: none; }
          .topMenu .nav > li > a:after {
            content: '';
            display: block;
            width: 0;
            height: 3px;
            background: #e41937;
            transition: width .3s; }
          .topMenu .nav > li > a:hover, .topMenu .nav > li > a:focus {
            background: transparent; }
            .topMenu .nav > li > a:hover:after, .topMenu .nav > li > a:focus:after {
              width: 100%; }
        .topMenu .nav > li:first-child {
          display: none; }
      .topMenu .nav li {
        position: relative;
        /* highlight current page */
        /*
			plan your menus and drop-downs wisely.
			*/
        /* showing sub-menus */ }
        .topMenu .nav li a {
          padding: 0.5em 0em;
          background: none;
          border-bottom: none; }
          .topMenu .nav li a.parent:before {
            display: none; }
        .topMenu .nav li a.activerootmenulink {
          color: #e41937; }
          .topMenu .nav li a.activerootmenulink:after {
            width: 100%; }
        .topMenu .nav li ul,
        .topMenu .nav li ul.sub-menu,
        .topMenu .nav li ul.children {
          position: absolute;
          z-index: 9999;
          left: -9999px;
          border-top: 2px solid #004890; }
          .topMenu .nav li ul li,
          .topMenu .nav li ul.sub-menu li,
          .topMenu .nav li ul.children li {
            /*
					if you need to go deeper, go nuts
					just remember deeper menus suck
					for usability.
					*/ }
            .topMenu .nav li ul li a,
            .topMenu .nav li ul.sub-menu li a,
            .topMenu .nav li ul.children li a {
              padding: 0.5em 0.5em;
              display: block;
              width: 280px;
              border-top: none;
              border-radius: 0;
              margin-right: 0; }
              .topMenu .nav li ul li a:hover, .topMenu .nav li ul li a:focus,
              .topMenu .nav li ul.sub-menu li a:hover,
              .topMenu .nav li ul.sub-menu li a:focus,
              .topMenu .nav li ul.children li a:hover,
              .topMenu .nav li ul.children li a:focus {
                border-top: none; }
            .topMenu .nav li ul li ul,
            .topMenu .nav li ul.sub-menu li ul,
            .topMenu .nav li ul.children li ul {
              border-top: none; }
  /* end .topMenu */
  .nav > li.hover > ul {
    left: 0; }
  .nav li li ul {
    left: -9999px;
    z-index: 99;
    position: absolute; }
  .nav li li.hover ul {
    left: 100%;
    top: 0;
    z-index: 99;
    position: absolute; }
  /*********************
BLOCK LAYOUT
**********************/
  .service-info {
    width: unset;
    margin: 1em auto !important; }
  .columnlayout > div, .columnlayout li:not(.service-list) {
    width: 25%; }
  .columnlayout article.newsBlock {
    width: 33%; }
  .columnlayout.services > div {
    width: calc(33% - 2em);
    padding: 1em 2em; }
    .columnlayout.services > div > p:first-of-type {
      margin: 0 0; }
  .columnlayout .service-list {
    width: 80%; }
  #gallery li {
    width: 25%; }
  #bottomBlocks.columnlayout > div {
    width: 50%;
    padding: 3em 5em;
    border-top-left-radius: 10px; }
    #bottomBlocks.columnlayout > div .wrap {
      max-width: 500px;
      padding-left: 4em;
      padding-top: 2em; }
  #bottomBlocks.columnlayout > div:last-of-type {
    background: #e9f2ff;
    margin-top: -4em; }
  /*spacing needed for above bottomBlocks */
  .spacer {
    padding-top: 4em; }
  #footer nav.last {
    text-align: right; }
  /*Full width slider */
  body.Home #hero {
    overflow: hidden; }
  ul.responsive3 {
    max-height: none; }
    ul.responsive3 .slick-list .slick-track .slick-slide {
      /*height:500px;*/ }
      ul.responsive3 .slick-list .slick-track .slick-slide:before {
        background-color: rgba(0, 0, 0, 0.25); }
      ul.responsive3 .slick-list .slick-track .slick-slide img {
        /*height: 420px;*/ }
    ul.responsive3 .slick-slider .slick-active img {
      margin-left: 0; }
    ul.responsive3 .slick-prev, ul.responsive3 .slick-next {
      top: 50%; }
    ul.responsive3 .slick-next {
      right: 0px; }
    ul.responsive3 .slick-prev {
      left: 0; }
    ul.responsive3 .slick-slider .slick-track, ul.responsive3 .slick-slider .slick-list {
      -webkit-perspective: 1000px; }
  /*************************
STICKY BACK TO TOP
*************************/
  .cd-top {
    height: 50px;
    width: 50px; }
  /*********************
Sticky CTA
*********************/ }

/*
DESKTOP
This is the average viewing window. So Desktops, Laptops, and
in general anyone not viewing on a mobile device. Here's where
you can add resource intensive styles.
*/
@media only screen and (min-width: 1030px) {
  /******************************************************************
Site Name: 
Author: 

Stylesheet: Desktop Stylsheet

This is the desktop size. It's larger than an iPad so it will only
be seen on the Desktop. 

******************************************************************/
  .header .clearHeader > .row {
    min-height: 120px; }
  .header .clearHeader #logo {
    width: 188px;
    height: 90px;
    background-size: 188px 90px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
  .header .darkHeader > .row {
    min-height: 100px; }
  .header .darkHeader #logo {
    width: 167px;
    height: 80px;
    background-size: 167px 80px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
  #content {
    height: auto; } }

/*
DESKTOP
This is the average viewing window. So Desktops, Laptops, and
in general anyone not viewing on a mobile device. Here's where
you can add resource intensive styles.
*/
@media only screen and (min-width: 1030px) {
  /******************************************************************
Site Name: 
Author: 

Stylesheet: Desktop Stylsheet

This is the desktop size. It's larger than an iPad so it will only
be seen on the Desktop. 

******************************************************************/
  .header .clearHeader > .row {
    min-height: 120px; }
  .header .clearHeader #logo {
    width: 188px;
    height: 90px;
    background-size: 188px 90px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
  .header .darkHeader > .row {
    min-height: 100px; }
  .header .darkHeader #logo {
    width: 167px;
    height: 80px;
    background-size: 167px 80px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
  #content {
    height: auto; } }

/*
LARGE VIEWING SIZE
This is for the larger monitors and possibly full screen viewers.
*/
@media only screen and (min-width: 1240px) {
  /******************************************************************
Site Name: 
Author: 

Stylesheet: Super Large Monitor Stylesheet

You can add some advanced styles here if you like. This kicks in
on larger screens.

******************************************************************/
  h1, .h1, h2, .h2, h3, .h3, h4, .h4 {
    margin: 0.5em 0; }
  p + h4 {
    padding-top: 0.5em; }
  .responsive .h3 {
    margin-bottom: 0; }
  h1, .h1 {
    font-size: 3em; }
  .topMenu .nav > li > a {
    font-size: 120%; }
  .bigger {
    font-size: 1.4em; }
  /*********************
LAYOUT & GRID STYLES
*********************/
  /*********************
HEADER STYLES
*********************/
  /**************************
HERO - Home
***************************/
  /*body.Home #hero {max-height:75vh;}*/
  body:not(.Home) #hero {
    /*height:300px;*/
    overflow: hidden; }
    body:not(.Home) #hero .block > p img {
      min-width: 100%;
      max-width: initial;
      height: auto; }
  /*********************
NAVIGATION STYLES
*********************/
  .topMenu .nav > li {
    padding: 0 1em; }
  /*********************
CONTENT STYLES
*********************/
  #content #leftcol > div > .first {
    padding: 0 2em; }
  /*********************
BLOCK LAYOUT
**********************/
  .columnlayout {
    /*Top row needs border adding seperatley to prevent double borders*/ }
  #bottomBlocks .block {
    margin-bottom: 0em; }
  /* LEFT BLOCKS - Mission statement*/
  #homeMission .row {
    height: 60vh;
    display: flex;
    align-items: center; }
  /*Full width slider */ }

/*
RETINA (2x RESOLUTION DEVICES)
This applies to the retina iPhone (4s) and iPad (2,3) along with
other displays with a 2x resolution. You can also create a media
query for retina AND a certain size if you want. Go Nuts.
*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
  /******************************************************************
Site Name: 
Author: 

Stylesheet: Retina Screens & Devices Stylesheet

When handling retina screens you need to make adjustments, especially
if you're not using font icons. Here you can add them in one neat
place.

******************************************************************/
  /*.no-js #logo, .no-webp #logo { background-image: url('../images/logo-2x.png'); }
.webp #logo { background-image: url('../images/logo-big.webp'); }*/ }

/*
iPHONE 5 MEDIA QUERY
Want to get fancy for no good reason? Knock yourself out.
*/
/*
PRINT STYLESHEET
Feel free to customize this. Remember to add things that won't make
sense to print at the bottom. Things like nav, ads, and forms should
be set to display none.
*/
@media print {
  /******************************************************************
Site Name:
Author:

Stylesheet: Print Stylesheet

This is the print stylesheet. There's probably not a lot
of reasons to edit this stylesheet. If you want to
though, go for it.

******************************************************************/
  /*
UNIVERSAL STYLING
Apply the universal selector (*) to remove background colors and shadowing and reset the default font color to black. 
Saves ink and expedites the printing process, it is important to consider how logos and branding elements will appear in grayscale.
*/
  * {
    background: transparent !important;
    color: #808285 !important;
    text-shadow: none !important;
    filter: none !important;
    -ms-filter: none !important;
    /*
	If you wish to maintain background colors or images, you can effectively “force” the browser to do so.
	Handy when you want to turn a web page into a PDF file.
	*/
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact; }
  /*
TYPOGRAPHY
*/
  body {
    font-size: 12pt; }
  p, h2, h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  a, a:visited {
    color: #4e4f51 !important;
    text-decoration: underline; }
  a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }
  /*
GENERAL CONTENT STYLING
*/
  h2, h3, tr, img, pre, blockquote, ul {
    page-break-inside: avoid; }
  pre, blockquote {
    border: 1px solid #808285; }
  thead {
    display: table-header-group; }
  img {
    max-width: 100% !important; }
  body, article, section {
    width: 100% !important;
    margin: 0;
    padding: 0; }
  #leftcol {
    min-width: 786px !important; }
  @page {
    margin: 0.5cm;
    size: A3; }
  /* ============================== */
  /* ! Turn OFF none-printable items  */
  /* ============================== */
  .hide,
  #hero,
  #rightcol,
  nav,
  .parallax-slider,
  #userblocks,
  .CaseStudy,
  #imageslider,
  #breadcrumbs {
    display: none; }
  /* ============================== */
  /* ! Turn ON printable items  */
  /* ============================== */ }

@media print {
  .printable {
    display: block; } }

@media print {
  body.Home .header, body.Home .header .parallax-window, body.Home .header .topBlock, body.CoffeeSolutions .header, body.CoffeeSolutions .header .parallax-window, body.CoffeeSolutions .header .topBlock {
    height: 20vh; } }

/*# sourceMappingURL=style.css.map */
