/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}

/* ===== Global ===== */

:root {
	--body-color: #141414;
	--primary-color: #0bc546;
	--highlight-color: #2399d2;
	--body-font: 'Open Sans', sans-serif;
	--title-font: 'Open Sans', sans-serif;
}

html, body {
	height:100%;
}

html {
	scroll-behavior: smooth;
}

body {
	font-family: var(--body-font);
	font-weight: 300;
	font-style: normal;
	font-size: 16px;
	color: var(--body-color);
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	font-family: var(--title-font);
	font-weight: 500;
	line-height: 1;
	color: var(--body-color);
	margin-top: 0;
}

h1, .h1 {
	font-size: 3rem;
	line-height: 3.2rem;
	letter-spacing: -2.5px;
	margin: 0 0 20px;
}

h2, .h2 {
	font-size: 2.8rem;
	line-height: 3rem;
	letter-spacing: -1px;
	margin: 0 0 20px;
	position: relative;
}

h3, .h3 {
	font-size: 1.85rem;
	line-height: 2.4rem;
	margin: 0 0 10px;
}

h4, .h4, h5, .h5, h6, .h6 {
	font-size: 1.5rem;
	margin-bottom: 14px;
}

p {
	font-family: var(--body-font);
	font-size: 1rem;
	line-height: 1.6rem;
	margin: 0 0 1.4rem;
}

p.lead {
	font-weight: 400;
	font-size: 1.1rem;
	line-height: 1.7rem;
}

p:last-child {
	margin: 0;
}

.cms p {margin:0 !important; padding:0 !important;}
.cms p br {line-height:10px;}
a, a:visited {
	color: var(--primary-color);
	text-decoration: none;
}

a:hover:not(.btn), a:focus:not(.btn) {
	text-decoration: underline;
}

b, strong {
	font-family: var(--body-font);
	font-weight: 600;
	font-style: normal;
}

li {
	font-size: 1rem;
}

li::marker {
	color: var(--primary-color);
}

img {
	width: 100%;
	height: auto;
}

.grid {
	max-width: 1450px;
	margin: 0 auto;
	position: relative;
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	gap: 20px;
}

.btn {
	border-radius: 50px;
	font-family: var(--body-font);
	font-style: normal;
	font-weight: 400;
	font-size: 1rem;
	text-decoration: none;
	padding: 10px 32px;
	transition: all 0.2s ease-in-out;
	user-select: none;
	text-align: center;
	display: inline-block;
}

.btn:hover {
	opacity: 0.8;
}

.btn_primary, .btn_primary:visited {
	background-color: var(--primary-color);
	color: #1a1a1a;
}

.btn_primary:hover {
	color: #fff;
}

a.skip_nav {
	background: var(--primary-color);
	color: #fff;
	height: 20px;
	left: 50%;
	padding: 8px;
	position: absolute;
	transform: translateY(-200%);
	transition: transform 0.3s;
}

a.skip_nav:focus {
  transform: translateY(0%);
}

.mb0 {
	margin-bottom: 0 !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.mb40 {
	margin-bottom: 40px !important;
}

.bl {
	display: block;
}

.fade_in {
  opacity:0;
  transition: all 1.5s ease-out;
}

.fade_in2 {
  transition-delay: 0.2s;
}

.fade_in3 {
  transition-delay: 0.4s;
}

.fade_active {
  opacity: 1;
}

.fade_down {
  opacity:0;
  transform: translateY(-20px);
  transition: all 0.8s cubic-bezier(.17,.67,.83,.67);
}

.fade_down_active {
  transform: translateY(0);
  opacity: 1;
}

@media screen and (min-width:599px) {
	h1, .h1 {
		font-size: 2.8rem;
		line-height: 3.2rem;
	}
}

@media screen and (min-width:768px) {
	h1, .h1 {
		font-size: 3.8rem;
		line-height: 3.8rem;
		letter-spacing: -2.5px;
	}
	h2, .h2 {
		font-size: 2.275rem;
		line-height: 3.25rem;
	}
	p {
		font-size: 1.2rem;
		line-height: 1.8rem;
	}

	p.lead {
		font-size: 1.5rem;
		line-height: 2.1rem;
	}
}

@media screen and (min-width:992px) {
	h1, .h1 {
		font-size: 4.6rem;
		line-height: 5rem;
		letter-spacing: -2.5px;
	}
	h2, .h2 {
		font-size: 2.875rem;
	}

	h3, .h3 {
		margin-bottom: 24px;
	}

	.grid {
		grid-gap: 35px;
	}
}


/* ===== Header ===== */

#site-head {
	background-color: var(--body-color);
	position: fixed;
    width: 100%;
    top: 0;
    z-index: 100;
	border-bottom: 2px solid #ffffff;
}

.site-head-content {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 15px 20px;
}

.site-head-content .logo {
	text-align: center;
}

.site-head-content .logo img {
	width: 160px;
	height: 32px;
}

.site-head-content .menu {
    list-style-type: none;
    margin: 0;
    padding: 20px;
}

.site-head-content .menu li:not(:last-child) {
    padding-left: 14px;
}

.site-head-content .menu a {
    color: #ffffff;
	font-size: 1rem;
	font-weight: 400;
	text-decoration: none;
	position: relative;
	display: block;
}

.site-head-content .menu li > a:hover {
	opacity: 0.8;
}

.site-head-content .menu li > a::after {
	content: "";
	display: block;
	margin: auto;
	height: 3px;
	width: 0;
	top: 5px;
	background: transparent;
	transition: all 0.3s;
}

.site-head-content .menu li > a:hover::after, .site-head-content .menu li > a.active-nav::after {
	width: 100%;
	background: var(--primary-color);
}

.site-head-content .menu a:visited {
	color: #fff;
}

.site-head-content .menu a.btn_primary, .site-head-content .menu a.btn_primary:visited {
	color: #1a1a1a;
}

.site-head .btn_primary {
	margin-bottom: 20px;
}

@media screen and (min-width:599px) {
	.site-head-content {
		padding: 20px 30px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.site-head-content .menu li {
	   display: inline-block;
	}

	.site-head-content .logo {
		text-align: left;
		margin-bottom: 0;
	}	
}

@media screen and (min-width:992px) {
	.site-head-content {
		padding: 24px 50px;
	}
	.site-head-content .menu {
		padding: 0;
	}
	.site-head-content .menu a {
		font-size: 0.75rem;
	}

	.site-head-content .btn_primary {
		margin: 0 20px;
	}
	#site-head {
		position: relative;
	}
	.site-head .btn svg {
		padding-left: 20px;
	}
}
@media screen and (min-width:1200px) {
	.site-head-content .logo img {
		width: 226px;
		height: 53px;
	}
	.site-head-content .menu a {
		font-size: 0.85rem;
	}
}
@media screen and (min-width:1400px) {
	#hero {
		padding: 0px 50px;
	}
	.site-head-content {
		padding: 24px 100px;
	}
	.site-head-content .menu li:not(:last-child) {
		padding-left: 24px;
	}
	.site-head-content .menu a {
		font-size: 0.95rem;
	}
}

@media screen and (min-width:1600px) {
	.site-head-content {
		max-width: 1450px;
		margin: 0 auto;
		padding: 16px 0px;
	}
}


/* ===== Responsive Nav  ===== */

.responsive-menu .menu-mobile-navicon {
		display: none;
		position: absolute;
		top: -1px;
		right: 0;
		padding: 26px 24px;
		line-height: 1;
		cursor: pointer;
		user-select: none;
		-webkit-transition: .25s;
		-moz-transition: .25s;
		-o-transition: .25s;
		transition: .25s;
		z-index: 1001;
	}
	.responsive-menu .menu-mobile-navicon .bars {
		display: inline-block;
		width: 32px;
		height: 2px;
		background: #999;
		transition: 0.3s;
		position: relative;
	}
	.responsive-menu .menu-mobile-navicon .bars:before,
	.responsive-menu .menu-mobile-navicon .bars:after {
		display: inline-block;
		width: 32px;
		height: 2px;
		background: #999;
		border-radius: 0.28571rem;
		-webkit-transition: .25s;
		-moz-transition: .25s;
		-o-transition: .25s;
		transition: .25s;
		position: absolute;
		left: 0;
		content: '';
		-webkit-transform-origin: 0.28571rem center;
		transform-origin: 0.28571rem center;
	}

	.responsive-menu .menu-mobile-navicon .bars:before {
	top: 10px;
}
	.responsive-menu .menu-mobile-navicon .bars:after {
		top: -10px;
	}
	/* icon close state */
	.responsive-menu .menu-mobile-navicon.navicon-close {
		-webkit-transform: scale3d(0.8,0.8,0.8);
		transform: scale3d(0.8,0.8,0.8);
	}
	.responsive-menu .menu-mobile-navicon.navicon-close .bars {
		background: transparent;
	}
	.responsive-menu .menu-mobile-navicon.navicon-close .bars:before,
	.responsive-menu .menu-mobile-navicon.navicon-close .bars:after {
		-webkit-transform-origin: 50% 50%;
		transform-origin: 50% 50%;
		top: 2px;
		width: 42px;
	}
	.responsive-menu .menu-mobile-navicon.navicon-close .bars:before {
		-webkit-transform: rotate3d(0,0,1,45deg);
		transform: rotate3d(0,0,1,45deg);
	}
	.responsive-menu .menu-mobile-navicon.navicon-close .bars:after {
		-webkit-transform: rotate3d(0,0,1,-45deg);
		transform: rotate3d(0,0,1,-45deg);
	}

@media (max-width: 992px) {
	.responsive-menu .menu-brand {
		padding: 16px 20px;
		font-size: 1.2em;
	}
	.responsive-menu .menu-mobile-navicon {
		display: inline-block;
	}
	.responsive-menu .menu-nav {
		position: fixed;
		top: 76px;
		right: 0;
		bottom: 0;
		left: 0;
		height: 0;
		padding: 0;
		background: rgba(0, 0, 0, .85);
		overflow: hidden;
		z-index: 1000;
	}
	.mobile-menu-open {
		overflow: hidden;
	}
	.mobile-menu-open .responsive-menu {
		background: #000;
	}
	.mobile-menu-open .responsive-menu .menu-nav {
		height: 100%;
		text-align: left;
	}
	.mobile-menu-open .responsive-menu .menu-nav ul {
		float: none;
		font-size: .9em;
	}
	.mobile-menu-open .responsive-menu .menu-nav ul > li {
		display: block;
	}
	.mobile-menu-open .responsive-menu .menu-nav ul > li > a {
		padding: 0.8rem 0;
	}
}

/* ===== Main  ===== */
#main-content {
	margin-top: 76px;
	overflow:hidden;
}

@media screen and (min-width:992px) {
		#main-content {
		margin-top: 0;
	}
}

/* ===== Hero ===== */

#hero {
	background-size: cover;
	position: relative;
	overflow: hidden;
	z-index: 0;
	padding: 0px 20px;
}

#hero * {
	text-align: left;
}

#hero .hero_content {
	max-width: 1450px;
    margin: 0 auto;
	padding-top: 50px;
	height: auto;
	z-index: 1;
}

#hero:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(5, 55, 116, 0.3);
}

#hero .hero_content h1 {
	padding-bottom: 20px;
}

#hero .hero_content p {
	font-size: 1.4rem;
	line-height: 1.7rem;
	text-align: center;
}

.home #hero .hero_content p {
	padding-right: 30px;
	text-align: left;
}

#hero .hero_content h1, #hero .hero_content p {
	max-width: 748px;
}

#hero .hero_content span {
	position:relative;
}


#hero .hero_content span::after {
    display: block;
    content: '';
    width: 180px;
    height: 4px;
    background: var(--primary-color);
    position: absolute;
    bottom: -4px;
    left: 0;
    right: 0;
    text-align: center;
    margin: 0 auto;
    z-index: -1;
}

.home #hero .hero_content span::after {bottom: -10px; }

#hero #hero_video {
	object-fit: cover;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;   
}

.hero_content {
	position: relative;
}

#hero .hero_content * {
	color: #ffffff;
}

#hero .hero_logos {
	text-align: center;
	padding-top: 80px;
    padding-bottom: 20px;
}

@media screen and (min-width:700px) {
	#hero .hero_logos img {
		width: 342px;
		height: auto;
	}
}

@media screen and (min-width:992px) {
	#hero {
		padding: 0px 50px;
	}
	#hero .hero_content {
		max-width: 1450px;
   		margin: 0 auto;
		padding-top: 60px;
	}
	#hero .hero_content p {
		font-size: 2.8rem;
		line-height: 3.2rem;
	}
	#hero .hero_logos {
		text-align: center;
		padding-top: 200px;
		padding-bottom: 40px;
	}
}

@media screen and (min-width:1400px) {
	#hero {
		padding: 0px 100px;
	}
	#hero .hero_logos img {
		width: 550px;
		height: auto;
	}
}

/* ===== Sub Nav ===== */

#sub_nav {
	background-color: #e8e8e8;
}

.sub_nav_menu {
	margin: 0;
    list-style-type: none;
    padding: 20px 10px;
	text-align: center;
}
.sub_nav_menu li {
    padding: 0px 24px;
	margin: 8px 2px;;
	display: inline-block;
}

.sub_nav_menu a {
    color: #ffffff;
	font-size: 1.1rem;
	font-weight: 700;
	text-decoration: none;
	position: relative;
	color: var(--body-color);
}

.sub_nav_menu li > a:hover {
	opacity: 0.8;
	text-decoration: none;
}

.sub_nav_menu li > a::after {
	content: "";
	display: block;
	margin: auto;
	height: 3px;
	width: 0;
	top: 5px;
	background: transparent;
	transition: all 0.3s; 
}

.sub_nav_menu li > a:hover::after, .sub_nav_menu li > a.active-nav::after {
	width: 100%;
	background: var(--primary-color);
}


.why #nav-why::after {width: 100%; background: var(--primary-color);}
.compliance #nav-compliance::after {width: 100%; background: var(--primary-color);}
.national #nav-coverage::after {width: 100%; background: var(--primary-color);}
.clients #nav-testimonials::after {width: 100%; background: var(--primary-color);}
.news #nav-news::after {width: 100%; background: var(--primary-color);}
.careers #nav-careers::after {width: 100%; background: var(--primary-color);}
 
.extract .sub_nav_menu li:first-child a:after, .wftt .sub_nav_menu li:nth-child(2) a:after, .kitchens .sub_nav_menu li:nth-child(3) a:after,
.warehouses .sub_nav_menu li:nth-child(4) a:after, .oven .sub_nav_menu li:last-child a:after {
	content: "";
    display: block;
    margin: auto;
    height: 3px;
    top: 5px;
    background: transparent;
    transition: all 0.3s;
	width: 100%;
    background-color: var(--primary-color);
}

/* ===== Page layout ===== */
.content_padding {
	padding: 40px 20px;
}

#hero.inner_hero {
	height: 250px;
	text-align: center;
	padding: 0;
	display: flex;
	align-items: center;
}

#hero.inner_hero .hero_content {
	padding: 0;
}

#hero.inner_hero .hero_content h1 {
  text-shadow: 2px 2px #56667a;
}

#hero.inner_hero .hero_content, #hero.inner_hero .hero_content h1 {
	text-align: center;
	margin: 0 auto;
	padding: 0;
}

.grid .content_title {
	grid-column: 1/13;
	text-align: center;
	position: relative;
}

.content_title:after {
    display: block;
    content: '';
    width: 100px;
    height: 4px;
    background: var(--primary-color);
    position: absolute;
    bottom: 8px;
    left: 0;
    right: 0;
    text-align: center;
    margin: 0 auto;
}

.content_full_width {
	grid-column: 1 / 13;
}

.content_left, .content_right {
	grid-column: 1 / 13;
}

.inner_list {
	margin-bottom: 20px;
	padding-left: 30px;
}

.inner_list li {
	line-height: 2rem;
}

@media screen and (min-width: 768px) {
	#hero.inner_hero {
		height: 350px;
	}
	.content_full_width p.lead {
		font-size: 1.5rem;
		line-height: 2.2rem;
	}
	.content_full_width h3 {
		margin-bottom: 30px;
	}
}

@media screen and (min-width: 992px) {
    .content_padding {
        padding: 60px 50px;
    }
	.content_left {
		grid-column: 1 / 7;
	}
	.content_right {
		grid-column: 7 / 13;
	}
}

@media screen and (min-width: 1024px) {
	#hero.inner_hero {
		height: 412px;
	}
}

@media screen and (min-width: 1400px) {
    .content_padding {
        padding: 70px 100px;
    }
}


/* ===== Form styles ===== */

#content .form-container {
	border: none;
	background-color: #f6f6f6;
	padding: 10px 20px 24px 20px;
}

#content .form-container fieldset {
	border: none;
}

#content .form-container label {
	padding-bottom: 10px;
	display: block;
}


#content .form-container label.required:after { 
	content:" *";
	font-size: 0.7rem;
	position: relative;
	top: -5px;
}

#content .form-container select {
   -moz-appearance:none; /* Firefox */
    -webkit-appearance:none; /* Safari and Chrome */
    appearance:none;
	background-image: url("/img/arrow_down.png");
	background-size: 20px 12px;
	background-repeat: no-repeat;
	background-position-x: 97%;
	background-position-y: 19px;
	border: none;
	margin: 0 0 20px 0;
	width: 100%;
	font-family: inherit;
	font-size: inherit;
	cursor: inherit;
	line-height: inherit;
	outline: none;
	padding: 16px 20px;
	border-radius: 4px;
	background-color: #ffffff;
	position: relative;
}

#content select::-ms-expand {
 	display: none;
	background-image: url("/img/arrow_down.png");
}

/*#content .form-container select:after {
	pointer-events: none;
    display: block;
    content: ' ';
    opacity: 0.5;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    transition: opacity 200ms;
    top: 10px;
    transform: none;
    right: 0;
    background-image: url("/img/arrow_down.png");
}
*/

#content .form-container input[type=button], input[type=submit], input[type=reset] {
	background-color: var(--primary-color);
	border: none;
	color: #1a1a1a;
	padding: 10px 44px;
	text-decoration: none;
	margin: 4px 2px;
	cursor: pointer;
	opacity: 1;
	transition: all 0.2s ease-in-out;
}

#content .form-container input:not([type="checkbox"]):not(:last-child) {
	margin-bottom: 20px;
}


/* ===== Intro ===== */

#intro {
	padding: 40px 20px;
}

#intro .intro_content {
	grid-column: 1/13;
}
	
@media screen and (min-width:768px) {
	#intro .intro_content {
		grid-column: 2/12;
	}
	#intro {
		padding: 60px 0px;
	}
	#intro .intro_content {
		text-align: center;
	}
}

@media screen and (min-width:992px) {
	
}

@media screen and (min-width:1200px) {
	#intro {
		padding: 70px 0px;
	}
	#intro .intro_content {
		padding: 0 30px 0 30px;
	}
}

@media screen and (min-width:1600px) {
	#intro .intro_content {
		padding: 0 100px;
	}
	#intro .intro_content p:not(.lead) {
		padding: 0 26px;
	}
}

/* ===== Testimonials ===== */

#testimonials {
	background-color: #2399d2;
	text-align: center;
}

#testimonials * {
	color: #ffffff;
}

#testimonials h2 {
	color:#ffffff;
}

#testimonials .grid .content_title:after {
	background:#ffffff;
}

.testimonials_content {
	grid-column: 1/13;
}

#testimonials p:not(:last-child) {
	font-size: 1.5rem;
	line-height: 2.1rem;
}

@media (min-width: 768px) {
	.testimonials_content {
		grid-column: 2 / 12;
	}
}

@media (min-width: 1200px) {
	.testimonials_content {
		grid-column: 3 / 11;
	}
}

@media (min-width: 1400px) {
	.testimonials_content {
		padding: 0 40px;
	}
}


/* ===== Home logos ===== */
#intro_logos {
	background-color: #e8e8e8;
}

#intro_logos img {
    grid-column: 1/13;
}

@media (min-width: 599px) {
	#intro_logos img {
		grid-column: 3/11;
	}
}

@media (min-width: 1200px) {
	#intro_logos img {
		grid-column: 4/10;
	}
}


/* ===== News ===== */

#news {
	background-color: #ffffff;
}

.news_article_list {
    display: flex;
    flex-wrap: wrap;
    column-gap:60px;
    max-width:1455px;
    margin: 40px auto 0px auto;
}

.news_article {
	margin-bottom: 50px;
    flex: 1 1 calc(50% - 30px);
    max-width:680px;
}

.news_article h3 a { color: var(--body-color); font-weight: 500; margin-bottom: 0px;}
.news_article h3 a:hover {text-decoration:none;} 
.news_article h3 { margin-bottom:10px;}

.news_article p {
	font-size: 1rem;
	line-height: 1.8rem;
	margin-bottom: 10px;
}

.news_article a {
	font-weight: 400;
}


@media (max-width: 992px) {
	.news_article_list {
        gap:0;
    }
	.news_article {
        flex: 1 1 100%;
        max-width:100%;
    }
	.news_article h3 {
		margin-bottom: 10px;
	}
}

@media (min-width: 1200px) {

	.news_article {
		margin-bottom: 70px;
	}
	.news_article_left .news_article:last-child, .news_article_right .news_article:last-child {
		margin-bottom: 0;
	}
}

/* ===== News Single ===== */

.news_single .news_article 
{
    grid-column: 1/13;
	margin-bottom: 10px;
	line-height: 1.8rem !important;
}

.news_single .cta_centre {
    text-align: left;
}

@media (min-width: 992px) {
	.news_single .news_article, .news_single .cta_centre {
		grid-column: 3/11;
	}
}


@media (min-width: 992px) {
	.news_single .news_article, .news_single .cta_centre  {
		padding: 0 60px;
	}
}

/* ===== Contact Footer ===== */

#contact {
	padding: 45px 20px;
	background-color: #e8e8e8;
}

#contact .contact_content {
	grid-column: 1/13;
}

#contact .contact_form {
	grid-column: 1/13;
}

#contact .contact_form textarea {
	margin-bottom: 0;
}

#contact .contact_content p span {
	color: var(--primary-color);
}

.contact_content_details {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 20px;
}

.contact_content_details p, .contact_content_details a, .contact_content_details a:visited {
	font-family: var(--title-font);
	color:  var(--body-color);
}

.contact_content_details a {
	font-weight: 400;
	font-size: 1.5rem;
}

.contact_content_details a:hover, .contact_content_details a:focus {
	text-decoration: none;
	color: var(--primary-color);
}


.contact_content_details img {
	width: 64px;
	margin-right: 10px;
}

fieldset {
	border: none;
	text-align: left;
	padding: 0;
}

form input:not([type="checkbox"]):not(:last-child) {
	padding: 14px 20px;
	background-color: #ffffff;
	border: none;
	border-radius: 4px;
	margin-bottom: 10px;
	width: 100%;
	box-sizing: border-box;
	font-family: var(--body-font);
	color: #000000;
	font-size: 1rem;
	font-weight: 300;
}

#contact form input:last-child {
	border: none;
	margin-top: 30px;
	cursor: pointer;
	opacity: 1;
	transition: all 0.2s ease-in-out;
	padding: 18px 10px;
}

form input:last-child:hover, form input:last-child:visited, form input:last-child:focus {
	border: none;
	cursor: pointer;
	opacity: 0.8;
	outline: none;
}

form textarea {
	width: 100%;
	padding: 14px 20px;
	box-sizing: border-box;
	border: none;
	border-radius: 4px;
	color: #c0c0c0;
	background-color: #ffffff;
	font-size: 1rem;
	line-height: 1.6rem;
	resize: none;
	font-weight: 300;
	margin-bottom: 20px;
	color:#000;
}

.contact_form .formbtn {margin-top:30px !important; font-size: 1.3rem; border: none;
    width:275px;
  cursor: pointer;
  opacity: 1;
  transition: all 0.2s ease-in-out;
  padding: 18px 10px !important; outline: none;}

.required {display:block; padding-bottom:20px;}

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  	font-family: var(--body-font);
	color: #c0c0c0;
	font-size: 1rem;
  opacity: 1; /* Firefox */
}


:-ms-input-placeholder { /* Internet Explorer 10-11 */
  	font-family: var(--body-font);
	color: #c0c0c0;
	font-size: 1rem;
}

::-ms-input-placeholder { /* Microsoft Edge */
  	font-family: var(--body-font);
	color: #c0c0c0;
	font-size: 1rem;
}


#contact form p, #contact form label {
	font-family: var(--body-font);
	font-size: 14px;
	line-height: 22px;
}

form input[type="checkbox"] {
	position: relative;
	top: 2px;
	margin-right: 4px;
}

#contact form p {
	margin-top: 1rem;
	margin-bottom: 1rem;
}

#contact form p.privacy {
	margin-top: 1rem;
}

#contact form a {
	color: var(--highlight-color);
}

@media screen and (min-width:768px) {
	#contact {
		padding-top: 60px;
		padding-bottom: 50px;
	}	
}

@media screen and (min-width:992px) {
	#contact .contact_content {
		grid-column: 1/7;
	}

	#contact .contact_form {
		grid-column: 7/13;
	}
	.contact_content_details p, .contact_content_details a, .contact_content_details a:visited {
		font-size: 1.875rem;
	}
	#contact form input:last-child {
		font-size: 1.3rem;
	}	
}

@media screen and (min-width:1400px) {
	#contact form {
		width: 90%;
	}
}

@media screen and (min-width:1400px) {
	#contact form {
		width: 90%;
	}
}


/* ===== Footer ===== */

.site-foot-logos {margin:0px auto;}

#site-foot {
	background-color: var(--body-color);
}

#site-foot .grid {
    padding: 40px 30px 0;
}
#site-foot .grid#footer_bottom {
    padding: 40px 30px 40px;
}

#site-foot .footer-top-left {
	grid-column: 1/13;
	text-align: center;
}
#site-foot .footer-top-right {
	grid-column: 1/13;
} 
#site-foot .footer-top-left img {
	width: 260px;
	height: 57px;
	margin: 0 auto;
	text-align: center;
}

#site-foot .footer-top-left p, .footer-top-right p {
	font-size: 0.8rem;
    line-height: 1.3rem;
	color:#fff;
	text-align: center;
}

#site-foot .footer-top-left p {
	font-size: 1rem;
	line-height: 1.7rem;
}

#site-foot .site-foot-content-bottom img {
	width: auto;
}

.site-foot-logos-container {
	background-color: #4c4c4c;
}

.site-foot-content {
	padding: 45px 40px;
	text-align: center;
}

#footer_bottom .site-foot-content {
	padding-top: 10px;
	padding-bottom: 0px;
}

.site-foot-content p {
	font-size: 0.875rem;
	line-height: 1.7rem;
	color:#fff;
	text-align: center;
}

.site-foot-content .menu {
    list-style-type: none;
    margin: 0;
    padding: 0;
	color: #fff;
	text-align: center;
}

.site-foot-content .menu a, .site-foot-content .menu a:visited {
	font-family: var(--body-font);
	font-size: 1rem;
	line-height: 1.6rem;
	text-decoration: none;
	color: #fff;
	opacity: 1;
}

.site-foot-content .menu a:hover {
	opacity: 0.8;
}

.site-foot-content-bottom {
	background-color: #000000;
}

.site-foot-content-bottom p {
	font-size: 0.75rem;
	line-height: 1rem;
	color: #b0b0b0;
	padding-top: 5px;
}

 .site-foot-content img.footer-logo {
	 margin-bottom: 24px;
	 max-width: 272px;
	 margin: 0 auto 24px;
}


@media screen and (min-width:599px) {
	#site-foot .footer-top-right p {
		padding: 0 100px;
	}
}

@media screen and (min-width:992px) {
	
	#site-foot .grid {
		padding: 40px 50px 0;
	}
	
	#site-foot .grid#footer_bottom {
		padding: 30px 50px 30px 50px;
	}
	#site-foot .footer-top-left p, .footer-top-right p {
		font-size: 0.875rem;
		line-height: 1.7rem;
		text-align: left
	}

	#site-foot .footer-top-left p {
		font-size: 0.875rem;
		line-height: 1.7rem;
	}
	#site-foot .footer-top-right p {
		padding: 0;
	}
	
	#site-foot .footer-top-left {
		grid-column: 1/5;
		text-align: left;
	}
	#site-foot .footer-top-right {
		grid-column: 5/13;
	}
	 #site-foot .footer-top-left img {
        width: 272px;
        height: 60px;
		text-align: left;
	}
	.site-foot-content .menu li {
		padding: 10px 0;
	}
	.site-foot-content .menu a, .site-foot-content .menu a:visited {
		font-size: 0.875rem;
		line-height: 1.375rem;
	}
	.site-foot-content .menu li:not(:last-child) {
		border-bottom: solid 1px #343333;
	}
	.site-foot-content-bottom br {
		display: none;
	}
	
	#footer_bottom .site-foot-content {
		padding-top: 0;
	}


	.site-foot-logos img {
		height: 56px;
		width: auto;
	}
	.site-foot-content {
		padding: 24px 50px;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	.site-foot-content .menu {
		margin: 0;
	}
	 /*.site-foot-content img.footer-logo {
		margin-right: 100px;
	}*/
	.site-foot-content p, .site-foot-content .menu {
		text-align: left;
	}
	/*.site-foot-logos.site-foot-content {
		display: inline-block;
	}*/
	.site-foot-content-nav {
		padding: 0;
	}
	.foot-nav {
		width: 30%;
		margin-right: 1%;
	}

}

@media screen and (min-width:1200px) {
	#site-foot .footer-top-left {
        grid-column: 1 / 5;
    }
	#site-foot .footer-top-right {
		grid-column: 5/13;
	}
	#site-foot .grid {
		padding: 40px 100px 0;
	}
	#site-foot .grid#footer_bottom {
		padding: 30px 100px 30px 100px
	}
	
	.site-foot-logos-container .site-foot-content {
		margin: 0 auto;
	}
	.site-foot-content-bottom .site-foot-content {
		padding: 30px 100px;
	}
}


@media screen and (min-width:1400px) {
	#site-foot .grid {
		padding: 40px 100px 0;
	}
	#site-foot .footer-top-left {
        grid-column: 1 / 4;
    }
	#site-foot .footer-top-right {
        grid-column: 4 / 13;
    }
}

@media screen and (min-width:1600px) {
	#site-foot .footer-top-right p {
		padding-right: 165px;
	}
	
	.site-foot-logos .site-foot-content, .site-foot-content {
		max-width: 1450px;
	}
	.site-foot-content-bottom .site-foot-content {
		max-width: 1450px;
		margin: 0 auto;
	}
}



/* ===== Why ===== */
.why #hero {
    background: url(/img/hero_why_mobile.jpg) 50% 0% no-repeat;
    background-size: cover;
}

.why .content_padding {
    padding: 20px 20px 40px;
}

.why .spiral {
    grid-column: 1 / 13;
}

.why .why_content {
	text-align: center;
}.compliance #hero

.why .why_content.grid {
	gap: 0;
}

.why .why_content .content_left, .why .why_content .content_right {
	margin-top: 30px;
	margin-bottom: 0;
}

.why .content_title:after {
	bottom: -6px;
}

#contact .content_title:after {
	bottom: 8px;
}

@-moz-keyframes spin { 
	100% { -moz-transform: rotate(360deg); } 
}
@-webkit-keyframes spin { 
	100% { -webkit-transform: rotate(360deg); } 
}
@keyframes spin { 
	100% { 
		-webkit-transform: rotate(360deg); 
		transform:rotate(360deg); 
	} 
}

@media screen and (min-width:768px) {
	.why #hero {
		-webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
	}

	.why .spiral {
		grid-column: 2 / 12;
	}
	
	.why .h3 {
		margin-bottom: 24px;
	}

}

.pt50 {
	padding-top:50px;
}
@media screen and (min-width:992px) {
	.why #hero {
		background: url(/img/hero_why.jpg) 50% 0% no-repeat fixed;
	    -webkit-background-size: auto;
		-moz-background-size: auto;
		-o-background-size: auto;
		background-size: auto;
	}	
	.why .content_padding {
		padding: 40px 20px 70px;
	}
	.why .why_content.grid {
		gap: 20px;
	}
	.why .why_content .content_left {
		grid-column: 2 / 7;
		padding: 0 10px;
	}
	.why .why_content .content_right {
		grid-column: 7 / 12;
		padding: 0 10px;
	}
}


@media screen and (min-width:1200px) {
	.why .spiral {
		grid-column: 4 / 10;
	}
	.why .spiral svg {
		-webkit-animation:spin 40s linear infinite;
		-moz-animation:spin 40s linear infinite;
		animation:spin 40s linear infinite;
	}
	.why .spiral svg:hover {
  	  	animation-play-state: paused;
	}
}

@media screen and (min-width:1400px) {	
	.why .content_padding {
		padding: 40px 20px 100px;
	}
	.why .why_content .content_left {
		grid-column: 3 / 7;
	}
	.why .why_content .content_right {
		grid-column: 7 / 11;
	}
}


/* ===== Compliance ===== */

.compliance #hero {
    background: url(/img/hero_compliance_mobile.jpg) no-repeat;
    background-position: calc(50% - 80px) -80px;
	background-size: 150%;
}

.compliance .content_left {
	margin-bottom: 30px;
}

.compliance .form-container {
	background-color: #f6f6f6;
}

.compliance .form-container h2 {
	font-size: 1.5rem;
	line-height: 3.8rem;
	text-align: center;
	padding: 10px 10px 0;
	margin-bottom: 0;
}

.compliance .form-container a {
	font-weight: 400;
}

.compliance_answer {
	margin: 0px 0 0;
	padding: 24px 20px;
	background-color: #f6f6f6;
}

.compliance_answer .compliance_left {
	grid-column: 1/13;
}

.compliance_answer .compliance_right {
	display: none;
}

#guidance {
	margin-top: 60px;
}

#guidance .guidance_content {
	grid-column: 1/13;
	text-align: center;
}

#guidance .guidance_content * {
	color: #fff;
}

#guidance .guidance_content .guidance_item {
	display: grid;
	grid-gap: 1rem;
	grid-row-gap: 2rem;
}

#guidance .guidance_content .guidance_item .guidance_box {
	background: var(--highlight-color);
	padding: 30px 20px;
	border-radius: 4px;
}

#guidance .guidance_content .guidance_item .guidance_box h3 {
	position: relative;
	font-weight: 500;
	margin: 0 auto 40px;;
}

#guidance .guidance_content .guidance_item .guidance_box h3:after {
	display: block;
	content: '';
	width: 100px;
	height: 4px;
	background: #ffffff;
	position: absolute;
	bottom: -16px;
	left: 0;
	right: 0;
	text-align: center;
	margin: 0 auto;
}

#guidance .guidance_content .guidance_item .guidance_box p {
	margin-top: 20px;
}

#guidance .guidance_content .guidance_item .guidance_box p:last-child {
	font-weight: 500;
}


@media screen and (min-width:599px) {
	.compliance #hero {
		background: url(/img/hero_compliance_mobile.jpg) 50% 35% no-repeat;
	}
	
	#guidance .guidance_content .guidance_item .guidance_box:first-child {
		grid-column: 1 / span 2;
	} 
	.compliance_answer .compliance_left {
		grid-column: 1/9;
	}
	.compliance_answer .compliance_right {
		grid-column: 10/13;
	}
	.compliance_answer .compliance_right {
		display: block;
	}
}

@media screen and (min-width:768px) {
	.compliance #hero {
		background: url(/img/hero_compliance_mobile.jpg) 50% 0% no-repeat fixed;
		-webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
	}
}


@media screen and (min-width:992px) {
	.compliance #hero {
		background: url(/img/hero_compliance.jpg) 50% 0% no-repeat fixed;
	    -webkit-background-size: auto;
		-moz-background-size: auto;
		-o-background-size: auto;
		background-size: auto;
	}
	.compliance_answer .compliance_right {
		grid-column: 9/13;
	}
	.compliance_answer .grid {
		grid-row-gap: 10px;
	}
	#guidance .guidance_content .guidance_item .guidance_box {
		padding: 40px 30px;
	}
}

@media screen and (min-width:1024px) {	
	.compliance .content_left {
		margin-bottom: 0;
	}
	.compliance_answer .compliance_left {
		grid-column: 1/9;
	}
	.compliance_answer .compliance_right {
		grid-column: 9/13;
	}
	#guidance .guidance_content .guidance_item {
		grid-template-columns:  repeat(3, 1fr);
	}
	#guidance .guidance_content .guidance_item .guidance_box:first-child {
		grid-column: 1 / span 1;
	} 
}

@media screen and (min-width:1600px) {
	#guidance .guidance_content {
		grid-column: 1/13;
	}
	#guidance .guidance_content .guidance_item .guidance_box {
		padding: 60px 54px;
	}
}


/* ===== National ===== */

.national #hero {
	background: url(/img/hero_national_mobile.jpg) 80% 14% no-repeat;
	background-size: cover;
}	

.national  #hero:after {
    background: rgba(5, 55, 116, 0.1);
}

.national #hero.inner_hero .hero_content h1 {
	text-shadow: none;
}

.national_map {
	max-width: 500px;
	margin-top: 30px;
}.clients #hero

@media screen and (min-width:768px) {
	.national .content_left {
		grid-column: 1/7;
	}
	.national .content_right {
		text-align: center;
		grid-column: 7/13;
	}
	.national .content_right img {
		padding-right: 40px;
	}
}

@media screen and (min-width:768px) {
	.national #hero {
		background: url(/img/hero_national.jpg) 75% 0% no-repeat fixed;
	    -webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
	}
	.national_map {
		margin-top: 0;
	}
}

@media screen and (min-width:992px) {
	.national #hero {
		background: url(/img/hero_national.jpg) 50% -100% no-repeat fixed;
	    -webkit-background-size: auto;
		-moz-background-size: auto;
		-o-background-size: auto;
		background-size: auto;
	}
}


/* ===== National ===== */

.news #hero, .news_single #hero {
	background: url(/img/hero_news_mobile.jpg) 60% 0% no-repeat;
	    -webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
}	

.cta_centre {
	grid-column: 1/13;
	text-align: center;
}

@media screen and (min-width:768px) {
	.news #hero, .news_single #hero {
		background: url(/img/hero_news.jpg) 80% 0% no-repeat fixed;
	    -webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
	}
}

@media screen and (min-width:992px) {
	.news #hero, .news_single #hero {
		background: url(/img/hero_news.jpg) 50% -100% no-repeat fixed;
	    -webkit-background-size: auto;
		-moz-background-size: auto;
		-o-background-size: auto;
		background-size: auto;
	}
}


/* ===== Careers  ===== */

.careers #hero {
	background: url(/img/hero_careers_mobile.jpg) 75% 0% no-repeat;
		background-size: cover;
}	

.careers .form-container h2 {
	font-size: 1.5rem;
	line-height: 3.8rem;
	text-align: center;
	padding: 10px 10px 0;
	margin-bottom: 0;
}

@media screen and (min-width:768px) {
	.careers #hero {
		background: url(/img/hero_careers.jpg) 71% 0% no-repeat fixed;
	    -webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
	}
}

@media screen and (min-width:992px) {
	.careers #hero {
		background: url(/img/hero_careers.jpg) 50% 0% no-repeat fixed;
	    -webkit-background-size: auto;
		-moz-background-size: auto;
		-o-background-size: auto;
		background-size: auto;
	}
	
	.careers .content_right {
		grid-column: 8 / 13;
	}
}


.careers .content_full_width p:last-child {
    margin-bottom: 30px;
}


/* ===== Clients & Testimonials ===== */

.clients #hero {
	background: url(/img/hero_clients_mobile.jpg) 40% 20% no-repeat;
		background-size: auto;
}


.client_logos {
	max-width: 320px;
	margin-bottom: 20px;
}

.quote {
    background: url(/img/quote.gif) no-repeat;
    min-height: 196px;
    padding-bottom: 50px;
}

.quote-text {
    text-indent: 55px;
    padding: 20px 0 0 10px;
    line-height: 25px;
    font-style: italic;
}

.quote-name {
    color: var(--highlight-color);
    text-align: right;
    padding-top: 20px;
    font-weight: bold;
}

#quote {
    padding: 65px 0 50px 0;
    width: 100%;
	margin-bottom: 35px;
    background: var(--highlight-color);
    color: #fff;
    font-size: 15px;
    margin-top: 35px;
    text-align: center;
    vertical-align: middle;
}

#quote-wrapper {
    padding: 0 30px;
	font-size: 1.4rem;
	line-height: 1.8rem;
}

.clients .content_right {
	text-align: center;
}

@media screen and (min-width:768px) {
	.clients #hero {
		background: url(/img/hero_clients.jpg) 51% -90% no-repeat fixed;
	    -webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
	}
}

@media screen and (min-width:992px) {
	.clients #hero {
		background: url(/img/hero_clients.jpg) 50% -100% no-repeat fixed;
	    -webkit-background-size: auto;
		-moz-background-size: auto;
		-o-background-size: auto;
		background-size: auto;
	}
	
	.clients .content_right {
		grid-column: 8/13;
	}
}



/* ===== Contact ===== */

.contact #hero {
	background: url(/img/hero_contact_mobile.jpg) 48% 0% no-repeat;
		background-size: cover;
}

.contact_address {
	margin: 10px 0px 40px;
	padding: 30px;
	background-color: #e8e8e8;
	display: inline-block;
} 

#google-map img{
	max-height:none;
	max-width:none!important;
	background:none!important;
}

.contact .form-container {
	background-color: #f6f6f6;
}

.contact .form-container h2 {
	font-size: 1.5rem;
	line-height: 3.8rem;
	text-align: center;
	padding: 10px 10px 0;
	margin-bottom: 0;
}
	

@media screen and (min-width:768px) {
	.contact #hero {
		background: url(/img/hero_contact.jpg) 71% -100% no-repeat fixed;
	    -webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
	}
}

@media screen and (min-width:992px) {
	.contact #hero {
		background: url(/img/hero_contact.jpg) 50% 0 no-repeat fixed;
	    -webkit-background-size: auto;
		-moz-background-size: auto;
		-o-background-size: auto;
		background-size: auto;
	}

	.contact .content_right {
		grid-column: 8 / 13;
	}
}


/* ===== Services ===== */

.extract #hero {
	background: url(/img/hero_extract_mobile.jpg) 38% 0% no-repeat;
}

.wftt #hero {
	background: url(/img/hero_wftt_mobile.jpg) 32% 10% no-repeat;
}

.kitchens #hero {
	background: url(/img/hero_kitchens_mobile.jpg) 50% 10% no-repeat;
}

.warehouses #hero {
	background: url(/img/hero_warehouses_mobile.jpg) 50% 8% no-repeat;
}

.oven #hero {
	background: url(/img/hero_oven_mobile.jpg) 50% 10% no-repeat;
}

.extract #hero , .wftt #hero, .warehouses #hero, .oven #hero, .kitchens #hero {
	    -webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
}

.inner_hero p {
	margin-top: 20px;
}

#hero.inner_hero .hero_content h1, #hero.inner_hero .hero_content p {
	max-width: 1150px;
	padding: 0 10px;
}

#hero.inner_hero .hero_content p {
	padding-bottom: 10px;
}

.content_accordions .accordion {
	width: 100%;
	box-sizing: border-box;
	padding: 18px 0px;
	list-style: none;
	cursor: pointer;
}

.content_accordions ul .accordion-inner {
	width: 100%;
	padding-left: 0;
	overflow: hidden;
	display: none;
}

.accordion-inner-content {
	background-color: #fbfbfb;
	border: 1px solid #dedede;
	padding: 20px;
}

.content_accordions li {
    margin: 0 0 10px;
	list-style: none;
	line-height: 1.3rem;
}

.content_accordions li a.accordion-toggle {
	text-decoration: none;
	color: inherit;
	display: block;
	background: #e8e8e8;
	border: 1px solid #dedede;
	color: #141414;
	font-weight: 600;
	font-size: 1.2rem;
	padding: 1rem;
	transition: background .3s ease;
	display: -webkit-box;  
	display: -ms-flexbox; 
	display: -webkit-flex; 
	display: flex;       
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
}


.content_accordions li a.accordion-toggle:hover {
    background: #f0f0f0;
 }

.content_accordions ul .accordion-inner p:first-child {
	font-weight: 500;
	margin-bottom: 1rem;
}

.content_accordions ul ul li {
	list-style: disc;
}

.content_accordions ul ul ul {
    margin-top: 10px;
}

.content_accordions .accordion a .fa-chevron-down {
  position: relative;
	color: #0bc546;
	-webkit-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;
}

.content_accordions .accordion a.chev .fa-chevron-down {
	color: #0bc546;
}

.content_accordions .accordion a .fa-chevron-down {
  margin-left: 5px;
  margin-right: 5px;
  margin-top:5px;
  font-size: 18px;
}

.content_accordions .accordion a.chev .fa-chevron-down {
	-webkit-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(180deg);
}

.content_accordions .panel p {
  padding: 0px 80px;
  color: #000064;
  height: auto; 
  width: 100%;  
}


.content_left .content_accordions .accordion {
	margin-bottom: 0;
	padding-bottom: 0;
}

.content_left .content_accordions .accordion li, .content_right .content_accordions .accordion li {
	margin-bottom: 20px;
	font-size: 1rem;
    line-height: 1.6rem;
}

.content_left .content_accordions .accordion li:last-child  {
	margin-bottom: 0;
	padding-bottom: 0;
}

.content_right .content_accordions .accordion:last-child {
	margin-bottom: 0;
}

.content_right .content_accordions .accordion {
	margin-top: 0;
	padding-top: 0;
}


.accordion-inner-content .grid {
	background-color: #f4f4f4;
	padding: 20px;
	margin: 10px 0;
}

.accordion_table_left {
	grid-column: 1/7;
	margin-top: 10px;
}

.accordion_table_right {
	grid-column: 7/13;
	margin-top: 10px;
}

.accordion_table_left p, .accordion_table_right p {
	font-size: 1rem;
	line-height: 1.3rem;
	margin-bottom: 10px;
}

.accordion-inner-content .h4 {
	font-size: 1rem;
	line-height: 1;
}

.underline span {
	position:relative; display:inline-block; padding:0px 10px 10px 10px;
}

.hero_content.underline span::after {
    display: block;
    content: '';
    width: 50px !important;
    height: 4px;
    background: var(--primary-color);
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center;
    margin: 0 auto;
    z-index: -1;
}

@media screen and (min-width:768px) {
	.extract #hero {
		background: url(/img/hero_extract.jpg) 36% -20% no-repeat fixed;
	}
	.wftt #hero {
		background: url(/img/hero_wftt.jpg) 34% 0% no-repeat fixed;
	}
	.warehouses #hero {
		background: url(/img/hero_warehouses.jpg) 34% 0% no-repeat fixed;
	}	
	.oven #hero {
		background: url(/img/hero_oven.jpg) 34% 10% no-repeat fixed;
	} 
	.kitchens #hero {
		background: url(/img/hero_kitchens.jpg) 50% 10% no-repeat fixed;
	}

	.extract #hero, .wftt #hero, .warehouses #hero, .oven #hero,  .kitchens #hero {
	    -webkit-background-size: auto;
		-moz-background-size: auto;
		-o-background-size: auto;
		background-size: auto;
	}
	.accordion-inner-content .h4 {
		font-size: 1.2rem;
		line-height: 1;
	}
	.accordion_table_left p, .accordion_table_right p {
		font-size: 1.1rem;
		line-height: 1.3rem;
	}
	.content_left .content_accordions .accordion li, .content_right .content_accordions .accordion li {
		 font-size: 1.2rem;
        line-height: 1.8rem;
	}
	
	.hero_content.underline span::after 
	{
	    width: 50px !important;
    }
       
}

@media screen and (min-width:992px) {
	.extract #hero {
		background: url(/img/hero_extract.jpg) 50% -100% no-repeat fixed;
	}
	.wftt #hero {
		background: url(/img/hero_wftt.jpg) 50% 0% no-repeat fixed;
	}
	.kitchens #hero {
		background: url(/img/hero_kitchens.jpg) 50% -100% no-repeat fixed;
	}
	.content_left .content_accordions .accordion, .content_right .content_accordions .accordion {
		padding: 18px 0;
		margin: 1rem 0;
	}

	.content_left .content_accordions .accordion li, .content_right .content_accordions .accordion li {
		margin-bottom: 10px;
		line-height: 1.8rem;
        font-size: 1.2rem;
	}

	.content_right .content_accordions .accordion:last-child {
		margin: 1rem 0;
	}
	
	.accordion-inner-content .grid {
		margin: 20px 0;
	}
	
	.hero_content.underline span::after
	{
	    width: 80px !important;
    }
}

@media screen and (min-width:1400px) {
	.accordion-inner-content .grid {
		margin: 20px;
	}
	.accordion-inner-content .h4 {
		font-size: 1.5rem;
		line-height: 1;
	}

}

@media screen and (max-width:768px) {
    .underline span {padding:0px 10px 4px 10px; margin-bottom:8px;}
}
/* Admin control bar */
#controlbar {position:fixed; height:15px; line-height:15px; top:0; left:25px; z-index:1000; color:#411a50; padding:5px 12px 5px 12px; background:#e0e0e0; font-size:11px; border:solid 1px #fff; border-top:0;}
#controlbar a {color:#411a50; text-decoration:none;}
#controlbar a:hover {text-decoration:underline;}

.cms-edit-link {font-size:16px; line-height:16px; color:inherit; letter-spacing:0px;}